ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Calorimeter
CaloCnv
CaloTPCnv
src
CaloCellPackerUtils.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
3
/*
4
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// $Id: CaloCellPackerUtils.h,v 1.1 2007-11-08 18:14:20 ssnyder Exp $
8
15
16
17
#ifndef CALOCELLPACKERUTILS_H
18
#define CALOCELLPACKERUTILS_H
19
20
21
namespace
CaloCellPackerUtils
{
22
23
33
class
Bitfield
34
{
35
public
:
40
Bitfield
(
unsigned
int
mask = 1);
41
42
48
unsigned
int
in
(
unsigned
int
x
)
const
;
49
50
56
unsigned
int
out
(
unsigned
int
x
)
const
;
57
58
59
protected
:
61
unsigned
int
m_mask
;
62
64
unsigned
int
m_shift
;
65
};
66
67
76
class
Floatfield
77
:
public
Bitfield
78
{
79
public
:
86
Floatfield
(
unsigned
int
mask=1,
double
xmin
=1,
double
xmax
=0);
87
88
94
unsigned
int
in
(
double
x
)
const
;
95
96
103
double
out
(
unsigned
int
x
,
int
& underflow)
const
;
104
105
106
private
:
108
double
m_xmin
;
109
111
double
m_xmax
;
112
114
double
m_fact
;
115
117
double
m_ifact
;
118
};
119
120
127
class
Floatfield2
128
:
public
Bitfield
129
{
130
public
:
136
Floatfield2
(
unsigned
int
mask=1,
double
xmax
=1);
137
138
144
unsigned
int
in
(
double
x
)
const
;
145
146
152
double
out
(
unsigned
int
x
)
const
;
153
154
155
private
:
157
double
m_xmax
;
158
160
double
m_fact
;
161
163
double
m_ifact
;
164
};
165
166
167
}
// namespace CaloCellPackerUtils
168
169
170
#include "
CaloCellPackerUtils.icc
"
171
172
173
#endif
// not CALOCELLPACKERUTILS_H
CaloCellPackerUtils.icc
x
#define x
CaloCellPackerUtils::Bitfield::out
unsigned int out(unsigned int x) const
Extract a value from the bitfield.
CaloCellPackerUtils::Bitfield::m_mask
unsigned int m_mask
Bitmask. Lower bit should be 1.
Definition
CaloCellPackerUtils.h:61
CaloCellPackerUtils::Bitfield::in
unsigned int in(unsigned int x) const
Shift and mask a value into the bitfield.
CaloCellPackerUtils::Bitfield::m_shift
unsigned int m_shift
Shift count.
Definition
CaloCellPackerUtils.h:64
CaloCellPackerUtils::Bitfield::Bitfield
Bitfield(unsigned int mask=1)
Constructor.
Definition
CaloCellPackerUtils.cxx:25
CaloCellPackerUtils::Floatfield2::m_xmax
double m_xmax
Largest representable value.
Definition
CaloCellPackerUtils.h:157
CaloCellPackerUtils::Floatfield2::in
unsigned int in(double x) const
Shift and mask a value into the bitfield.
CaloCellPackerUtils::Floatfield2::m_ifact
double m_ifact
Cached factor for float->int conversions.
Definition
CaloCellPackerUtils.h:163
CaloCellPackerUtils::Floatfield2::out
double out(unsigned int x) const
Extract a value from the bitfield.
CaloCellPackerUtils::Floatfield2::m_fact
double m_fact
Cached factor for int->float conversions.
Definition
CaloCellPackerUtils.h:160
CaloCellPackerUtils::Floatfield2::Floatfield2
Floatfield2(unsigned int mask=1, double xmax=1)
Constructor.
Definition
CaloCellPackerUtils.cxx:61
CaloCellPackerUtils::Floatfield::in
unsigned int in(double x) const
Shift and mask a value into the bitfield.
CaloCellPackerUtils::Floatfield::m_xmin
double m_xmin
Smallest representable value.
Definition
CaloCellPackerUtils.h:108
CaloCellPackerUtils::Floatfield::Floatfield
Floatfield(unsigned int mask=1, double xmin=1, double xmax=0)
Constructor.
Definition
CaloCellPackerUtils.cxx:44
CaloCellPackerUtils::Floatfield::out
double out(unsigned int x, int &underflow) const
Extract a value from the bitfield.
CaloCellPackerUtils::Floatfield::m_ifact
double m_ifact
Cached factor for float->int conversions.
Definition
CaloCellPackerUtils.h:117
CaloCellPackerUtils::Floatfield::m_fact
double m_fact
Cached factor for int->float conversions.
Definition
CaloCellPackerUtils.h:114
CaloCellPackerUtils::Floatfield::m_xmax
double m_xmax
Largest representable value.
Definition
CaloCellPackerUtils.h:111
xmax
double xmax
Definition
listroot.cxx:61
xmin
double xmin
Definition
listroot.cxx:60
CaloCellPackerUtils
Definition
CaloCellPackerUtils.cxx:18
Generated on
for ATLAS Offline Software by
1.17.0