//* 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 <iostream>
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
// 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<TObjArray*>(data);
- if (array && array->GetEntriesFast()>0) {
- esd = dynamic_cast<AliESDEvent *>(array->At(0)) ;
- }
- if (array && array->GetEntriesFast()>1) {
- hltesd = dynamic_cast<AliESDEvent *>(array->At(1)) ;
- }
- } else {
- esd = static_cast<AliESDEvent *>(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
}
-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 ;
}
-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) {
}
// make QA data from ESDs
-
+
const Int_t nESDTracks = esd->GetNumberOfTracks();
const Int_t nHLTesdTracks = hltesd->GetNumberOfTracks();
GetESDsData(kMultiplicity)->Fill(nESDTracks, nHLTesdTracks);
}
-
+
}
//-*- 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:
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