check for existance of macro R__VA_COPY and fallback implementation
[u/mrichter/AliRoot.git] / HLT / SampleLib / AliHLTAgentSample.h
CommitLineData
242bb794 1// @(#) $Id$
2
3#ifndef ALIHLTAGENTSAMPLE_H
4#define ALIHLTAGENTSAMPLE_H
5/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
6 * See cxx source for full Copyright notice */
7
8/** @file AliHLTAgentSample.h
9 @author Matthias Richter
10 @date
11 @brief Agent of the libAliHLTSample library
12*/
13
14#include "AliHLTModuleAgent.h"
15
16/**
17 * @class AliHLTAgentSample
18 * This is the agent for the AliHLTSample library.
19 *
20 * @ingroup alihlt_system
21 */
22class AliHLTAgentSample : public AliHLTModuleAgent {
23 public:
24 /**
25 * standard constructor. The agent is automatically registered in the
26 * global agent manager
27 */
28 AliHLTAgentSample();
29 /** destructor */
30 virtual ~AliHLTAgentSample();
31
32 /**
33 * Register all configurations belonging to this module with the
34 * AliHLTConfigurationHandler. The agent can adapt the configurations
35 * to be registered to the current AliRoot setup by checking the
36 * runloader.
37 * @param runloader AliRoot runloader
38 * @return neg. error code if failed
39 */
40 int CreateConfigurations(AliHLTConfigurationHandler* handler,
41 AliRunLoader* runloader=NULL) const;
42
43 /**
44 * Get the top configurations belonging to this module.
45 * A top configuration describes a processing chain. It can simply be
46 * described by the last configuration(s) in the chain.
47 * The agent can adapt the configurations to be registered to the current
48 * AliRoot setup by checking the runloader.
49 * @param runloader AliRoot runloader
50 * @return number of configurations, neg. error code if failed
51 */
52 const char* GetTopConfigurations(AliRunLoader* runloader=NULL) const;
53
54 /**
55 * Component libraries which the configurations of this agent depend on.
56 * @return list of component libraries as a blank-separated string.
57 */
58 const char* GetRequiredComponentLibraries() const;
59
60 protected:
61
62 private:
63 ClassDef(AliHLTAgentSample, 0);
64};
65
66#endif