1 #ifndef SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBTrigPrimTestAlgo_h 2 #define SimCalorimetry_EcalEBTrigPrimAlgos_EcalEBTrigPrimTestAlgo_h 33 class ETPCoherenceTest;
92 int ind = (
id.ietaAbs() - 18) * 72 +
id.
iphi();
118 std::vector<std::vector<std::pair<int, std::vector<EBDataFrame> > > >
towerMapEB_;
119 std::vector<std::vector<std::pair<int, std::vector<EEDataFrame> > > >
towerMapEE_;
121 std::vector<EcalEBTriggerPrimitiveSample>
towtp_;
122 std::vector<EcalEBTriggerPrimitiveSample>
towtp2_;
171 (towMap[
i])[
j].first = 0;
175 template <
class Coll>
184 std::cout <<
"Fill mapping, Collection size = " <<
col->size() << std::endl;
186 for (
unsigned int i = 0;
i <
col->size(); ++
i) {
194 for (
unsigned int ij = 0; ij < towerMap[
index].size(); ++ij)
201 int ncryst = towerMap[
index][stripnr - 1].first;
204 <<
"! Too many xtals for TT " << coarser <<
" stripnr " << stripnr <<
" xtalid " <<
samples.id();
213 <<
"[EcalTrigPrimFunctionalAlgo] (found " <<
col->size() <<
" frames in " << towerMap.size()
214 <<
" towers) " << std::endl;
217 std::cout <<
"FillMap - FillMap Collection size=0 !!!!" << std::endl;
229 vec1[
i] = std::pair<
int, std::vector<T> >(0,
vec0);
std::vector< std::vector< std::pair< int, std::vector< EEDataFrame > > > > towerMapEE_
calculates .... for Fenix strip, barrel input: 18 bits output: 18 bits
EcalEBFenixLinearizer * getLinearizer(int i) const
std::vector< EcalEBTriggerPrimitiveSample > towtp2_
const CaloGeometry * theGeometry_
static const unsigned int nrSamples_
void fillMap(Coll const *col, std::vector< std::vector< std::pair< int, std::vector< typename Coll::Digi > > > > &towerMap)
std::vector< int > format_out_
static const unsigned int maxNrSamplesOut_
Linearisation for Fenix strip input: 16 bits corresponding to input EBDataFrame output: 18 bits...
EcalEBFenixPeakFinder * getPeakFinder() const
virtual ~EcalEBTrigPrimTestAlgo()
const EcalTPGSlidingWindow * ecaltpgSlidW_
Log< level::Error, false > LogError
std::vector< std::vector< int > > striptp_
const EcalTPGSpike * ecaltpgSpike_
EcalEBFenixTcpFormat * getFormatter() const
EcalTrigTowerDetId towerOf(const DetId &id) const
Get the tower id for this det id (or null if not known)
const EcalTPGCrystalStatus * ecaltpgBadX_
EcalEBFenixAmplitudeFilter * amplitude_filter_
EcalEBFenixPeakFinder * peak_finder_
U second(std::pair< T, U > const &p)
const EcalTPGLinearizationConst * ecaltpLin_
std::vector< int > fgvb_out_
std::vector< std::pair< int, EcalTrigTowerDetId > > hitTowers_
std::vector< double > vec1
EcalEBFenixAmplitudeFilter * getFilter() const
const EcalTrigTowerConstituentsMap * eTTmap_
std::vector< std::vector< std::pair< int, std::vector< EBDataFrame > > > > towerMapEB_
void initStructures(std::vector< std::vector< std::pair< int, std::vector< T > > > > &towMap)
const EcalTPGWeightGroup * ecaltpgWeightGroup_
const EcalTPGTowerStatus * ecaltpgBadTT_
EcalEBFenixStripFormatEB * fenixFormatterEB_
EcalEBFenixStripFormatEB * getFormatterEB() const
calculates the peak for Fenix strip, barrel input : 18 bits output: boolean
int getIndex(const EEDigiCollection *, EcalTrigTowerDetId &id)
int getIndex(const EBDigiCollection *, EcalTrigTowerDetId &id)
static const unsigned int maxNrTowers_
std::vector< int > fgvb_out_temp_
void setPointers(const EcalTPGLinearizationConst *ecaltpLin, const EcalTPGPedestals *ecaltpPed, const EcalTPGCrystalStatus *ecaltpgBadX, const EcalTPGWeightIdMap *ecaltpgWeightMap, const EcalTPGWeightGroup *ecaltpgWeightGroup, const EcalTPGSlidingWindow *ecaltpgSlidW, const EcalTPGLutGroup *ecaltpgLutGroup, const EcalTPGLutIdMap *ecaltpgLut, const EcalTPGTowerStatus *ecaltpgBadTT, const EcalTPGSpike *ecaltpgSpike)
std::vector< int > tcpformat_out_
int findStripNr(const EBDetId &id)
const EcalElectronicsMapping * theMapping_
std::vector< int > filt_out_
void run(const EBDigiCollection *col, EcalEBTrigPrimDigiCollection &result, EcalEBTrigPrimDigiCollection &resultTcp)
EcalEBFenixTcpFormat * fenixTcpFormat_
void clean(std::vector< std::vector< std::pair< int, std::vector< T > > > > &towerMap)
std::vector< EcalEBFenixLinearizer * > linearizer_
EcalEBTrigPrimTestAlgo(const EcalTrigTowerConstituentsMap *eTTmap, const CaloGeometry *theGeometry, int nSamples, int binofmax, bool tcpFormat, bool debug, bool famos)
const EcalTPGPedestals * ecaltpPed_
const EcalTPGLutIdMap * ecaltpgLut_
const EcalTPGLutGroup * ecaltpgLutGroup_
static EcalTrigTowerDetId barrelTowerOf(const DetId &id)
std::vector< std::vector< int > > lin_out_
std::vector< EcalEBTriggerPrimitiveSample > towtp_
std::vector< int > peak_out_
const EcalTPGWeightIdMap * ecaltpgWeightMap_