]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/comp/AliHLTTPCCompModelDeconverter.h
coding conventions and compilation warnings and work on adaptive TPC data compression...
[u/mrichter/AliRoot.git] / HLT / TPCLib / comp / AliHLTTPCCompModelDeconverter.h
1 // XEmacs -*-C++-*-
2 // $Id$
3
4 #ifndef ALIHLTTPCCOMPMODELDECONVERTER_H
5 #define ALIHLTTPCCOMPMODELDECONVERTER_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   AliHLTTPCCompModelDeconverter.h
11     @author Timm Steinbeck
12     @date   
13     @brief  Declaration of a copy component. */
14
15 #include "AliHLTTPCTrackArray.h"
16 #include "AliHLTTPCTrackletDataFormat.h"
17 #include "AliHLTTPCClusterDataFormat.h"
18 #include "AliHLTLogging.h"
19
20 /**
21  * @class AliHLTTPCCompModelDeconverter
22  * @brief A dummy HLT processing component. 
23  *
24  * An implementiation of a copy component that just copies its input data
25  * to debug a components input data
26  * @ingroup alihlt_tpc
27  */
28 class AliHLTTPCCompModelDeconverter: public AliHLTLogging
29     {
30     public:
31
32       /** standard constructor */
33       AliHLTTPCCompModelDeconverter();
34
35       /** standard destructor */
36       virtual ~AliHLTTPCCompModelDeconverter();
37       
38       /** initialisation function */
39       int Init();
40       
41       /** function to set track cluster model input data
42        * @param data AliHLTUInt8_t* pointer to input data
43        * @param size UInt_t input size
44        * @return zero upon success
45        */      
46       int SetTrackClusterModelInputData( AliHLTUInt8_t* data, UInt_t size );
47
48       /** function to set remaining cluster model input data
49        * @param data AliHLTUInt8_t* pointer to input data
50        * @param size UInt_t input size
51        * @return zero upon success
52        */    
53       int SetRemainingClustersModelInputData( AliHLTUInt8_t* data, UInt_t size );
54
55       /** function to deconvert tracks
56        * @param data AliHLTUInt8_t* pointer to input data
57        * @param size UInt_t& input size
58        * @return zero upon success
59        */    
60       int DeconvertTracks( AliHLTUInt8_t* data, UInt_t& size );
61
62       /** function to deconvert clusters
63        * @param slice UInt_t slice number
64        * @param patch UInt_t patch number
65        * @param data AliHLTUInt8_t* pointer to input data
66        * @param size UInt_t& input size
67        * @return zero upon success
68        */    
69       int DeconvertClusters( UInt_t slice, UInt_t patch, AliHLTUInt8_t* data, UInt_t& size );
70
71     protected:
72
73       /** member variable of input track array */
74       AliHLTTPCTrackArray fInputTrackArray;
75         
76       /** member variable pointer to track cluster model data */
77       AliHLTUInt8_t* fTrackClusterModelData;
78       /** member variable for track cluster model data size */
79       UInt_t fTrackClusterModelDataSize;
80
81       /** member variable pointer to remaining clusters model data */
82       AliHLTUInt8_t* fRemainingClustersModelData;
83       /** member variable for remaining clusters model data size */
84       UInt_t fRemainingClustersModelDataSize;
85
86     private:
87       /** copy constructor prohibited */
88       AliHLTTPCCompModelDeconverter(const AliHLTTPCCompModelDeconverter&);
89       /** assignment operator prohibited */
90       AliHLTTPCCompModelDeconverter& operator=(const AliHLTTPCCompModelDeconverter&);
91
92         ClassDef(AliHLTTPCCompModelDeconverter, 1)
93
94     };
95 #endif