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. *
8 * Indranil Das <indra.das@saha.ac.in> *
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 **************************************************************************/
21 /** @file AliHLTMUONTriggerReconstructorComponent.h
22 @author Timm Steinbeck, Matthias Richter
24 @brief Declaration of a dummy component. */
27 #include "AliHLTProcessor.h"
28 #include "AliHLTMUONConstants.h"
30 #include "AliHLTMUONTriggerReconstructor.h"
34 * @class AliHLTMUONTriggerReconstructorComponent
35 * @brief A dummy HLT processing component.
37 * An implementiation of a dummy component that just copies its input data
38 * as a test, demonstration, and example of the HLT component scheme.
39 * @ingroup alihlt_tutorial
41 class AliHLTMUONTriggerReconstructorComponent : public AliHLTProcessor
44 AliHLTMUONTriggerReconstructorComponent();
45 virtual ~AliHLTMUONTriggerReconstructorComponent();
47 // Public functions to implement AliHLTComponent's interface.
48 // These functions are required for the registration process
50 const char* GetComponentID();
51 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
52 AliHLTComponentDataType GetOutputDataType();
53 virtual void GetOutputDataSize( unsigned long& constBase, double& inputMultiplier );
54 AliHLTComponent* Spawn();
58 // Protected functions to implement AliHLTComponent's interface.
59 // These functions provide initialization as well as the actual processing
60 // capabilities of the component.
62 int DoInit( int argc, const char** argv );
64 int DoEvent( const AliHLTComponentEventData& evtData, const AliHLTComponentBlockData* blocks,
65 AliHLTComponentTriggerData& trigData, AliHLTUInt8_t* outputPtr,
66 AliHLTUInt32_t& size, vector<AliHLTComponentBlockData>& outputBlocks );
70 // The size of the output data produced, as a percentage of the input data's size.
71 // Can be greater than 100 (%)
72 unsigned fOutputPercentage;
74 AliHLTMUONTriggerReconstructor* fTrigRec;
75 bool ReadLookUpTable(AliHLTMUONHitReconstructor::DHLTLut* lookupTable, const char* lutpath);
80 ClassDef(AliHLTMUONTriggerReconstructorComponent, 0)
84 #endif // AliHLTMUONTRIGGERRECONSTRUCTORCOMPONENT_H