Line data Source code
1 : //-*- Mode: C++ -*-
2 : // $Id$
3 : #ifndef ALIHLTITSDIGITPUBLISHERCOMPONENT_H
4 : #define ALIHLTITSDIGITPUBLISHERCOMPONENT_H
5 :
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 AliHLTITSDigitPublisherComponent.cxx
11 : @author Kenneth Aamodt, Sergey Gorbunov
12 : @date
13 : @brief Component to run the offline clusterfinder.
14 : */
15 :
16 : #include "AliHLTOfflineDataSource.h"
17 : class AliRunLoader;
18 : class AliITSLoader;
19 : class TClonesArray;
20 : class TTree;
21 : /**
22 : * @class AliHLTITSDigitPublisherComponent
23 : *
24 : */
25 : class AliHLTITSDigitPublisherComponent : public AliHLTOfflineDataSource
26 : {
27 : public:
28 :
29 :
30 : /**
31 : * constructor
32 : */
33 : AliHLTITSDigitPublisherComponent();
34 :
35 : /** destructor */
36 : virtual ~AliHLTITSDigitPublisherComponent();
37 :
38 : /*
39 : * ---------------------------------------------------------------------------------
40 : * Public functions to implement AliHLTComponent's interface.
41 : * These functions are required for the registration process
42 : * ---------------------------------------------------------------------------------
43 : */
44 :
45 : /** interface function, see @ref AliHLTComponent for description */
46 : const char* GetComponentID();
47 :
48 : /** interface function, see @ref AliHLTComponent for description */
49 : void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
50 :
51 : /** interface function, see @ref AliHLTComponent for description */
52 : AliHLTComponentDataType GetOutputDataType();
53 :
54 : /** interface function, see @ref AliHLTComponent for description */
55 : virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
56 :
57 : /** interface function, see @ref AliHLTComponent for description */
58 : AliHLTComponent* Spawn();
59 :
60 : protected:
61 :
62 : /*
63 : * ---------------------------------------------------------------------------------
64 : * Protected functions to implement AliHLTComponent's interface.
65 : * These functions provide initialization as well as the actual processing
66 : * capabilities of the component.
67 : * ---------------------------------------------------------------------------------
68 : */
69 :
70 : /** Initialization */
71 : Int_t DoInit( int argc, const char** argv );
72 :
73 : /** DeInitialization */
74 : Int_t DoDeinit();
75 :
76 : /** EventLoop */
77 : Int_t GetEvent(const AliHLTComponentEventData& evtData, AliHLTComponentTriggerData& trigData);
78 :
79 : ///////////////////////////////////////////////////////////////////////////////////
80 :
81 : private:
82 : /** copy constructor prohibited */
83 : AliHLTITSDigitPublisherComponent(const AliHLTITSDigitPublisherComponent&);
84 : /** assignment operator prohibited */
85 : AliHLTITSDigitPublisherComponent& operator=(const AliHLTITSDigitPublisherComponent&);
86 :
87 : AliRunLoader * fRunLoader;
88 : AliITSLoader * fITSLoader;
89 : Int_t fNumberOfEvents;
90 : Int_t fEventNumber;
91 : TTree *tD;
92 :
93 6 : ClassDef(AliHLTITSDigitPublisherComponent, 0)
94 :
95 : };
96 : #endif
|