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 */
9 /* AliHLTTPCDefinitions
12 #include "AliHLTDataTypes.h"
15 class AliHLTTPCDefinitions
19 static AliHLTUInt8_t GetMinSliceNr( const AliHLTComponent_BlockData& block )
21 return (AliHLTUInt8_t)( (block.fSpecification & 0x00FF0000) >> 16 );
23 static AliHLTUInt8_t GetMinSliceNr( ULong_t spec )
25 return (AliHLTUInt8_t)( (spec & 0x00FF0000) >> 16 );
27 static AliHLTUInt8_t GetMaxSliceNr( const AliHLTComponent_BlockData& block )
29 return (AliHLTUInt8_t)( (block.fSpecification & 0xFF000000) >> 24 );
31 static AliHLTUInt8_t GetMaxSliceNr( ULong_t spec )
33 return (AliHLTUInt8_t)( (spec & 0xFF000000) >> 24 );
35 static AliHLTUInt8_t GetMinPatchNr( const AliHLTComponent_BlockData& block )
37 return (AliHLTUInt8_t)( (block.fSpecification & 0x000000FF) );
39 static AliHLTUInt8_t GetMinPatchNr( ULong_t spec )
41 return (AliHLTUInt8_t)( (spec & 0x000000FF) );
43 static AliHLTUInt8_t GetMaxPatchNr( const AliHLTComponent_BlockData& block )
45 return (AliHLTUInt8_t)( (block.fSpecification & 0x0000FF00) >> 8 );
47 static AliHLTUInt8_t GetMaxPatchNr( ULong_t spec )
49 return (AliHLTUInt8_t)( (spec & 0x0000FF00) >> 8 );
52 static AliHLTUInt32_t EncodeDataSpecification( AliHLTUInt8_t minSliceNr,
53 AliHLTUInt8_t maxSliceNr,
54 AliHLTUInt8_t minPatchNr,
55 AliHLTUInt8_t maxPatchNr )
57 return ((maxSliceNr & 0xFF) << 24) | ((minSliceNr & 0xFF) << 16) | ((maxPatchNr & 0xFF) << 8) | ((minPatchNr & 0xFF));
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;
67 ClassDef(AliHLTTPCDefinitions, 0)