3 #ifndef ALIHLTGLOBALAGENT_H
4 #define ALIHLTGLOBALAGENT_H
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 */
9 /** @file AliHLTGlobalAgent.h
10 @author Matthias Richter
12 @brief Agent of the libAliHLTGlobal library
15 #include "AliHLTModuleAgent.h"
17 class AliHLTOUTHandler;
20 * @class AliHLTGlobalAgent
21 * This is the agent for the AliHLTGlobal library.
23 * @ingroup alihlt_system
25 class AliHLTGlobalAgent : public AliHLTModuleAgent {
28 * standard constructor. The agent is automatically registered in the
29 * global agent manager
33 virtual ~AliHLTGlobalAgent();
35 int RegisterComponents(AliHLTComponentHandler* pHandler) const;
38 * Inherited from AliHLTModuleAgent
39 * Register all configurations belonging to this module with the
40 * AliHLTConfigurationHandler. The agent can adapt the configurations
41 * to be registered to the current AliRoot setup by checking the
43 * @param handler the configuration handler
44 * @param rawReader AliRawReader instance
45 * @param runloader AliRoot runloader
46 * @return neg. error code if failed
48 int CreateConfigurations(AliHLTConfigurationHandler* handler,
49 AliRawReader* rawReader=NULL,
50 AliRunLoader* runloader=NULL) const;
53 * Inherited from AliHLTModuleAgent
54 * Get the top configurations belonging to this module.
55 * A top configuration describes a processing chain. It can simply be
56 * described by the last configuration(s) in the chain.
57 * The agent can adapt the configurations to be registered to the current
58 * AliRoot setup by checking the runloader.
59 * @param rawReader AliRawReader instance
60 * @param runloader AliRoot runloader
61 * @return number of configurations, neg. error code if failed
63 const char* GetReconstructionChains(AliRawReader* rawReader=NULL,
64 AliRunLoader* runloader=NULL) const;
67 * Inherited from AliHLTModuleAgent
68 * Component libraries which the configurations of this agent depend on.
69 * @return list of component libraries as a blank-separated string.
71 const char* GetRequiredComponentLibraries() const;
73 int GetHandlerDescription(AliHLTComponentDataType dt,
75 AliHLTOUTHandlerDesc& desc) const;
77 AliHLTOUTHandler* GetOutputHandler(AliHLTComponentDataType dt, AliHLTUInt32_t spec);
79 int DeleteOutputHandler(AliHLTOUTHandler* pInstance);
84 /** copy constructor prohibited */
85 AliHLTGlobalAgent(const AliHLTGlobalAgent&);
86 /** assignment operator prohibited */
87 AliHLTGlobalAgent& operator=(const AliHLTGlobalAgent&);
89 ClassDef(AliHLTGlobalAgent, 0);