-
Notifications
You must be signed in to change notification settings - Fork 4.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move EcalDigiSimRecoPhase2 from 11_1_X to 11_2_X
- Loading branch information
Showing
56 changed files
with
1,506 additions
and
175 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,9 @@ | ||
#include "CalibFormats/CaloObjects/interface/CaloTSamples.icc" | ||
#include "CalibFormats/CaloObjects/interface/CaloTSamplesBase.icc" | ||
#include "CalibFormats/CaloObjects/interface/CaloTSamples.icc" | ||
#include "CondFormats/EcalObjects/interface/EcalConstants.h" | ||
|
||
template class CaloTSamplesBase<float>; | ||
|
||
template class CaloTSamples<float, 10>; | ||
template class CaloTSamples<float, ecalPh2::sampleSize>; | ||
template class CaloTSamples<float, 3>; | ||
template class CaloTSamples<float, 10>; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#ifndef CondFormats_DataRecord_EcalCATIAGainRatiosRcd_H | ||
#define CondFormats_DataRecord_EcalCATIAGainRatiosRcd_H | ||
|
||
#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" | ||
class EcalCATIAGainRatiosRcd : public edm::eventsetup::EventSetupRecordImplementation<EcalCATIAGainRatiosRcd> {}; | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
#ifndef CondFormats_DataRecord_EcalLiteDTUPedestalsRcd_h | ||
#define CondFormats_DataRecord_EcalLiteDTUPedestalsRcd_h | ||
|
||
#include "FWCore/Framework/interface/EventSetupRecordImplementation.h" | ||
class EcalLiteDTUPedestalsRcd : public edm::eventsetup::EventSetupRecordImplementation<EcalLiteDTUPedestalsRcd> {}; | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#include "CondFormats/DataRecord/interface/EcalCATIAGainRatiosRcd.h" | ||
#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" | ||
|
||
EVENTSETUP_RECORD_REG(EcalCATIAGainRatiosRcd); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#include "CondFormats/DataRecord/interface/EcalLiteDTUPedestalsRcd.h" | ||
#include "FWCore/Framework/interface/eventsetuprecord_registration_macro.h" | ||
|
||
EVENTSETUP_RECORD_REG(EcalLiteDTUPedestalsRcd); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
#ifndef CondFormats_EcalObjects_EcalCATIAGainRatios_h | ||
#define CondFormats_EcalObjects_EcalCATIAGainRatios_h | ||
|
||
#include "CondFormats/EcalObjects/interface/EcalCondObjectContainer.h" | ||
|
||
typedef float EcalCATIAGainRatio; | ||
typedef EcalFloatCondObjectContainer EcalCATIAGainRatioMap; | ||
typedef EcalCATIAGainRatioMap EcalCATIAGainRatios; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
//Namespaces for Phase1 and Phase2 | ||
#ifndef CondFormats_EcalObject_EcalConstants_h | ||
#define CondFormats_EcalObject_EcalConstants_h | ||
|
||
class ecalPh2 { | ||
public: | ||
static constexpr double Samp_Period = 6.25; | ||
static constexpr unsigned int NGAINS = 2; | ||
static constexpr float gains[NGAINS] = {10., 1.}; | ||
static constexpr unsigned int gainId1 = 1; | ||
static constexpr unsigned int gainId10 = 0; | ||
static constexpr unsigned int sampleSize = 16; | ||
static constexpr unsigned int NBITS = 12; // number of available bits | ||
static constexpr unsigned int MAXADC = (1 << NBITS) - 1; // 2^12 -1, adc max range | ||
static constexpr unsigned int kEBChannels = 61200; | ||
static constexpr double maxEneEB = 2000.; | ||
static constexpr unsigned int kNOffsets = 2000; | ||
static constexpr unsigned int kAdcMask = 0xFFF; | ||
static constexpr unsigned int kGainIdMask = 0x3; | ||
|
||
}; // namespace ecalPh2 | ||
|
||
class ecalPh1 { | ||
public: | ||
static constexpr double Samp_Period = 25.; | ||
static constexpr unsigned int NGAINS = 4; | ||
static constexpr float gains[NGAINS] = {0., 12., 6., 1.}; | ||
static constexpr unsigned int sampleSize = 10; | ||
static constexpr unsigned int kNOffsets = 2000; | ||
}; // namespace ecalPh1 | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
#ifndef CondFormats_EcalObject_EcalLiteDTUPedestals_h | ||
#define CondFormats_EcalObject_EcalLiteDTUPedestals_h | ||
|
||
#include "CondFormats/Serialization/interface/Serializable.h" | ||
#include "CondFormats/EcalObjects/interface/EcalCondObjectContainer.h" | ||
#include "CondFormats/EcalObjects/interface/EcalConstants.h" | ||
|
||
class EcalLiteDTUPedestals { | ||
public: | ||
int setMean(unsigned int i, float value) { | ||
if (i >= ecalPh2::NGAINS) | ||
return -1; | ||
else | ||
meanarray[i] = value; | ||
return 1; | ||
} | ||
|
||
int setRMS(unsigned int i, float value) { | ||
if (i >= ecalPh2::NGAINS) | ||
return -1; | ||
else | ||
rmsarray[i] = value; | ||
return 1; | ||
} | ||
|
||
float mean(unsigned int i) const { return meanarray[i]; } | ||
|
||
float rms(unsigned int i) const { return rmsarray[i]; } | ||
|
||
private: | ||
float meanarray[ecalPh2::NGAINS] = {13., 8.}; | ||
float rmsarray[ecalPh2::NGAINS] = {2.8, 1.2}; | ||
COND_SERIALIZABLE; | ||
}; | ||
|
||
typedef EcalCondObjectContainer<EcalLiteDTUPedestals> EcalLiteDTUPedestalsMap; | ||
typedef EcalLiteDTUPedestalsMap::const_iterator EcalLiteDTUPedestalsMapIterator; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
4 changes: 4 additions & 0 deletions
4
CondFormats/EcalObjects/src/T_EventSetup_EcalLiteDTUPedestals.cc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
#include "CondFormats/EcalObjects/interface/EcalLiteDTUPedestals.h" | ||
#include "FWCore/Utilities/interface/typelookup.h" | ||
|
||
TYPELOOKUP_DATA_REG(EcalLiteDTUPedestalsMap); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
import FWCore.ParameterSet.Config as cms | ||
|
||
from Configuration.Eras.Era_Phase2C10_cff import Phase2C10 | ||
from Configuration.Eras.Modifier_phase2_ecal_devel_cff import phase2_ecal_devel | ||
from Configuration.Eras.Modifier_phase2_hfnose_cff import phase2_hfnose | ||
|
||
Phase2C10_Ecal_Devel = cms.ModifierChain(Phase2C10,phase2_hfnose,phase2_ecal_devel) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
import FWCore.ParameterSet.Config as cms | ||
|
||
phase2_ecal_devel = cms.Modifier() | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
#ifndef DataFormats_EcalDigi_EcalDataFrame_Ph2_h | ||
#define DataFormats_EcalDigi_EcalDataFrame_Ph2_h | ||
#include "DataFormats/EcalDigi/interface/EcalLiteDTUSample.h" | ||
#include "DataFormats/DetId/interface/DetId.h" | ||
#include "DataFormats/Common/interface/DataFrame.h" | ||
#include "CondFormats/EcalObjects/interface/EcalConstants.h" | ||
|
||
/** \class EcalDataFrame_Ph2 | ||
*/ | ||
class EcalDataFrame_Ph2 { | ||
public: | ||
EcalDataFrame_Ph2() {} | ||
EcalDataFrame_Ph2(edm::DataFrame const& iframe) : m_data(iframe) {} | ||
|
||
virtual ~EcalDataFrame_Ph2() {} | ||
|
||
DetId id() const { return m_data.id(); } | ||
|
||
int size() const { return m_data.size(); } | ||
|
||
EcalLiteDTUSample operator[](int i) const { return m_data[i]; } | ||
EcalLiteDTUSample sample(int i) const { return m_data[i]; } | ||
|
||
// FIXME (shall we throw??) | ||
void setSize(int) {} | ||
void setSample(int i, EcalLiteDTUSample sam) { m_data[i] = sam; } | ||
|
||
static constexpr int MAXSAMPLES = ecalPh2::sampleSize; | ||
|
||
edm::DataFrame const& frame() const { return m_data; } | ||
edm::DataFrame& frame() { return m_data; } | ||
|
||
private: | ||
edm::DataFrame m_data; | ||
}; | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
#ifndef DataFormats_EcalDigi_EcalLiteDTUSample_h | ||
#define DataFormats_EcalDigi_EcalLiteDTUSample_h | ||
|
||
#include <iosfwd> | ||
#include <cstdint> | ||
#include "CondFormats/EcalObjects/interface/EcalConstants.h" | ||
|
||
namespace ecalLiteDTU { | ||
typedef uint16_t sample_type; | ||
|
||
/// get the ADC sample (12 bits) | ||
constexpr int adc(sample_type sample) { return sample & ecalPh2::kAdcMask; } | ||
/// get the gainId (2 bits) | ||
constexpr int gainId(sample_type sample) { return (sample >> ecalPh2::NBITS) & ecalPh2::kGainIdMask; } | ||
constexpr sample_type pack(int adc, int gainId) { | ||
return (adc & ecalPh2::kAdcMask) | ((gainId & ecalPh2::kGainIdMask) << ecalPh2::NBITS); | ||
} | ||
} // namespace ecalLiteDTU | ||
|
||
/** \class EcalLiteDTUSample | ||
* Simple container packer/unpacker for a single sample from the Lite_CATIA electronics | ||
* | ||
* | ||
*/ | ||
class EcalLiteDTUSample { | ||
public: | ||
EcalLiteDTUSample() { theSample = 0; } | ||
EcalLiteDTUSample(uint16_t data) { theSample = data; } | ||
EcalLiteDTUSample(int adc, int gainId); | ||
|
||
/// get the raw word | ||
uint16_t raw() const { return theSample; } | ||
/// get the ADC sample (12 bits) | ||
int adc() const { return theSample & ecalPh2::kAdcMask; } | ||
/// get the gainId (2 bits) | ||
int gainId() const { return (theSample >> ecalPh2::NBITS) & ecalPh2::kGainIdMask; } | ||
/// for streaming | ||
uint16_t operator()() const { return theSample; } | ||
operator uint16_t() const { return theSample; } | ||
|
||
private: | ||
uint16_t theSample; | ||
}; | ||
|
||
std::ostream& operator<<(std::ostream&, const EcalLiteDTUSample&); | ||
|
||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
#include "DataFormats/EcalDigi/interface/EcalLiteDTUSample.h" | ||
#include <iostream> | ||
|
||
EcalLiteDTUSample::EcalLiteDTUSample(int adc, int gainId) { | ||
theSample = (adc & ecalPh2::kAdcMask) | ((gainId & ecalPh2::kGainIdMask) << ecalPh2::NBITS); | ||
} | ||
|
||
std::ostream& operator<<(std::ostream& s, const EcalLiteDTUSample& samp) { | ||
s << "ADC=" << samp.adc() << ", gainId=" << samp.gainId(); | ||
return s; | ||
} |
Oops, something went wrong.