]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/TRD/AliHLTTRDCalibHistoComponent.h
AliVVfriend* moved to AliVfriend*, unnecessary AliVV* classes removed
[u/mrichter/AliRoot.git] / HLT / TRD / AliHLTTRDCalibHistoComponent.h
CommitLineData
cad0c17d 1//-*- Mode: C++ -*-
2// $Id: AliHLTTRDCalibHistoComponent.h 40269 2010-04-08 22:08:53Z richterm $
3
4#ifndef ALIHLTTRDCALIBHISTOCOMPONENT_H
5#define ALIHLTTRDCALIBHISTOCOMPONENT_H
6//* This file is property of and copyright by the ALICE HLT Project *
7//* ALICE Experiment at CERN, All rights reserved. *
8//* See cxx source for full Copyright notice *
9
10// @file AliHLTTRDCalibHistoComponent.h
11// @author
12// @date
13// @brief Declaration of a TRDCalibration component.
14//
15
16
17#include "AliHLTProcessor.h"
18class AliCDBManager;
19class AliTRDCalibraFillHisto;
20class TClonesArray;
21
22class AliHLTTRDCalibHistoComponent : public AliHLTProcessor
23{
24public:
25 AliHLTTRDCalibHistoComponent();
26 virtual ~AliHLTTRDCalibHistoComponent();
27
28 // Public functions to implement AliHLTComponent's interface.
29 // These functions are required for the registration process
30
31 const char* GetComponentID();
32 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
33 AliHLTComponentDataType GetOutputDataType();
34 int GetOutputDataTypes(AliHLTComponentDataTypeList& tgtList);
35 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
36 AliHLTComponent* Spawn();
37
38protected:
39
40 // Protected functions to implement AliHLTComponent's interface.
41 // These functions provide initialization as well as the actual processing
42 // capabilities of the component.
43
44 int DoInit( int argc, const char** argv );
45 int DoDeinit();
46 int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks,
47 AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr,
48 AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
49 int Reconfigure(const char* cdbEntry, const char* chainId);
50
51 using AliHLTProcessor::DoEvent;
52
53 int Configure(const char* arguments);
54 int SetParams();
55 int TakeHistos(Int_t nTimeBins);
56
57private:
58 /** copy constructor prohibited */
59 AliHLTTRDCalibHistoComponent(const AliHLTTRDCalibHistoComponent&);
60 /** assignment operator prohibited */
61 AliHLTTRDCalibHistoComponent& operator=(const AliHLTTRDCalibHistoComponent&);
62 void FormOutput();
63
64 AliHLTUInt32_t fOutputSize; // output size
65 AliHLTUInt32_t fSpec; // accumulated specification
66 TClonesArray* fTracksArray; // array containing the input
67 TObjArray* fOutArray; // array containing the output
68 AliTRDCalibraFillHisto *fTRDCalibraFillHisto; // TRD calibration object
69 Bool_t fSavedTimeBins; // already saved the number of time bins?
70 TObjArray *fTrgStrings; // name of trigger classes to accept or reject
71 Int_t fAccRejTrg; // do we actually accept or reject the trigger strings?
72 Int_t fMinClusters; // minimal number of clusters/tracklet accepted to fill histos
73 Int_t fMinTracklets; // minimal number of tracklets/track accepted to fill histos
74 Bool_t fTakeAllEvents; // take all events, disregarding the triggers
75
76 ClassDef(AliHLTTRDCalibHistoComponent, 2)
77
78};
79#endif
80