]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/BASE/AliHLTHOMERSourceDesc.h
Bugfix: lowercase b should be upper case B for component id: TPCClusterFinder32Bit
[u/mrichter/AliRoot.git] / HLT / BASE / AliHLTHOMERSourceDesc.h
CommitLineData
155ff173 1//-*- Mode: C++ -*-
2#ifndef ALIHLTHOMERSOURCEDESC_H
3#define ALIHLTHOMERSOURCEDESC_H
4
5/* This file is property of and copyright by the ALICE HLT Project *
6 * ALICE Experiment at CERN, All rights reserved. *
7 * See cxx source for full Copyright notice */
8
9/** @file AliHLTHOMERSourceDesc.h
10 @author Jochen Thaeder
11 @date
12 @brief Container for HOMER Sources
13*/
14
15// see below for class documentation
16// or
17// refer to README to build package
18// or
19// visit http://web.ift.uib.no/~kjeks/doc/alice-hlt
20
2ff24e4c 21/**
22 * @defgroup alihlt_homer HOMER handling for AliROOT
23 * This section describes the handling of HOMER Sources, Blocks
24 * and the HOMER Reader inside the HLT and AliROOT
25 */
26
155ff173 27#include "TString.h"
1a04dcde 28#include "TNamed.h"
155ff173 29
30/**
31 * @class AliHLTHOMERSourceDesc
32 * This class contains the information of 1 homer source: hostname, port for the HOMER
33 * interface as well as data specifications. It used in order to fill these sources in
34 * TLists. ( It has to inherit from TObject ). Further more it knows if this source was
35 * selected for read from a user. Mainly used in the AliEVEHOMERManager, as source
36 * objects for AliEVE.
37 *
38 * @ingroup alihlt_homer
39 */
1a04dcde 40class AliHLTHOMERSourceDesc : public TNamed {
155ff173 41
42public:
43
06272c83 44 /** constructor */
155ff173 45 AliHLTHOMERSourceDesc();
46
155ff173 47 /** destructor */
48 virtual ~AliHLTHOMERSourceDesc();
49
06272c83 50 /*
51 * ---------------------------------------------------------------------------------
52 * Selection - public
53 * ---------------------------------------------------------------------------------
54 */
55
155ff173 56 // -- SELECTION --
57
58 /** Set selection state
59 * @param state state, either kTRUE or kFALSE
60 */
61 void SetState( Bool_t state ) { fSelected = state; }
62
63 /** Checks if Source is selected to readout
64 * @return returns state, either kTRUE or kFALSE
06272c83 65 */
2ff24e4c 66 Bool_t IsSelected() { return fSelected; }
155ff173 67
68 /** Select this source */
2ff24e4c 69 void Select() { fSelected = kTRUE; }
06272c83 70
155ff173 71 /** Deselect this source */
2ff24e4c 72 void Deselect() { fSelected = kFALSE; }
155ff173 73
06272c83 74 /*
75 * ---------------------------------------------------------------------------------
76 * Setter - public
77 * ---------------------------------------------------------------------------------
155ff173 78 */
155ff173 79
06272c83 80 /** Set Service of this source
81 * @param hostname hostname of the source
82 * @param port port of the source
83 * @param origin HLT data origin
84 * @param type HLT data type
85 * @param spec HLT data specification
155ff173 86 */
06272c83 87 void SetService( TString hostname, Int_t port, TString origin,
88 TString type, TString spec );
155ff173 89
06272c83 90 /*
91 * ---------------------------------------------------------------------------------
92 * Getter - public
93 * ---------------------------------------------------------------------------------
155ff173 94 */
155ff173 95
96 /** Get node name of this source
97 * @return hostname
98 */
2ff24e4c 99 TString GetHostname() { return fHostname; }
155ff173 100
101 /** Get node name of this source
102 * @return port
103 */
06272c83 104 Int_t GetPort() { return fPort; }
155ff173 105
106 /** Get name of this source
60dd5042 107 * @return name
155ff173 108 */
2ff24e4c 109 TString GetSourceName() { return fSourceName; }
155ff173 110
155ff173 111 /** Get detector of this source
112 * @return detector
113 */
2ff24e4c 114 TString GetDetector() { return fDetector; }
155ff173 115
116 /** Get sub detector of this source
117 * @return subdetector
118 */
06272c83 119 Int_t GetSubDetector() { return fSubDetector; }
155ff173 120
121 /** Get sub sub detector of this source
122 * @return subsubdetector
123 */
06272c83 124 Int_t GetSubSubDetector() { return fSubSubDetector; }
155ff173 125
126 /** Get HLT data type of this source
127 * @return HLT data type
128 */
2ff24e4c 129 TString GetDataType() { return fDataType; }
155ff173 130
131 /** Get HLT specification of this source
132 * @return HLT specification
133 */
2ff24e4c 134 ULong_t GetSpecification() { return fSpecification; }
155ff173 135
06272c83 136 ///////////////////////////////////////////////////////////////////////////////////
155ff173 137
138private:
06272c83 139
155ff173 140 /** copy constructor prohibited */
141 AliHLTHOMERSourceDesc(const AliHLTHOMERSourceDesc&);
142
143 /** assignment operator prohibited */
144 AliHLTHOMERSourceDesc& operator=(const AliHLTHOMERSourceDesc&);
145
06272c83 146 /*
147 * ---------------------------------------------------------------------------------
148 * Members - private
149 * ---------------------------------------------------------------------------------
150 */
151
155ff173 152 /** is selected to read out */
153 Bool_t fSelected; // see above
154
06272c83 155 /** Name of Source */
156 TString fSourceName; // see above
157
158 // -- Service Specifications --
159 // ----------------------------
160
155ff173 161 /** Name of HOMER Node */
162 TString fHostname; // see above
163
164 /** Name of HOMER port */
165 Int_t fPort; // see above
166
06272c83 167 // -- Data Specifications --
168 // -------------------------
155ff173 169
06272c83 170 /** HLT DataType */
171 TString fDataType; // see above
155ff173 172
173 /** Detector Name, e.g. PHOS
174 * corresponds to HLT origin
175 */
176 TString fDetector; // see above
177
155ff173 178 /** HLT Specification */
179 ULong_t fSpecification; // see above
180
06272c83 181 /** SubDetector Name e.g. MODULE */
182 Int_t fSubDetector; // see above
183
184 /** SubSubDetector Name e.g. PARTITION */
185 Int_t fSubSubDetector; // see above
155ff173 186
187 ClassDef( AliHLTHOMERSourceDesc, 0 )
188};
189
190#endif