]> git.uio.no Git - u/mrichter/AliRoot.git/blob - HLT/TPCLib/AliHLTTPCDefinitions.h
Alignment fixes
[u/mrichter/AliRoot.git] / HLT / TPCLib / AliHLTTPCDefinitions.h
1 // XEmacs -*-C++-*-
2 // @(#) $Id$
3
4 #ifndef ALIHLTTPCDEFINITIONS_H
5 #define ALIHLTTPCDEFINITIONS_H
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7  * See cxx source for full Copyright notice                               */
8
9 /* AliHLTTPCDefinitions
10  */
11
12 #include "AliHLTDataTypes.h"
13 #include "TObject.h"
14
15 class AliHLTTPCDefinitions
16     {
17     public:
18
19         static AliHLTUInt8_t GetMinSliceNr( const AliHLTComponent_BlockData& block )
20                 {
21                 return (AliHLTUInt8_t)( (block.fSpecification & 0x00FF0000) >> 16 );
22                 }
23         static AliHLTUInt8_t GetMinSliceNr( ULong_t spec )
24                 {
25                 return (AliHLTUInt8_t)( (spec & 0x00FF0000) >> 16 );
26                 }
27         static AliHLTUInt8_t GetMaxSliceNr( const AliHLTComponent_BlockData& block )
28                 {
29                 return (AliHLTUInt8_t)( (block.fSpecification & 0xFF000000) >> 24 );
30                 }
31         static AliHLTUInt8_t GetMaxSliceNr( ULong_t spec )
32                 {
33                 return (AliHLTUInt8_t)( (spec & 0xFF000000) >> 24 );
34                 }
35         static AliHLTUInt8_t GetMinPatchNr( const AliHLTComponent_BlockData& block )
36                 {
37                 return (AliHLTUInt8_t)( (block.fSpecification & 0x000000FF) );
38                 }
39         static AliHLTUInt8_t GetMinPatchNr( ULong_t spec )
40                 {
41                 return (AliHLTUInt8_t)( (spec & 0x000000FF) );
42                 }
43         static AliHLTUInt8_t GetMaxPatchNr( const AliHLTComponent_BlockData& block )
44                 {
45                 return (AliHLTUInt8_t)( (block.fSpecification & 0x0000FF00) >> 8 );
46                 }
47         static AliHLTUInt8_t GetMaxPatchNr( ULong_t spec )
48                 {
49                 return (AliHLTUInt8_t)( (spec & 0x0000FF00) >> 8 );
50                 }
51         
52         static AliHLTUInt32_t EncodeDataSpecification( AliHLTUInt8_t minSliceNr, 
53                                                 AliHLTUInt8_t maxSliceNr,
54                                                 AliHLTUInt8_t minPatchNr,
55                                                 AliHLTUInt8_t maxPatchNr )
56                 {
57                 return ((maxSliceNr & 0xFF) << 24) | ((minSliceNr & 0xFF) << 16) | ((maxPatchNr & 0xFF) << 8) | ((minPatchNr & 0xFF));
58                 }
59
60         static const AliHLTComponent_DataType gkDDLPackedRawDataType;
61         static const AliHLTComponent_DataType gkPackedRawDataType;
62         static const AliHLTComponent_DataType gkUnpackedRawDataType;
63         static const AliHLTComponent_DataType gkClustersDataType;
64         static const AliHLTComponent_DataType gkTrackSegmentsDataType;
65         static const AliHLTComponent_DataType gkVertexDataType;
66
67         ClassDef(AliHLTTPCDefinitions, 0)
68
69     };
70
71 #endif