]>
Commit | Line | Data |
---|---|---|
6efe69e7 | 1 | #ifndef AliHLTMUONTRIGGERRECONSTRUCTORCOMPONENT_H |
2 | #define AliHLTMUONTRIGGERRECONSTRUCTORCOMPONENT_H | |
3 | /************************************************************************** | |
4 | * This file is property of and copyright by the ALICE HLT Project * | |
5 | * All rights reserved. * | |
6 | * * | |
7 | * Primary Authors: * | |
8 | * Indranil Das <indra.das@saha.ac.in> * | |
9 | * * | |
10 | * Permission to use, copy, modify and distribute this software and its * | |
11 | * documentation strictly for non-commercial purposes is hereby granted * | |
12 | * without fee, provided that the above copyright notice appears in all * | |
13 | * copies and that both the copyright notice and this permission notice * | |
14 | * appear in the supporting documentation. The authors make no claims * | |
15 | * about the suitability of this software for any purpose. It is * | |
16 | * provided "as is" without express or implied warranty. * | |
17 | **************************************************************************/ | |
18 | ||
19 | /* $Id$ */ | |
20 | ||
21 | /** @file AliHLTMUONTriggerReconstructorComponent.h | |
22 | @author Timm Steinbeck, Matthias Richter | |
23 | @date | |
960d54ad | 24 | @brief A processing component for the dHLT trigger DDL reconstruction. */ |
6efe69e7 | 25 | |
26 | ||
27 | #include "AliHLTProcessor.h" | |
6efe69e7 | 28 | #include "AliHLTMUONTriggerReconstructor.h" |
960d54ad | 29 | #include "AliHLTMUONHitReconstructor.h" |
6efe69e7 | 30 | |
960d54ad | 31 | #if __GNUC__ < 3 |
32 | #define std | |
33 | #endif | |
6efe69e7 | 34 | |
35 | /** | |
36 | * @class AliHLTMUONTriggerReconstructorComponent | |
37 | * @brief A dummy HLT processing component. | |
38 | * | |
39 | * An implementiation of a dummy component that just copies its input data | |
40 | * as a test, demonstration, and example of the HLT component scheme. | |
41 | * @ingroup alihlt_tutorial | |
42 | */ | |
43 | class AliHLTMUONTriggerReconstructorComponent : public AliHLTProcessor | |
227e7192 | 44 | { |
45 | public: | |
6efe69e7 | 46 | AliHLTMUONTriggerReconstructorComponent(); |
47 | virtual ~AliHLTMUONTriggerReconstructorComponent(); | |
48 | ||
49 | // Public functions to implement AliHLTComponent's interface. | |
50 | // These functions are required for the registration process | |
51 | ||
52 | const char* GetComponentID(); | |
960d54ad | 53 | void GetInputDataTypes( std::vector<AliHLTComponentDataType>& list); |
6efe69e7 | 54 | AliHLTComponentDataType GetOutputDataType(); |
960d54ad | 55 | virtual void GetOutputDataSize(unsigned long& constBase, double& inputMultiplier); |
6efe69e7 | 56 | AliHLTComponent* Spawn(); |
227e7192 | 57 | |
58 | protected: | |
59 | ||
6efe69e7 | 60 | // Protected functions to implement AliHLTComponent's interface. |
61 | // These functions provide initialization as well as the actual processing | |
62 | // capabilities of the component. | |
63 | ||
960d54ad | 64 | int DoInit(int argc, const char** argv); |
6efe69e7 | 65 | int DoDeinit(); |
227e7192 | 66 | |
960d54ad | 67 | int DoEvent( |
68 | const AliHLTComponentEventData& evtData, | |
69 | const AliHLTComponentBlockData* blocks, | |
70 | AliHLTComponentTriggerData& trigData, | |
71 | AliHLTUInt8_t* outputPtr, | |
72 | AliHLTUInt32_t& size, | |
73 | std::vector<AliHLTComponentBlockData>& outputBlocks | |
74 | ); | |
227e7192 | 75 | |
76 | private: | |
77 | ||
6efe69e7 | 78 | AliHLTMUONTriggerReconstructor* fTrigRec; |
960d54ad | 79 | |
6efe69e7 | 80 | bool ReadLookUpTable(AliHLTMUONHitReconstructor::DHLTLut* lookupTable, const char* lutpath); |
960d54ad | 81 | bool ReadRegToLocMap(AliHLTMUONTriggerReconstructor::RegToLoc* regToLoc,const char* reglocFileName); |
6efe69e7 | 82 | |
83 | TString fDDLDir; | |
84 | Int_t fDDL; | |
85 | ||
86 | ClassDef(AliHLTMUONTriggerReconstructorComponent, 0) | |
87 | ||
227e7192 | 88 | }; |
960d54ad | 89 | |
6efe69e7 | 90 | #endif // AliHLTMUONTRIGGERRECONSTRUCTORCOMPONENT_H |