Adding the agent object which handles dimuon HLT configurations in libAliHLTMUON.so
[u/mrichter/AliRoot.git] / HLT / MUON / OfflineInterface / AliHLTMUONAgent.h
CommitLineData
d1ff7c16 1#ifndef ALIHLTMUONAGENT_H
2#define ALIHLTMUONAGENT_H
3/* Copyright(c) 1998-2007, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8/**
9 * @file AliHLTMUONAgent.h
10 * @author Artur Szostak <artursz@iafrica.com>
11 * @date
12 * @brief The HLT module agent for libAliHLTMUON.so which interfaces HLT
13 * components with offline.
14 */
15
16#include "AliHLTModuleAgent.h"
17class AliRunLoader;
18
19/**
20 * This module agent handles dimuon HLT module registration and configurations
21 * within the AliRoot framework.
22 */
23class AliHLTMUONAgent : public AliHLTModuleAgent
24{
25public:
26 AliHLTMUONAgent();
27
28 virtual ~AliHLTMUONAgent();
29
30 /**
31 * Register all processing configurations belonging to the dimuon HLT
32 * library with the AliHLTConfigurationHandler.
33 * @param handler the configuration handler
34 * @param runloader AliRoot runloader
35 * @return Zero on success and error code if failed.
36 */
37 int CreateConfigurations(
38 AliHLTConfigurationHandler* handler,
39 AliRunLoader* runloader = NULL
40 ) const;
41
42 /**
43 * Returns the top processing chain configurations for local event
44 * reconstruction.
45 * @param runloader [in] AliRoot runloader
46 * @return string containing the top configurations separated by blanks.
47 */
48 const char* GetLocalRecConfigurations(AliRunLoader* runloader = NULL) const;
49
50 /**
51 * Component libraries which the configurations of this agent depend on.
52 * @return list of component libraries as a blank-separated string.
53 */
54 const char* GetRequiredComponentLibraries() const;
55
56 ClassDef(AliHLTMUONAgent, 1); // Dimuon HLT module agent which handles processing configurations.
57};
58
59#endif // ALIHLTMUONAGENT_H