From 4f11f6c7cc2f800a251fb844c1140bdd99101a36 Mon Sep 17 00:00:00 2001 From: richterm Date: Sun, 14 Mar 2010 13:05:37 +0000 Subject: [PATCH] moving the current implementation of the HLT QA data maker to a detector plugin (TPC) --- ...aMakerRec.cxx => AliHLTTPCQADataMaker.cxx} | 75 ++++--------------- ...ADataMakerRec.h => AliHLTTPCQADataMaker.h} | 28 +++---- HLT/libHLTqadm.pkg | 2 +- 3 files changed, 29 insertions(+), 76 deletions(-) rename HLT/QA/{AliHLTQADataMakerRec.cxx => AliHLTTPCQADataMaker.cxx} (84%) rename HLT/QA/{AliHLTQADataMakerRec.h => AliHLTTPCQADataMaker.h} (68%) diff --git a/HLT/QA/AliHLTQADataMakerRec.cxx b/HLT/QA/AliHLTTPCQADataMaker.cxx similarity index 84% rename from HLT/QA/AliHLTQADataMakerRec.cxx rename to HLT/QA/AliHLTTPCQADataMaker.cxx index 74fa33e52f3..9385d3ed714 100644 --- a/HLT/QA/AliHLTQADataMakerRec.cxx +++ b/HLT/QA/AliHLTTPCQADataMaker.cxx @@ -17,12 +17,12 @@ //* provided "as is" without express or implied warranty. * //************************************************************************** -/** @file AliHLTQADataMakerRec.cxx +/** @file AliHLTTPCQADataMaker.cxx @author Zhongbao Yin, Matthias Richter @date 2009-05-14 @brief Container for the HLT offline QA */ -#include "AliHLTQADataMakerRec.h" +#include "AliHLTTPCQADataMaker.h" #include "AliESDEvent.h" #include @@ -34,9 +34,10 @@ using namespace std; /** ROOT macro for the implementation of ROOT specific class methods */ -ClassImp(AliHLTQADataMakerRec) +ClassImp(AliHLTTPCQADataMaker) -AliHLTQADataMakerRec::AliHLTQADataMakerRec() +AliHLTTPCQADataMaker::AliHLTTPCQADataMaker() + : AliHLTQADataMakerBase() { // see header file for class documentation // or @@ -45,55 +46,17 @@ AliHLTQADataMakerRec::AliHLTQADataMakerRec() // visit http://web.ift.uib.no/~kjeks/doc/alice-hlt } -AliHLTQADataMakerRec::~AliHLTQADataMakerRec() +AliHLTTPCQADataMaker::~AliHLTTPCQADataMaker() { // see header file for class documentation } -void AliHLTQADataMakerRec::Exec(AliQAv1::TASKINDEX_t task, TObject * data) -{ - // special handling for esds - if ( task == AliQAv1::kESDS ) { - AliESDEvent * esd = NULL; - AliESDEvent * hltesd = NULL; - if (data->IsA() == AliESDEvent::Class()) { - // silently skip this. Currently HLT QA is still called as - // part of AliQAManager::RunOneEvent with the esd - return; - } - if (data->InheritsFrom("TObjArray")) { - TObjArray* array=dynamic_cast(data); - if (array && array->GetEntriesFast()>0) { - esd = dynamic_cast(array->At(0)) ; - } - if (array && array->GetEntriesFast()>1) { - hltesd = dynamic_cast(array->At(1)) ; - } - } else { - esd = static_cast(data) ; - } - - if (esd && strcmp(esd->ClassName(), "AliESDEvent") == 0) { - if (hltesd) { - MakeESDs(esd, hltesd); - } else { - AliError(Form("HLT ESD missing or wrong class type (%p), skipping HLT QA task kESDs", hltesd)); - } - } else { - AliError(Form("ESD missing or wrong class type (%p), skipping HLT QA task kESDSs", esd)); - } - } else { - // forward for all other types - AliQADataMakerRec::Exec(task, data); - } -} - -void AliHLTQADataMakerRec::StartOfDetectorCycle() +void AliHLTTPCQADataMaker::StartOfDetectorCycle() { // see header file for class documentation } -void AliHLTQADataMakerRec::EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** /*list*/) +void AliHLTTPCQADataMaker::EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** /*list*/) { // see header file for class documentation @@ -112,13 +75,13 @@ void AliHLTQADataMakerRec::EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** } -void AliHLTQADataMakerRec::MakeRaws(AliRawReader * rawReader) +void AliHLTTPCQADataMaker::MakeRaws(AliRawReader * rawReader) { // see header file for class documentation if (!rawReader) return; } -void AliHLTQADataMakerRec::InitESDs(){ +void AliHLTTPCQADataMaker::InitESDs(){ //create ESDs histograms in ESDs subdir const Bool_t expert = kTRUE ; @@ -300,19 +263,7 @@ TH1F * histNClsPerTrkHLTFired } -void AliHLTQADataMakerRec::MakeESDs(AliESDEvent * esd) -{ - // see header file for class documentation - - // as an extension in the QA interface also the hlt esd can be sent - // in order to preserve backward compatibility, a new function has been - // introduced. - // - // NOTE: This function is not the place for HLT QA - if (!esd) return; -} - -void AliHLTQADataMakerRec::MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd) +void AliHLTTPCQADataMaker::MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd) { // HLT QA on ESDs if (!esd || !hltesd) { @@ -321,7 +272,7 @@ void AliHLTQADataMakerRec::MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd) } // make QA data from ESDs - + const Int_t nESDTracks = esd->GetNumberOfTracks(); const Int_t nHLTesdTracks = hltesd->GetNumberOfTracks(); GetESDsData(kMultiplicity)->Fill(nESDTracks, nHLTesdTracks); @@ -381,5 +332,5 @@ void AliHLTQADataMakerRec::MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd) } - + } diff --git a/HLT/QA/AliHLTQADataMakerRec.h b/HLT/QA/AliHLTTPCQADataMaker.h similarity index 68% rename from HLT/QA/AliHLTQADataMakerRec.h rename to HLT/QA/AliHLTTPCQADataMaker.h index d0bf2aadd88..f643fa0e3a1 100644 --- a/HLT/QA/AliHLTQADataMakerRec.h +++ b/HLT/QA/AliHLTTPCQADataMaker.h @@ -1,21 +1,25 @@ //-*- Mode: C++ -*- // $Id$ -#ifndef ALIHLTQADATAMAKERREC_H -#define ALIHLTQADATAMAKERREC_H +#ifndef ALIHLTTPCQADATAMAKER_H +#define ALIHLTTPCQADATAMAKER_H //* This file is property of and copyright by the ALICE HLT Project * //* ALICE Experiment at CERN, All rights reserved. * //* See cxx source for full Copyright notice * -/** @file AliHLTQADataMakerRec.h +/** @file AliHLTTPCQADataMaker.h @author Zhongbao Yin, Matthias Richter @date 2009-05-14 @brief Container for the HLT offline QA */ -#include "AliQADataMakerRec.h" +#include "AliHLTQADataMakerBase.h" -class AliHLTQADataMakerRec: public AliQADataMakerRec { +/** + * @class AliHLTTPCQADataMaker + * Steering class for HLT QA for reconstruction + */ +class AliHLTTPCQADataMaker: public AliHLTQADataMakerBase { public: @@ -31,24 +35,22 @@ public: kEtaHLT, kEtaOffline, kEtaHLTFired, kEtaOfflineFired}; - AliHLTQADataMakerRec(); - virtual ~AliHLTQADataMakerRec(); + AliHLTTPCQADataMaker(); + virtual ~AliHLTTPCQADataMaker(); private: /** copy constructor prohibited */ - AliHLTQADataMakerRec(const AliHLTQADataMakerRec&); + AliHLTTPCQADataMaker(const AliHLTTPCQADataMaker&); /** assignment operator prohibited */ - AliHLTQADataMakerRec& operator = (const AliHLTQADataMakerRec&); + AliHLTTPCQADataMaker& operator = (const AliHLTTPCQADataMaker&); - virtual void Exec(AliQAv1::TASKINDEX_t task, TObject * data); virtual void StartOfDetectorCycle(); virtual void EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray** list); virtual void MakeRaws(AliRawReader * rawReader); virtual void InitESDs(); - virtual void MakeESDs(AliESDEvent * esd); virtual void MakeESDs(AliESDEvent * esd, AliESDEvent* hltesd); - ClassDef(AliHLTQADataMakerRec,0) // HLT Quality Assurance Data Maker for reconstruction + ClassDef(AliHLTTPCQADataMaker,0) // HLT Quality Assurance Data Maker for reconstruction }; -#endif // ALIHLTQADATAMAKERREC_H +#endif // ALIHLTTPCQADATAMAKER_H diff --git a/HLT/libHLTqadm.pkg b/HLT/libHLTqadm.pkg index cb8d7378c8a..4ae954b8bb2 100644 --- a/HLT/libHLTqadm.pkg +++ b/HLT/libHLTqadm.pkg @@ -3,7 +3,7 @@ CLASS_HDRS:= AliHLTQADataMakerSim.h \ AliHLTQADataMakerBase.h \ - AliHLTQADataMakerRec.h \ + AliHLTTPCQADataMaker.h \ AliHLTQAChecker.h MODULE_SRCS:= $(CLASS_HDRS:.h=.cxx) -- 2.43.0