]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/PHOS/latex/classAliHLTModuleAgent.tex
New component for writing calibration data to fxs (Oystein)
[u/mrichter/AliRoot.git] / HLT / PHOS / latex / classAliHLTModuleAgent.tex
1 \section{Ali\-HLTModule\-Agent Class Reference}
2 \label{classAliHLTModuleAgent}\index{AliHLTModuleAgent@{AliHLTModuleAgent}}
3 {\tt \#include $<$Ali\-HLTModule\-Agent.h$>$}
4
5 Inheritance diagram for Ali\-HLTModule\-Agent::\begin{figure}[H]
6 \begin{center}
7 \leavevmode
8 \includegraphics[height=2cm]{classAliHLTModuleAgent}
9 \end{center}
10 \end{figure}
11
12
13 \subsection{Detailed Description}
14 Agent helper class for HLT sub modules, e.g. PHOS, TPC, Trigger. 
15
16 This class implements the agent base class for the HLT sub modules. The agent of a library gives information on the features of the library/ components, like the configurations to run and other component libraries it depends on. \begin{Desc}
17 \item[Note:]There must not be more than one agent per module/library.\end{Desc}
18 All HLT component libraries are loaded on demand through the HLT steering instance ({\bf Ali\-HLTSystem}{\rm (p.\,\pageref{classAliHLTSystem})}). A library can implement an agent derived from this base class, and has to define one global object of this agent in the code. The agent will be registered automatically, and the features can be queried when required.
19
20 This is usually done during running the Ali\-Root reconstruction (see Ali\-Root documentation on {\tt  Ali\-Reconstruction}). The HLT implemets the Ali\-HLTReconstructor which holds the HLT steering object. Several flags can be specified as options via the {\tt Set\-Option} method of {\tt Ali\-Reconstruction}, including the component libraries to be loaded.\subsection{Agent interface}\label{classAliHLTModuleAgent_alihltmoduleagent_interface}
21 The child can implement the following functions:\begin{itemize}
22 \item {\bf Create\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a4})} \par
23  create HLT configuration forming an HLT analysis chain.\end{itemize}
24
25
26 \begin{itemize}
27 \item {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})} \par
28  configurations run during local event reconstruction. \begin{Desc}
29 \item[Note:]Local event reconstruction is the first step of the reconstruction chain. All events are processed at once. \par
30 \end{Desc}
31 \item {\bf Get\-Event\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a6})} \par
32  configurations run during event reconstruction. \begin{Desc}
33 \item[Note:]This is the reconstruction on event by event basis. \par
34 \end{Desc}
35 \item {\bf Get\-Required\-Component\-Libraries}{\rm (p.\,\pageref{classAliHLTModuleAgent_a7})} \par
36  can indicate further libraries which are required for running the chains (e.g. if components of another library are used).\end{itemize}
37
38
39 \begin{itemize}
40 \item {\bf Register\-Components}{\rm (p.\,\pageref{classAliHLTModuleAgent_a8})} \par
41  register componens, this can be used to avoid the component registration via global objects \begin{Desc}
42 \item[See also:]{\bf Component handling}{\rm (p.\,\pageref{classAliHLTComponent_alihltcomponent-handling})} \par
43  \end{Desc}
44 \end{itemize}
45 \subsection{References}\label{classAliHLTModuleAgent_alihltmoduleagent_references}
46 \begin{Desc}
47 \item[See also:]Ali\-HLTReconstructor interface to the Ali\-Root reconstruction 
48
49 Ali\-HLTAgent\-Sample agent for the lib\-Ali\-HLTSample library \end{Desc}
50
51
52
53
54 Definition at line 74 of file Ali\-HLTModule\-Agent.h.\subsection*{Public Member Functions}
55 \begin{CompactItemize}
56 \item 
57 {\bf Ali\-HLTModule\-Agent} ()
58 \item 
59 {\bf Ali\-HLTModule\-Agent} (const {\bf Ali\-HLTModule\-Agent} \&)
60 \item 
61 {\bf Ali\-HLTModule\-Agent} \& {\bf operator=} (const {\bf Ali\-HLTModule\-Agent} \&)
62 \item 
63 virtual {\bf $\sim$Ali\-HLTModule\-Agent} ()
64 \item 
65 virtual int {\bf Create\-Configurations} ({\bf Ali\-HLTConfiguration\-Handler} $\ast$handler, Ali\-Run\-Loader $\ast$runloader=NULL) const 
66 \item 
67 virtual const char $\ast$ {\bf Get\-Local\-Rec\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const 
68 \item 
69 virtual const char $\ast$ {\bf Get\-Event\-Rec\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const 
70 \item 
71 virtual const char $\ast$ {\bf Get\-Required\-Component\-Libraries} () const 
72 \item 
73 virtual int {\bf Register\-Components} (Ali\-Run\-Loader $\ast$runloader=NULL) const 
74 \item 
75 const char $\ast$ {\bf Get\-Top\-Configurations} (Ali\-Run\-Loader $\ast$runloader=NULL) const 
76 \end{CompactItemize}
77 \subsection*{Static Public Member Functions}
78 \begin{CompactItemize}
79 \item 
80 void {\bf Print\-Status} (const char $\ast$agent=NULL)
81 \item 
82 {\bf Ali\-HLTModule\-Agent} $\ast$ {\bf Get\-First\-Agent} ()
83 \item 
84 {\bf Ali\-HLTModule\-Agent} $\ast$ {\bf Get\-Next\-Agent} ()
85 \end{CompactItemize}
86 \subsection*{Private Member Functions}
87 \begin{CompactItemize}
88 \item 
89 {\bf Class\-Def} ({\bf Ali\-HLTModule\-Agent}, 0)
90 \end{CompactItemize}
91 \subsection*{Static Private Member Functions}
92 \begin{CompactItemize}
93 \item 
94 int {\bf Register} ({\bf Ali\-HLTModule\-Agent} $\ast$p\-Agent)
95 \item 
96 int {\bf Unregister} ({\bf Ali\-HLTModule\-Agent} $\ast$p\-Agent)
97 \end{CompactItemize}
98 \subsection*{Static Private Attributes}
99 \begin{CompactItemize}
100 \item 
101 TList {\bf fg\-Agent\-List}
102 \item 
103 TObj\-Link $\ast$ {\bf fg\-Current\-Lnk} = NULL
104 \end{CompactItemize}
105
106
107 \subsection{Constructor \& Destructor Documentation}
108 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!AliHLTModuleAgent@{AliHLTModuleAgent}}
109 \index{AliHLTModuleAgent@{AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
110 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Ali\-HLTModule\-Agent ()}\label{classAliHLTModuleAgent_a0}
111
112
113 standard constructor. The agent is automatically registered in the global agent manager \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!AliHLTModuleAgent@{AliHLTModuleAgent}}
114 \index{AliHLTModuleAgent@{AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
115 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Ali\-HLTModule\-Agent (const {\bf Ali\-HLTModule\-Agent} \&)}\label{classAliHLTModuleAgent_a1}
116
117
118 not a valid copy constructor, defined according to effective C++ style 
119
120 Definition at line 40 of file Ali\-HLTModule\-Agent.cxx.
121
122 \footnotesize\begin{verbatim}41   :
123 42   TObject(),
124 43   AliHLTLogging()
125 44 {
126 45   // see header file for function documentation
127 46 }
128
129 \end{verbatim}\normalsize 
130
131
132 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!~AliHLTModuleAgent@{$\sim$AliHLTModuleAgent}}
133 \index{~AliHLTModuleAgent@{$\sim$AliHLTModuleAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
134 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::$\sim${\bf Ali\-HLTModule\-Agent} ()\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a3}
135
136
137 destructor 
138
139 Definition at line 57 of file Ali\-HLTModule\-Agent.cxx.
140
141 References Unregister().
142
143 \footnotesize\begin{verbatim}58 {
144 59   // see header file for function documentation
145 60   Unregister(this);
146 61 }
147 \end{verbatim}\normalsize 
148
149
150
151
152 \subsection{Member Function Documentation}
153 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!ClassDef@{ClassDef}}
154 \index{ClassDef@{ClassDef}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
155 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}Ali\-HLTModule\-Agent::Class\-Def ({\bf Ali\-HLTModule\-Agent}, 0)\hspace{0.3cm}{\tt  [private]}}\label{classAliHLTModuleAgent_d0}
156
157
158 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!CreateConfigurations@{CreateConfigurations}}
159 \index{CreateConfigurations@{CreateConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
160 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Create\-Configurations ({\bf Ali\-HLTConfiguration\-Handler} $\ast$ {\em handler}, Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a4}
161
162
163 Register all configurations belonging to this module with the {\bf Ali\-HLTConfiguration\-Handler}{\rm (p.\,\pageref{classAliHLTConfigurationHandler})}. The agent can adapt the configurations to be registered to the current Ali\-Root setup by checking the runloader. \begin{Desc}
164 \item[Parameters:]
165 \begin{description}
166 \item[{\em handler}][in] the configuration handler \item[{\em runloader}][in] Ali\-Root runloader \end{description}
167 \end{Desc}
168 \begin{Desc}
169 \item[Returns:]neg. error code if failed \end{Desc}
170
171
172 Definition at line 92 of file Ali\-HLTModule\-Agent.cxx.
173
174 Referenced by Ali\-HLTSystem::Load\-Configurations().
175
176 \footnotesize\begin{verbatim}94 {
177 95   // default method, nothing to be done, child classes can overload
178 96   if (handler==NULL && runloader==NULL) {
179 97     // get rid of 'unused parameter' warning
180 98   }
181 99   return 0;
182 100 }
183 \end{verbatim}\normalsize 
184
185
186 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetEventRecConfigurations@{GetEventRecConfigurations}}
187 \index{GetEventRecConfigurations@{GetEventRecConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
188 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Event\-Rec\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a6}
189
190
191 Get the top configurations for event reconstruction. The same as for {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})}, but for the reconstruction on event by event basis. \begin{Desc}
192 \item[Parameters:]
193 \begin{description}
194 \item[{\em runloader}][in] Ali\-Root runloader \end{description}
195 \end{Desc}
196 \begin{Desc}
197 \item[Returns:]string containing the top configurations separated by blanks \end{Desc}
198
199
200 Definition at line 111 of file Ali\-HLTModule\-Agent.cxx.
201
202 \footnotesize\begin{verbatim}112 {
203 113   // default method, nothing to be done, child classes can overload
204 114   if (runloader==NULL) {
205 115     // get rid of 'unused parameter' warning
206 116   }
207 117   return NULL;
208 118 }
209 \end{verbatim}\normalsize 
210
211
212 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetFirstAgent@{GetFirstAgent}}
213 \index{GetFirstAgent@{GetFirstAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
214 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} $\ast$ Ali\-HLTModule\-Agent::Get\-First\-Agent ()\hspace{0.3cm}{\tt  [static]}}\label{classAliHLTModuleAgent_e1}
215
216
217 Get the first agent in the list \begin{Desc}
218 \item[Returns:]pointer to first agent in the list, NULL if empty \end{Desc}
219
220
221 Definition at line 135 of file Ali\-HLTModule\-Agent.cxx.
222
223 References fg\-Agent\-List, and fg\-Current\-Lnk.
224
225 Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Ali\-HLTSystem::Load\-Configurations().
226
227 \footnotesize\begin{verbatim}136 {
228 137   // see header file for function documentation
229 138   fgCurrentLnk=fgAgentList.FirstLink();
230 139   if (fgCurrentLnk==NULL) return NULL;
231 140   return (AliHLTModuleAgent*)fgCurrentLnk->GetObject();
232 141 }
233 \end{verbatim}\normalsize 
234
235
236 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetLocalRecConfigurations@{GetLocalRecConfigurations}}
237 \index{GetLocalRecConfigurations@{GetLocalRecConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
238 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Local\-Rec\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a5}
239
240
241 Get the top configurations for local event reconstruction. A top configuration describes a processing chain. It can simply be described by the last configuration(s) in the chain. The agent can adapt the configurations to be registered to the current Ali\-Root setup by checking the runloader. \begin{Desc}
242 \item[Parameters:]
243 \begin{description}
244 \item[{\em runloader}][in] Ali\-Root runloader \end{description}
245 \end{Desc}
246 \begin{Desc}
247 \item[Returns:]string containing the top configurations separated by blanks \end{Desc}
248
249
250 Definition at line 102 of file Ali\-HLTModule\-Agent.cxx.
251
252 Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Get\-Top\-Configurations().
253
254 \footnotesize\begin{verbatim}103 {
255 104   // default method, nothing to be done, child classes can overload
256 105   if (runloader==NULL) {
257 106     // get rid of 'unused parameter' warning
258 107   }
259 108   return NULL;
260 109 }
261 \end{verbatim}\normalsize 
262
263
264 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetNextAgent@{GetNextAgent}}
265 \index{GetNextAgent@{GetNextAgent}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
266 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} $\ast$ Ali\-HLTModule\-Agent::Get\-Next\-Agent ()\hspace{0.3cm}{\tt  [static]}}\label{classAliHLTModuleAgent_e2}
267
268
269 Get the next agent in the list \begin{Desc}
270 \item[Returns:]pointer to next agent in the list, NULL if end of list \end{Desc}
271
272
273 Definition at line 143 of file Ali\-HLTModule\-Agent.cxx.
274
275 References fg\-Current\-Lnk.
276
277 Referenced by Ali\-HLTSystem::Build\-Task\-Lists\-From\-Top\-Configurations(), and Ali\-HLTSystem::Load\-Configurations().
278
279 \footnotesize\begin{verbatim}144 {
280 145   // see header file for function documentation
281 146   if (fgCurrentLnk==NULL) return NULL;
282 147   fgCurrentLnk=fgCurrentLnk->Next();
283 148   if (fgCurrentLnk==NULL) return NULL;
284 149   return (AliHLTModuleAgent*)fgCurrentLnk->GetObject();
285 150 }
286 \end{verbatim}\normalsize 
287
288
289 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetRequiredComponentLibraries@{GetRequiredComponentLibraries}}
290 \index{GetRequiredComponentLibraries@{GetRequiredComponentLibraries}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
291 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Ali\-HLTModule\-Agent::Get\-Required\-Component\-Libraries () const\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a7}
292
293
294 Component libraries which the configurations of this agent depend on. \begin{Desc}
295 \item[Returns:]list of component libraries as a blank-separated string. \end{Desc}
296
297
298 Definition at line 120 of file Ali\-HLTModule\-Agent.cxx.
299
300 Referenced by Ali\-HLTSystem::Load\-Configurations().
301
302 \footnotesize\begin{verbatim}121 {
303 122   // default method, nothing to be done, child classes can overload
304 123   return NULL;
305 124 }
306 \end{verbatim}\normalsize 
307
308
309 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!GetTopConfigurations@{GetTopConfigurations}}
310 \index{GetTopConfigurations@{GetTopConfigurations}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
311 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ Ali\-HLTModule\-Agent::Get\-Top\-Configurations (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt  [inline]}}\label{classAliHLTModuleAgent_a9}
312
313
314 Old method kept for backward compatibility, redirected to {\bf Get\-Local\-Rec\-Configurations}{\rm (p.\,\pageref{classAliHLTModuleAgent_a5})}. 
315
316 Definition at line 159 of file Ali\-HLTModule\-Agent.h.
317
318 References Get\-Local\-Rec\-Configurations().
319
320 \footnotesize\begin{verbatim}159                                                                        {
321 160     return GetLocalRecConfigurations(runloader);
322 161   }
323 \end{verbatim}\normalsize 
324
325
326 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!operator=@{operator=}}
327 \index{operator=@{operator=}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
328 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}{\bf Ali\-HLTModule\-Agent} \& Ali\-HLTModule\-Agent::operator= (const {\bf Ali\-HLTModule\-Agent} \&)}\label{classAliHLTModuleAgent_a2}
329
330
331 not a valid assignment op, but defined according to effective C++ style 
332
333 Definition at line 48 of file Ali\-HLTModule\-Agent.cxx.
334
335 \footnotesize\begin{verbatim}49 {
336 50   // see header file for function documentation
337 51   return *this;
338 52 }
339 \end{verbatim}\normalsize 
340
341
342 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!PrintStatus@{PrintStatus}}
343 \index{PrintStatus@{PrintStatus}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
344 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}void Ali\-HLTModule\-Agent::Print\-Status (const char $\ast$ {\em agent} = {\tt NULL})\hspace{0.3cm}{\tt  [static]}}\label{classAliHLTModuleAgent_e0}
345
346
347 Print status info. Short summary on registered agents. This function acts globally on the list of agents if no specific agent is specified. 
348
349 Definition at line 63 of file Ali\-HLTModule\-Agent.cxx.
350
351 References fg\-Agent\-List, k\-HLTLog\-Info, and Ali\-HLTLogging::Logging().
352
353 Referenced by Ali\-HLTSystem::Configure().
354
355 \footnotesize\begin{verbatim}64 {
356 65   // see header file for function documentation
357 66   AliHLTLogging log;
358 67   if (agent) {
359 68     TObject* pAgent=fgAgentList.FindObject(agent);
360 69     if (pAgent) {
361 70       log.Logging(kHLTLogInfo, "AliHLTModuleAgent::PrintStatus", "module agents", 
362 71                   "agent %s available", pAgent->GetName());
363 72     } else {
364 73       log.Logging(kHLTLogInfo, "AliHLTModuleAgent::PrintStatus", "module agents", 
365 74                   "agent %s not found", agent);
366 75     }
367 76   } else {
368 77     TObjLink* lnk=fgAgentList.FirstLink();
369 78     log.Logging(kHLTLogInfo, "AliHLT", "", "-----------------------");
370 79     log.Logging(kHLTLogInfo, "AliHLT", "", "available module agents");
371 80     if (lnk==NULL) 
372 81       log.Logging(kHLTLogInfo, "AliHLT", "", "   none");
373 82     while (lnk) {
374 83       TString msg;
375 84       msg.Form("   %s : %p", ((AliHLTModuleAgent*)lnk->GetObject())->GetName(), lnk->GetObject());
376 85       log.Logging(kHLTLogInfo, "AliHLT", "", msg.Data());
377 86       lnk=lnk->Next();
378 87     }
379 88     log.Logging(kHLTLogInfo, "AliHLT", "", "-----------------------");
380 89   }
381 90 }
382 \end{verbatim}\normalsize 
383
384
385 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!Register@{Register}}
386 \index{Register@{Register}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
387 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Register ({\bf Ali\-HLTModule\-Agent} $\ast$ {\em p\-Agent})\hspace{0.3cm}{\tt  [static, private]}}\label{classAliHLTModuleAgent_h0}
388
389
390 Register agent in the global list. \begin{Desc}
391 \item[Returns:]neg. error code if failed \end{Desc}
392
393
394 Definition at line 152 of file Ali\-HLTModule\-Agent.cxx.
395
396 References fg\-Agent\-List, k\-HLTLog\-Debug, and Ali\-HLTLogging::Logging().
397
398 \footnotesize\begin{verbatim}153 {
399 154   // see header file for function documentation
400 155   AliHLTLogging log;
401 156   if (!pAgent) return -EINVAL;
402 157   if (fgAgentList.FindObject(pAgent)==NULL) {
403 158     log.Logging(kHLTLogDebug, "AliHLTModuleAgent::Register", "", "module agent %p registered", pAgent);
404 159     fgAgentList.Add(pAgent);
405 160   }
406 161   return 0;
407 162 }
408 \end{verbatim}\normalsize 
409
410
411 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!RegisterComponents@{RegisterComponents}}
412 \index{RegisterComponents@{RegisterComponents}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
413 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Register\-Components (Ali\-Run\-Loader $\ast$ {\em runloader} = {\tt NULL}) const\hspace{0.3cm}{\tt  [virtual]}}\label{classAliHLTModuleAgent_a8}
414
415
416 Register componets. This method can be used to register components for the module instead of the 'static object approach'. Registration is don by passing a sample object to {\bf Ali\-HLTComponent\-Handler::Register\-Component}{\rm (p.\,\pageref{classAliHLTComponentHandler_a10})}\par
417  {\em Note:\/} The sample object is owned by the agent, make sure to delete it. 
418
419 Definition at line 126 of file Ali\-HLTModule\-Agent.cxx.
420
421 \footnotesize\begin{verbatim}127 {
422 128   if (runloader==NULL) {
423 129     // get rid of 'unused parameter' warning
424 130   }
425 131   // default method, nothing to be done, child classes can overload
426 132   return 0;
427 133 }
428 \end{verbatim}\normalsize 
429
430
431 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!Unregister@{Unregister}}
432 \index{Unregister@{Unregister}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
433 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}int Ali\-HLTModule\-Agent::Unregister ({\bf Ali\-HLTModule\-Agent} $\ast$ {\em p\-Agent})\hspace{0.3cm}{\tt  [static, private]}}\label{classAliHLTModuleAgent_h1}
434
435
436 Unregister agent in the global list. \begin{Desc}
437 \item[Returns:]neg. error code if failed \end{Desc}
438
439
440 Definition at line 164 of file Ali\-HLTModule\-Agent.cxx.
441
442 References fg\-Agent\-List, k\-HLTLog\-Debug, and Ali\-HLTLogging::Logging().
443
444 Referenced by $\sim$Ali\-HLTModule\-Agent().
445
446 \footnotesize\begin{verbatim}165 {
447 166   // see header file for function documentation
448 167   AliHLTLogging log;
449 168   if (!pAgent) return -EINVAL;
450 169   if (fgAgentList.FindObject(pAgent)!=NULL) {
451 170     log.Logging(kHLTLogDebug, "AliHLTModuleAgent::Unregister", "", "module agent %p removed", pAgent);
452 171     fgAgentList.Remove(pAgent);
453 172   } else {
454 173   }
455 174   return 0;
456 175 }
457 \end{verbatim}\normalsize 
458
459
460
461
462 \subsection{Member Data Documentation}
463 \index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!fgAgentList@{fgAgentList}}
464 \index{fgAgentList@{fgAgentList}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
465 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}TList {\bf Ali\-HLTModule\-Agent::fg\-Agent\-List}\hspace{0.3cm}{\tt  [static, private]}}\label{classAliHLTModuleAgent_v0}
466
467
468 the list of active agents 
469
470 Definition at line 54 of file Ali\-HLTModule\-Agent.cxx.
471
472 Referenced by Get\-First\-Agent(), Print\-Status(), Register(), and Unregister().\index{AliHLTModuleAgent@{Ali\-HLTModule\-Agent}!fgCurrentLnk@{fgCurrentLnk}}
473 \index{fgCurrentLnk@{fgCurrentLnk}!AliHLTModuleAgent@{Ali\-HLTModule\-Agent}}
474 \subsubsection{\setlength{\rightskip}{0pt plus 5cm}TObj\-Link $\ast$ {\bf Ali\-HLTModule\-Agent::fg\-Current\-Lnk} = NULL\hspace{0.3cm}{\tt  [static, private]}}\label{classAliHLTModuleAgent_v1}
475
476
477 the current object link (list position) 
478
479 Definition at line 55 of file Ali\-HLTModule\-Agent.cxx.
480
481 Referenced by Get\-First\-Agent(), and Get\-Next\-Agent().
482
483 The documentation for this class was generated from the following files:\begin{CompactItemize}
484 \item 
485 /home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTModule\-Agent.h}\item 
486 /home/perthi/cern/aliroot/Ali\-Root\_\-head020507/HLT/BASE/{\bf Ali\-HLTModule\-Agent.cxx}\end{CompactItemize}