]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/AliHLTTPCClusterFinderComponent.h
Added the digit reader classes that allow reading of raw packed and unpacked
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCClusterFinderComponent.h
1 // XEmacs -*-C++-*-
2 // @(#) $Id$
3
4 #ifndef ALIHLTTPCCLUSTERFINDERCOMPONENT_H
5 #define ALIHLTTPCCLUSTERFINDERCOMPONENT_H
6
7 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
8  * See cxx source for full Copyright notice                               */
9
10 /* AliHLTTPCClusterFinderComponent
11  */
12
13 #include "AliHLTProcessor.h"
14 #include "AliHLTTPCDefinitions.h"
15 #include "AliHLTTPCDigitReaderPacked.h"
16 #include "AliHLTTPCDigitReaderUnpacked.h"
17
18 class AliHLTTPCClusterFinder;
19
20 class AliHLTTPCClusterFinderComponent : public AliHLTProcessor
21     {
22     public:
23         AliHLTTPCClusterFinderComponent(bool packed);
24         virtual ~AliHLTTPCClusterFinderComponent();
25
26         // Public functions to implement AliHLTComponent's interface.
27         // These functions are required for the registration process
28
29         const char* GetComponentID();
30         void GetInputDataTypes( vector<AliHLTComponent_DataType>& list);
31         AliHLTComponent_DataType GetOutputDataType();
32         virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
33         AliHLTComponent* Spawn();
34         
35     protected:
36         
37         // Protected functions to implement AliHLTComponent's interface.
38         // These functions provide initialization as well as the actual processing
39         // capabilities of the component. 
40
41         int DoInit( int argc, const char** argv );
42         int DoDeinit();
43         int DoEvent( const AliHLTComponent_EventData& evtData, const AliHLTComponent_BlockData* blocks, 
44                      AliHLTComponent_TriggerData& trigData, AliHLTUInt8_t* outputPtr, 
45                      AliHLTUInt32_t& size, vector<AliHLTComponent_BlockData>& outputBlocks );
46         
47     private:
48
49       AliHLTTPCClusterFinder* fClusterFinder;
50       AliHLTTPCDigitReaderPacked* fReaderPacked;
51       AliHLTTPCDigitReaderUnpacked* fReaderUnpacked;
52       bool fClusterDeconv;
53       float fXYClusterError;
54       float fZClusterError;
55       Int_t fPackedSwitch;
56       
57       ClassDef(AliHLTTPCClusterFinderComponent, 0)
58
59     };
60 #endif