added AliFlatExternalTrackParam to HLT global library
[u/mrichter/AliRoot.git] / HLT / rec / AliHLTDAQInterfaceImplementation.h
1 //-*- Mode: C++ -*-
2 // $Id$
3
4 #ifndef ALIHLTDAQINTERFACEIMPLEMENTATION_H
5 #define ALIHLTDAQINTERFACEIMPLEMENTATION_H
6 //* This file is property of and copyright by the ALICE HLT Project        * 
7 //* ALICE Experiment at CERN, All rights reserved.                         *
8 //* See cxx source for full Copyright notice                               *
9
10 /** @file   AliHLTDAQInterfaceImplementation.h
11     @author Matthias Richter
12     @date   
13     @brief  Implementation of the AliHLTDAQInterfaceImplementation
14 */
15
16 #include "AliHLTDAQ.h"
17
18 /**
19  * @class AliHLTDAQInterfaceImplementation
20  * Implementation of the AliHLTDAQVirtualInterface
21  *
22  * For the sake of library (in)dependencies, AliDAQ can not be used directly in
23  * libHLTbase as this would  introduce dependencies to AliRoot libraries.
24  * The AliHLTDAQVirtualInterface provides a virtual interface to AliDAQ with
25  * the implementation in libHLTrec.so.
26  * See AliHLTDAQVirtualInterface for usage.
27  *
28  * @ingroup alihlt_aliroot_reconstruction
29  */
30 class AliHLTDAQInterfaceImplementation : public AliHLTDAQ {
31  public:
32   /** constructor */
33   AliHLTDAQInterfaceImplementation();
34   /** destructor */
35   virtual ~AliHLTDAQInterfaceImplementation();
36
37   Int_t       VirtNumberOfDetectors();
38
39   Int_t       VirtDetectorID(const char *detectorName);
40   const char *VirtDetectorName(Int_t detectorID);
41
42   Int_t       VirtDdlIDOffset(const char *detectorName);
43   Int_t       VirtDdlIDOffset(Int_t detectorID);
44
45   const char *VirtDetectorNameFromDdlID(Int_t ddlID, Int_t &ddlIndex);
46   Int_t       VirtDetectorIDFromDdlID(Int_t ddlID, Int_t &ddlIndex);
47
48   Int_t       VirtDdlID(const char *detectorName, Int_t ddlIndex);
49   Int_t       VirtDdlID(Int_t detectorID, Int_t ddlIndex);
50   const char *VirtDdlFileName(const char *detectorName, Int_t ddlIndex);
51   const char *VirtDdlFileName(Int_t detectorID, Int_t ddlIndex);
52
53   Int_t       VirtNumberOfDdls(const char *detectorName);
54   Int_t       VirtNumberOfDdls(Int_t detectorID);
55
56   const char *VirtListOfTriggeredDetectors(UInt_t detectorPattern);
57   UInt_t      VirtDetectorPattern(const char *detectorList);
58
59   const char *VirtOfflineModuleName(const char *detectorName);
60   const char *VirtOfflineModuleName(Int_t detectorID);
61
62   const char *VirtOnlineName(const char *detectorName);
63   const char *VirtOnlineName(Int_t detectorID);
64
65  protected:
66
67  private:
68   /** copy constructor prohibited */
69   AliHLTDAQInterfaceImplementation(const AliHLTDAQInterfaceImplementation&);
70   /** assignment operator prohibited */
71   AliHLTDAQInterfaceImplementation& operator=(const AliHLTDAQInterfaceImplementation&);
72
73   ClassDef(AliHLTDAQInterfaceImplementation, 0)
74 };
75
76 #endif