]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/global/AliHLTGlobalAgent.h
Update responsibles for MCH, MTR, HMP
[u/mrichter/AliRoot.git] / HLT / global / AliHLTGlobalAgent.h
CommitLineData
ff242c62 1//-*- Mode: C++ -*-
ec6160d5 2// $Id$
3
4#ifndef ALIHLTGLOBALAGENT_H
5#define ALIHLTGLOBALAGENT_H
6//* This file is property of and copyright by the ALICE HLT Project *
7//* ALICE Experiment at CERN, All rights reserved. *
8//* See cxx source for full Copyright notice */
9
ff242c62 10// @file AliHLTGlobalAgent.h
11// @author Matthias Richter
12// @date
13// @brief Agent of the libAliHLTGlobal library
14//
ec6160d5 15
16#include "AliHLTModuleAgent.h"
17
18class AliHLTOUTHandler;
19
20/**
21 * @class AliHLTGlobalAgent
22 * This is the agent for the AliHLTGlobal library.
23 *
24 * @ingroup alihlt_system
25 */
26class AliHLTGlobalAgent : public AliHLTModuleAgent {
27 public:
28 /**
29 * standard constructor. The agent is automatically registered in the
30 * global agent manager
31 */
32 AliHLTGlobalAgent();
33 /** destructor */
34 virtual ~AliHLTGlobalAgent();
35
36 int RegisterComponents(AliHLTComponentHandler* pHandler) const;
37
6595fdc6 38 /**
39 * Inherited from AliHLTModuleAgent
40 * Register all configurations belonging to this module with the
41 * AliHLTConfigurationHandler. The agent can adapt the configurations
42 * to be registered to the current AliRoot setup by checking the
43 * runloader.
44 * @param handler the configuration handler
45 * @param rawReader AliRawReader instance
46 * @param runloader AliRoot runloader
47 * @return neg. error code if failed
48 */
49 int CreateConfigurations(AliHLTConfigurationHandler* handler,
50 AliRawReader* rawReader=NULL,
51 AliRunLoader* runloader=NULL) const;
52
53 /**
54 * Inherited from AliHLTModuleAgent
55 * Get the top configurations belonging to this module.
56 * A top configuration describes a processing chain. It can simply be
57 * described by the last configuration(s) in the chain.
58 * The agent can adapt the configurations to be registered to the current
59 * AliRoot setup by checking the runloader.
60 * @param rawReader AliRawReader instance
61 * @param runloader AliRoot runloader
62 * @return number of configurations, neg. error code if failed
63 */
64 const char* GetReconstructionChains(AliRawReader* rawReader=NULL,
65 AliRunLoader* runloader=NULL) const;
66
67 /**
68 * Inherited from AliHLTModuleAgent
69 * Component libraries which the configurations of this agent depend on.
70 * @return list of component libraries as a blank-separated string.
71 */
72 const char* GetRequiredComponentLibraries() const;
73
ec6160d5 74 int GetHandlerDescription(AliHLTComponentDataType dt,
75 AliHLTUInt32_t spec,
76 AliHLTOUTHandlerDesc& desc) const;
77
78 AliHLTOUTHandler* GetOutputHandler(AliHLTComponentDataType dt, AliHLTUInt32_t spec);
79
80 int DeleteOutputHandler(AliHLTOUTHandler* pInstance);
81
314b6bc2 82 AliHLTModulePreprocessor* GetPreprocessor();
83
ec6160d5 84 protected:
85
86 private:
87 /** copy constructor prohibited */
88 AliHLTGlobalAgent(const AliHLTGlobalAgent&);
89 /** assignment operator prohibited */
90 AliHLTGlobalAgent& operator=(const AliHLTGlobalAgent&);
91
92 ClassDef(AliHLTGlobalAgent, 0);
93};
94
95#endif