]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/global/AliHLTGlobalCompareFlatComponent.h
LHAPDF: Removing lhapdf 5.3.1 version
[u/mrichter/AliRoot.git] / HLT / global / AliHLTGlobalCompareFlatComponent.h
CommitLineData
a2e57ab1 1//-*- Mode: C++ -*-
2// $Id: AliHLTGlobalCompareFlatComponent $
3
4#ifndef ALIHLTGLOBALCOMPAREFLATCOMPONENT_H
5#define ALIHLTGLOBALCOMPAREFLATCOMPONENT_H
6
7/* This file is property of and copyright by the ALICE HLT Project *
8 * ALICE Experiment at CERN, All rights reserved. *
9 * See cxx source for full Copyright notice */
10
11/** @file AliHLTGlobalCompareFlatComponent.h
12 @author Steffen Weber <s.weber@gsi.de>
13 @brief Compare flat events from different inputs
14*/
15
16// see below for class documentation
17// or
18// refer to README to build package
19// or
20// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
21
22#include "AliHLTProcessor.h"
23
24class THnSparse;
25
26class AliESDVZERO;
27class AliESDtrackCuts;
28class AliHLTCTPData;
29class AliHLTMultiplicityCorrelations;
30class AliHLTGlobalTriggerDecision;
31class AliHLTTestInputHandler;
32
33
34class AliHLTGlobalCompareFlatComponent : public AliHLTProcessor {
35public:
36
37 /*
38 * ---------------------------------------------------------------------------------
39 * Constructor / Destructor
40 * ---------------------------------------------------------------------------------
41 */
42
43 /** constructor */
44 AliHLTGlobalCompareFlatComponent();
45
46 /** destructor */
47 virtual ~AliHLTGlobalCompareFlatComponent();
48
49 /*
50 * ---------------------------------------------------------------------------------
51 * Public functions to implement AliHLTComponent's interface.
52 * These functions are required for the registration process
53 * ---------------------------------------------------------------------------------
54 */
55
56 /** interface function, see @ref AliHLTComponent for description */
57 const Char_t* GetComponentID();
58
59 /** interface function, see @ref AliHLTComponent for description */
60 void GetInputDataTypes( vector<AliHLTComponentDataType>& list);
61
62 /** interface function, see @ref AliHLTComponent for description */
63 AliHLTComponentDataType GetOutputDataType();
64
65 /** interface function, see @ref AliHLTComponent for description */
66 void GetOutputDataSize( ULong_t& constBase, Double_t& inputMultiplier );
67
68 /** interface function, see @ref AliHLTComponent for description */
69 // void GetOCDBObjectDescription( TMap* const targetMap);
70
71 /** interface function, see @ref AliHLTComponent for description */
72 AliHLTComponent* Spawn();
73
74 protected:
75
76 /*
77 * ---------------------------------------------------------------------------------
78 * Protected functions to implement AliHLTComponent's interface.
79 * These functions provide initialization as well as the actual processing
80 * capabilities of the component.
81 * ---------------------------------------------------------------------------------
82 */
83
84 // AliHLTComponent interface functions
85
86 /** interface function, see @ref AliHLTComponent for description */
87 Int_t DoInit( Int_t /*argc*/, const Char_t** /*argv*/ );
88
89 /** interface function, see @ref AliHLTComponent for description */
90 Int_t DoDeinit();
91
92 /** interface function, see @ref AliHLTComponent for description */
93 int DoEvent( const AliHLTComponentEventData& evtData,
94 const AliHLTComponentBlockData* blocks,
95 AliHLTComponentTriggerData& trigData,
96 AliHLTUInt8_t* outputPtr,
97 AliHLTUInt32_t& size,
98 AliHLTComponentBlockDataList& outputBlocks);
99
100 using AliHLTProcessor::DoEvent;
101
102
103 /**
104 * Configure the component.
105 * Parse a string for the configuration arguments and set the component
106 * properties.
107 */
108 int Configure(const char* arguments);
109
110 /** interface function, see @ref AliHLTComponent for description */
111 Int_t Reconfigure(const Char_t* cdbEntry, const Char_t* chainId);
112
113 /** interface function, see @ref AliHLTComponent for description */
114 Int_t ReadPreprocessorValues(const Char_t* modules);
115
116 ///////////////////////////////////////////////////////////////////////////////////
117
118private:
119
120 /*
121 * ---------------------------------------------------------------------------------
122 * Private functions to implement AliHLTComponent's interface.
123 * These functions provide initialization as well as the actual processing
124 * capabilities of the component.
125 * ---------------------------------------------------------------------------------
126 */
127
128 /** copy constructor prohibited */
129 AliHLTGlobalCompareFlatComponent(const AliHLTGlobalCompareFlatComponent&);
130
131 /** assignment operator prohibited */
132 AliHLTGlobalCompareFlatComponent& operator=(const AliHLTGlobalCompareFlatComponent&);
133void printDiff( string name, double val1, double val2);
a88a189e 134void printDiff( string name, int n , double* vals1, double* vals2 );
a2e57ab1 135void printDiff( string name, TString val1, TString val2);
136
137 /*
138 * ---------------------------------------------------------------------------------
139 * Helper
140 * ---------------------------------------------------------------------------------
141 */
142
143 /*
144 * ---------------------------------------------------------------------------------
145 * Members - private
146 * ---------------------------------------------------------------------------------
147 */
148
149 /** UID for merging */
150
151 /*
152 THnSparse * fhDiff;
153
154 static const Int_t fDim = 14;
155 */
156 ofstream outFile;
157
158
159 ClassDef(AliHLTGlobalCompareFlatComponent, 0)
160};
161#endif