4 #ifndef ALIHLTCOMPAGENT_H
5 #define ALIHLTCOMPAGENT_H
6 //* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7 //* See cxx source for full Copyright notice *
9 /// @file AliHLTCompAgent.h
10 /// @author Matthias Richter
12 /// @brief Agent of the libAliHLTComp library
15 #include "AliHLTModuleAgent.h"
18 * @class AliHLTCompAgent
19 * This is the agent for the AliHLTComp library.
21 * @ingroup alihlt_system
23 class AliHLTCompAgent : public AliHLTModuleAgent {
26 * standard constructor. The agent is automatically registered in the
27 * global agent manager
31 virtual ~AliHLTCompAgent();
34 * Register all configurations belonging to this module with the
35 * AliHLTConfigurationHandler. The agent can adapt the configurations
36 * to be registered to the current AliRoot setup by checking the
38 * @param handler [in] the configuration handler
39 * @param rawReader [in] AliRoot RawReader instance
40 * @param runloader [in] AliRoot runloader
41 * @return neg. error code if failed
43 int CreateConfigurations(AliHLTConfigurationHandler* handler,
44 AliRawReader* rawReader=NULL,
45 AliRunLoader* runloader=NULL) const;
48 * Get the top configurations belonging to this module.
49 * A top configuration describes a processing chain. It can simply be
50 * described by the last configuration(s) in the chain.
51 * The agent can adapt the configurations to be registered to the current
52 * AliRoot setup by checking the runloader.
53 * @param rawReader [in] AliRoot RawReader instance
54 * @param runloader [in] AliRoot runloader
55 * @return string containing the top configurations separated by blanks
57 const char* GetReconstructionChains(AliRawReader* rawReader=NULL,
58 AliRunLoader* runloader=NULL) const;
60 * Component libraries which the configurations of this agent depend on.
61 * @return list of component libraries as a blank-separated string.
63 const char* GetRequiredComponentLibraries() const;
66 * Register components for the AliHLTComp library.
67 * @param pHandler [in] instance of the component handler
69 int RegisterComponents(AliHLTComponentHandler* pHandler) const;
71 AliHLTModulePreprocessor* GetPreprocessor();
75 ClassDef(AliHLTCompAgent, 0);