ATLAS Offline Software
PpmCompressionV1.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGT1CALOBYTESTREAM_PPMCOMPRESSIONV1_H
6 #define TRIGT1CALOBYTESTREAM_PPMCOMPRESSIONV1_H
7 
8 namespace LVL1BS {
9 
10 class PpmSubBlockV1;
11 
23 
24  public:
27 
29  static bool pack(PpmSubBlockV1& subBlock);
31  static bool unpack(PpmSubBlockV1& subBlock);
32 
33  private:
34  static const int s_formatsV0 = 6;
35  static const int s_lowerRange = 12;
36  static const int s_upperRange = 3;
37  static const int s_formats = 7;
38  static const int s_fadcRange = 15;
39  static const int s_peakOnly = 4;
40  static const int s_lutDataBits = 8;
41  static const int s_lutBcidBits = 3;
42  static const int s_fadcDataBits = 10;
43  static const int s_glinkPins = 16;
44  static const int s_statusBits = 5;
45  static const int s_errorBits = 6;
46  static const int s_statusMask = 0x1f;
47 
48  static bool unpackV100(PpmSubBlockV1& subBlock);
49  static bool unpackV101(PpmSubBlockV1& subBlock);
50  static bool unpackV104(PpmSubBlockV1& subBlock);
51 
52 };
53 
54 } // end namespace
55 
56 #endif
57 
LVL1BS::PpmCompressionV1::s_glinkPins
static const int s_glinkPins
Definition: PpmCompressionV1.h:43
LVL1BS::PpmCompressionV1::s_lowerRange
static const int s_lowerRange
Definition: PpmCompressionV1.h:35
LVL1BS::PpmCompressionV1::s_peakOnly
static const int s_peakOnly
Definition: PpmCompressionV1.h:39
LVL1BS::PpmCompressionV1::pack
static bool pack(PpmSubBlockV1 &subBlock)
Pack data.
Definition: PpmCompressionV1.cxx:33
LVL1BS::PpmCompressionV1::s_lutDataBits
static const int s_lutDataBits
Definition: PpmCompressionV1.h:40
LVL1BS::PpmCompressionV1::~PpmCompressionV1
~PpmCompressionV1()
LVL1BS::PpmCompressionV1::s_fadcDataBits
static const int s_fadcDataBits
Definition: PpmCompressionV1.h:42
LVL1BS::PpmCompressionV1::s_formatsV0
static const int s_formatsV0
Definition: PpmCompressionV1.h:34
LVL1BS::PpmCompressionV1::PpmCompressionV1
PpmCompressionV1()
LVL1BS::PpmCompressionV1::s_lutBcidBits
static const int s_lutBcidBits
Definition: PpmCompressionV1.h:41
LVL1BS::PpmCompressionV1::unpackV104
static bool unpackV104(PpmSubBlockV1 &subBlock)
Definition: PpmCompressionV1.cxx:488
LVL1BS::PpmCompressionV1::unpackV100
static bool unpackV100(PpmSubBlockV1 &subBlock)
Definition: PpmCompressionV1.cxx:242
LVL1BS::PpmCompressionV1::s_statusMask
static const int s_statusMask
Definition: PpmCompressionV1.h:46
LVL1BS::PpmSubBlockV1
Sub-Block class for PPM data.
Definition: PpmSubBlockV1.h:20
LVL1BS::PpmCompressionV1::unpack
static bool unpack(PpmSubBlockV1 &subBlock)
Unpack data.
Definition: PpmCompressionV1.cxx:217
LVL1BS::PpmCompressionV1::unpackV101
static bool unpackV101(PpmSubBlockV1 &subBlock)
Definition: PpmCompressionV1.cxx:348
LVL1BS::PpmCompressionV1::s_statusBits
static const int s_statusBits
Definition: PpmCompressionV1.h:44
LVL1BS
Definition: ZdcByteStreamReadV1V2Tool.h:47
LVL1BS::PpmCompressionV1
PPM Compressed Format Version 1.04 packing and unpacking utilities.
Definition: PpmCompressionV1.h:22
LVL1BS::PpmCompressionV1::s_fadcRange
static const int s_fadcRange
Definition: PpmCompressionV1.h:38
LVL1BS::PpmCompressionV1::s_upperRange
static const int s_upperRange
Definition: PpmCompressionV1.h:36
LVL1BS::PpmCompressionV1::s_errorBits
static const int s_errorBits
Definition: PpmCompressionV1.h:45
LVL1BS::PpmCompressionV1::s_formats
static const int s_formats
Definition: PpmCompressionV1.h:37