test
Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
SimRomanPot
SimFP420
src
DigiConverterFP420.cc
Go to the documentation of this file.
1
// File: DigiConverterFP420.cc
3
// Date: 12.2006
4
// Description: DigiConverterFP420 for FP420
5
// Modifications:
7
#include "
SimRomanPot/SimFP420/interface/DigiConverterFP420.h
"
8
9
DigiConverterFP420::DigiConverterFP420
(
float
in
,
int
verbosity
){
10
11
electronperADC
=
in
;
12
verbos
=
verbosity
;
13
14
const
int
defaultBits = 10;
15
const
int
largestBits = 30;
16
17
// example is in SiStrips:
18
// static SimpleConfigurable<int>
19
// adcBits(defaultBits, "DigiConverterFP420:rawDataAdcBits");
20
adcBits
=defaultBits;
21
22
if
(
adcBits
> largestBits ||
adcBits
< 1)
adcBits
= largestBits;
23
24
theMaxADC
= ~(~0 <<
adcBits
);
25
// std::cout << "theMaxADC= "<< theMaxADC << std::endl; // = 1023
26
if
(
verbos
>0) {
27
std::cout
<<
" ***DigiConverterFP420: constructor"
<< std::endl;
28
std::cout
<<
"with known electronperADC = "
<<
electronperADC
<<
"the adcBits = "
<<
adcBits
<<
" theMaxADC= "
<<
theMaxADC
<<
"for known defaultBits= "
<< defaultBits <<
" largestBits= "
<< largestBits << std::endl;
29
}
30
}
31
32
DConverterFP420::DigitalMapType
33
DigiConverterFP420::convert
(
const
signal_map_type
& analogSignal){
34
35
DConverterFP420::DigitalMapType
_temp;
36
37
for
( signal_map_type::const_iterator
i
=analogSignal.begin();
i
!=analogSignal.end();
i
++) {
38
39
// convert analog amplitude to digital, means integer number simulating ADC digitization!
40
//with truncation check
41
int
adc
=
convert
((*i).second);
42
43
if
(
verbos
>0) {
44
std::cout
<<
" ***DigiConverterFP420: convert: after truncation "
<< std::endl;
45
std::cout
<<
"adc = "
<< adc <<
" (*i).first = "
<< (*i).first << std::endl;
46
}
47
if
( adc > 0) _temp.insert( _temp.end(),
48
DigitalMapType::value_type
((*i).first, adc));
49
}
50
51
return
_temp;
52
53
}
54
55
56
int
DigiConverterFP420::truncate
(
float
in_adc) {
57
58
int
adc
= int(in_adc);
59
if
(
verbos
>0) {
60
std::cout
<<
" ***DigiConverterFP420: truncate"
<< std::endl;
61
std::cout
<<
"if adc = "
<< adc <<
"bigger theMaxADC = "
<<
theMaxADC
<<
" adc=theMaxADC !!!"
<< std::endl;
62
}
63
if
(adc >
theMaxADC
) adc =
theMaxADC
;
64
65
return
adc
;
66
}
ecalMGPA::adc
int adc(sample_type sample)
get the ADC sample (12 bits)
Definition:
EcalMGPASample.h:11
DigiConverterFP420::theMaxADC
int theMaxADC
Definition:
DigiConverterFP420.h:19
i
int i
Definition:
DBlmapReader.cc:9
DigiConverterFP420::truncate
int truncate(float in_adc)
Definition:
DigiConverterFP420.cc:56
DConverterFP420::DigitalMapType
std::map< int, int, std::less< int > > DigitalMapType
Definition:
DConverterFP420.h:9
recoMuon::in
Definition:
RecoMuonEnumerators.h:6
DigiConverterFP420::DigiConverterFP420
DigiConverterFP420(float in, int)
Definition:
DigiConverterFP420.cc:9
DigiConverterFP420::convert
DigitalMapType convert(const signal_map_type &)
Definition:
DigiConverterFP420.cc:33
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition:
JetExtendedAssociation.h:30
DigiConverterFP420.h
DigiConverterFP420::electronperADC
float electronperADC
Definition:
DigiConverterFP420.h:18
DigiConverterFP420::verbos
int verbos
Definition:
DigiConverterFP420.h:21
HLT_25ns10e33_v2_cff.verbosity
tuple verbosity
Definition:
HLT_25ns10e33_v2_cff.py:15329
DConverterFP420::signal_map_type
PileUpFP420::signal_map_type signal_map_type
Definition:
DConverterFP420.h:10
gather_cfg.cout
tuple cout
Definition:
gather_cfg.py:145
DigiConverterFP420::adcBits
int adcBits
Definition:
DigiConverterFP420.h:20
Generated for CMSSW Reference Manual by
1.8.5