]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/trigger/AliHLTTriggerAgent.h
added agent for libAliHLTTrigger with HLTOUT handlers for HLTRDLST and HLTTRGDT blocks
[u/mrichter/AliRoot.git] / HLT / trigger / AliHLTTriggerAgent.h
1 // $Id$
2
3 #ifndef ALIHLTTRIGGERAGENT_H
4 #define ALIHLTTRIGGERAGENT_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                               */
8
9 /** @file   AliHLTTriggerAgent.h
10     @author Matthias Richter
11     @date   
12     @brief  Agent of the libAliHLTTrigger library
13 */
14
15 #include "AliHLTModuleAgent.h"
16
17 class AliHLTOUTHandler;
18
19 /**
20  * @class AliHLTTriggerAgent
21  * This is the agent for the AliHLTTrigger library.
22  *
23  * @ingroup alihlt_system
24  */
25 class AliHLTTriggerAgent : public AliHLTModuleAgent {
26  public:
27   /**
28    * standard constructor. The agent is automatically registered in the
29    * global agent manager
30    */
31   AliHLTTriggerAgent();
32   /** destructor */
33   virtual ~AliHLTTriggerAgent();
34
35   int RegisterComponents(AliHLTComponentHandler* pHandler) const;
36
37   int GetHandlerDescription(AliHLTComponentDataType dt,
38                             AliHLTUInt32_t spec,
39                             AliHLTOUTHandlerDesc& desc) const;
40
41   AliHLTOUTHandler* GetOutputHandler(AliHLTComponentDataType dt, AliHLTUInt32_t spec);
42
43   int DeleteOutputHandler(AliHLTOUTHandler* pInstance);
44
45  protected:
46
47  private:
48   /** copy constructor prohibited */
49   AliHLTTriggerAgent(const AliHLTTriggerAgent&);
50   /** assignment operator prohibited */
51   AliHLTTriggerAgent& operator=(const AliHLTTriggerAgent&);
52
53   ClassDef(AliHLTTriggerAgent, 0);
54 };
55
56 #endif