diff --git a/DataFormats/L1Trigger/interface/EGamma.h b/DataFormats/L1Trigger/interface/EGamma.h
index 5eb13568ccfd0..562cbb396cae6 100644
--- a/DataFormats/L1Trigger/interface/EGamma.h
+++ b/DataFormats/L1Trigger/interface/EGamma.h
@@ -24,8 +24,6 @@ namespace l1t {
int phi=0,
int qual=0,
int iso=0);
- EGamma(const L1Candidate& rhs):L1Candidate(rhs){} //this is okay given that EGamma currently has no additional data members
- //but need to add a check for rhs being an EGamma if this changes
EGamma( const PolarLorentzVector& p4,
int pt=0,
@@ -36,13 +34,33 @@ namespace l1t {
~EGamma();
+ void setTowerIEta(short int ieta); // ieta of seed tower
+ void setTowerIPhi(short int iphi); // iphi of seed tower
+ void setRawEt(short int pt); // raw (uncalibrated) cluster sum
+ void setIsoEt(short int iso); // raw isolation sum - cluster sum
+ void setFootprintEt(short int fp); // raw footprint
+ void setNTT(short int ntt); // n towers above threshold
+ void setShape(short int s); // cluster shape variable
+
+ short int towerIEta();
+ short int towerIPhi();
+ short int rawEt();
+ short int isoEt();
+ short int footprintEt();
+ short int nTT();
+ short int shape();
private:
- // additional hardware quantities common to L1 global jet
- // there are currently none
-
-
+ // additional hardware quantities common to L1 global EG
+ void clear_extended();
+ short int towerIEta_;
+ short int towerIPhi_;
+ short int rawEt_;
+ short int isoEt_;
+ short int footprintEt_;
+ short int nTT_;
+ short int shape_;
};
diff --git a/DataFormats/L1Trigger/interface/Jet.h b/DataFormats/L1Trigger/interface/Jet.h
index b627d362db86f..37c7edc510a56 100644
--- a/DataFormats/L1Trigger/interface/Jet.h
+++ b/DataFormats/L1Trigger/interface/Jet.h
@@ -28,13 +28,33 @@ namespace l1t {
int phi=0,
int qual=0);
-
~Jet();
+
+ void setTowerIEta(short int ieta); // ieta of seed tower
+ void setTowerIPhi(short int iphi); // iphi of seed tower
+ void setRawEt(short int et); // raw (uncalibrated) cluster sum
+ void setSeedEt(short int et);
+ void setPUEt(short int et);
+ void setPUDonutEt(int i, short int et);
+
+ short int towerIEta();
+ short int towerIPhi();
+ short int rawEt();
+ short int seedEt();
+ short int puEt();
+ short int puDonutEt(int i);
+
private:
// additional hardware quantities common to L1 global jet
- // there are currently none
+ void clear_extended();
+ short int towerIEta_;
+ short int towerIPhi_;
+ short int rawEt_;
+ short int seedEt_;
+ short int puEt_;
+ short int puDonutEt_[4];
};
diff --git a/DataFormats/L1Trigger/interface/Tau.h b/DataFormats/L1Trigger/interface/Tau.h
index 70879192ae568..f69919da1f382 100644
--- a/DataFormats/L1Trigger/interface/Tau.h
+++ b/DataFormats/L1Trigger/interface/Tau.h
@@ -33,11 +33,33 @@ namespace l1t {
~Tau();
- private:
+ void setTowerIEta(short int ieta); // ieta of seed tower
+ void setTowerIPhi(short int iphi); // iphi of seed tower
+ void setRawEt(short int et); // raw (uncalibrated) cluster sum
+ void setIsoEt(short int et); // raw isolation sum - cluster sum
+ void setNTT(short int ntt); // n towers above threshold
+ void setHasEM(bool hasEM);
+ void setIsMerged(bool isMerged);
+
+ short int towerIEta();
+ short int towerIPhi();
+ short int rawEt();
+ short int isoEt();
+ short int nTT();
+ bool hasEM();
+ bool isMerged();
- // additional hardware quantities common to L1 global jet
- // there are currently none
+ private:
+ // additional hardware quantities common to L1 global tau
+ void clear_extended();
+ short int towerIEta_;
+ short int towerIPhi_;
+ short int rawEt_;
+ short int isoEt_;
+ short int nTT_;
+ bool hasEM_;
+ bool isMerged_;
};
diff --git a/DataFormats/L1Trigger/src/EGamma.cc b/DataFormats/L1Trigger/src/EGamma.cc
index 9ff52dbbf63e3..b7333f7a5bae8 100644
--- a/DataFormats/L1Trigger/src/EGamma.cc
+++ b/DataFormats/L1Trigger/src/EGamma.cc
@@ -1,7 +1,18 @@
#include "DataFormats/L1Trigger/interface/EGamma.h"
+using namespace l1t;
-l1t::EGamma::EGamma( const LorentzVector& p4,
+void EGamma::clear_extended(){
+ towerIEta_ = 0;
+ towerIPhi_ = 0;
+ rawEt_ = 0;
+ isoEt_ = 0;
+ footprintEt_ = 0;
+ nTT_ = 0;
+ shape_ = 0;
+}
+
+EGamma::EGamma( const LorentzVector& p4,
int pt,
int eta,
int phi,
@@ -9,10 +20,10 @@ l1t::EGamma::EGamma( const LorentzVector& p4,
int iso )
: L1Candidate(p4, pt, eta, phi, qual, iso)
{
-
+ clear_extended();
}
-l1t::EGamma::EGamma( const PolarLorentzVector& p4,
+EGamma::EGamma( const PolarLorentzVector& p4,
int pt,
int eta,
int phi,
@@ -20,10 +31,66 @@ l1t::EGamma::EGamma( const PolarLorentzVector& p4,
int iso )
: L1Candidate(p4, pt, eta, phi, qual, iso)
{
-
+ clear_extended();
}
-l1t::EGamma::~EGamma()
+EGamma::~EGamma()
{
}
+
+void EGamma::setTowerIEta(short int ieta) {
+ towerIEta_ = ieta;
+}
+
+void EGamma::setTowerIPhi(short int iphi) {
+ towerIPhi_ = iphi;
+}
+
+void EGamma::setRawEt(short int et) {
+ rawEt_ = et;
+}
+
+void EGamma::setIsoEt(short int et) {
+ isoEt_ = et;
+}
+
+void EGamma::setFootprintEt(short int et) {
+ footprintEt_ = et;
+}
+
+void EGamma::setNTT(short int ntt) {
+ nTT_ = ntt;
+}
+
+void EGamma::setShape(short int s) {
+ shape_ = s;
+}
+
+short int EGamma::towerIEta() {
+ return towerIEta_;
+}
+
+short int EGamma::towerIPhi() {
+ return towerIPhi_;
+}
+
+short int EGamma::rawEt() {
+ return rawEt_;
+}
+
+short int EGamma::isoEt() {
+ return isoEt_;
+}
+
+short int EGamma::footprintEt() {
+ return footprintEt_;
+}
+
+short int EGamma::nTT() {
+ return nTT_;
+}
+
+short int EGamma::shape() {
+ return shape_;
+}
diff --git a/DataFormats/L1Trigger/src/Jet.cc b/DataFormats/L1Trigger/src/Jet.cc
index 2333e18aa3701..443f429086e19 100644
--- a/DataFormats/L1Trigger/src/Jet.cc
+++ b/DataFormats/L1Trigger/src/Jet.cc
@@ -1,27 +1,85 @@
-
#include "DataFormats/L1Trigger/interface/Jet.h"
+using namespace l1t;
+
+void Jet::clear_extended(){
+ towerIEta_ = 0;
+ towerIPhi_ = 0;
+ rawEt_ = 0;
+ seedEt_ = 0;
+ puEt_ = 0;
+ puDonutEt_[0] = puDonutEt_[1] = puDonutEt_[2] = puDonutEt_[3] = 0;
+}
-l1t::Jet::Jet( const LorentzVector& p4,
+Jet::Jet( const LorentzVector& p4,
int pt,
int eta,
int phi,
int qual )
: L1Candidate(p4, pt, eta, phi, qual, 0)
{
-
+ clear_extended();
}
-l1t::Jet::Jet( const PolarLorentzVector& p4,
+Jet::Jet( const PolarLorentzVector& p4,
int pt,
int eta,
int phi,
int qual )
: L1Candidate(p4, pt, eta, phi, qual, 0)
{
-
+ clear_extended();
}
-l1t::Jet::~Jet()
+Jet::~Jet()
{
}
+
+void Jet::setTowerIEta(short int ieta) {
+ towerIEta_ = ieta;
+}
+
+void Jet::setTowerIPhi(short int iphi) {
+ towerIPhi_ = iphi;
+}
+
+void Jet::setSeedEt(short int et) {
+ seedEt_ = et;
+}
+
+void Jet::setRawEt(short int et) {
+ rawEt_ = et;
+}
+
+void Jet::setPUEt(short int et) {
+ puEt_ = et;
+}
+
+void Jet::setPUDonutEt(int i, short int et) {
+ if (i>=0 && i<4) puDonutEt_[i] = et;
+}
+
+short int Jet::towerIEta() {
+ return towerIEta_;
+}
+
+short int Jet::towerIPhi() {
+ return towerIPhi_;
+}
+
+short int Jet::seedEt() {
+ return seedEt_;
+}
+
+short int Jet::rawEt() {
+ return rawEt_;
+}
+
+short int Jet::puEt() {
+ return puEt_;
+}
+
+short int Jet::puDonutEt(int i) {
+ if (i>=0 && i<4) return puDonutEt_[i];
+ else return 0;
+}
diff --git a/DataFormats/L1Trigger/src/Tau.cc b/DataFormats/L1Trigger/src/Tau.cc
index 945656e6e01b2..ddcba38a76e5f 100644
--- a/DataFormats/L1Trigger/src/Tau.cc
+++ b/DataFormats/L1Trigger/src/Tau.cc
@@ -1,7 +1,18 @@
#include "DataFormats/L1Trigger/interface/Tau.h"
+using namespace l1t;
-l1t::Tau::Tau( const LorentzVector& p4,
+void Tau::clear_extended(){
+ towerIEta_ = 0;
+ towerIPhi_ = 0;
+ rawEt_ = 0;
+ isoEt_ = 0;
+ nTT_ = 0;
+ hasEM_ = false;
+ isMerged_ = false;
+}
+
+Tau::Tau( const LorentzVector& p4,
int pt,
int eta,
int phi,
@@ -9,10 +20,10 @@ l1t::Tau::Tau( const LorentzVector& p4,
int iso )
: L1Candidate(p4, pt, eta, phi, qual,iso)
{
-
+ clear_extended();
}
-l1t::Tau::Tau( const PolarLorentzVector& p4,
+Tau::Tau( const PolarLorentzVector& p4,
int pt,
int eta,
int phi,
@@ -20,10 +31,67 @@ l1t::Tau::Tau( const PolarLorentzVector& p4,
int iso )
: L1Candidate(p4, pt, eta, phi, qual,iso)
{
-
+ clear_extended();
}
-l1t::Tau::~Tau()
+Tau::~Tau()
{
}
+
+void Tau::setTowerIEta(short int ieta) {
+ towerIEta_ = ieta;
+}
+
+void Tau::setTowerIPhi(short int iphi) {
+ towerIPhi_ = iphi;
+}
+
+void Tau::setRawEt(short int et) {
+ rawEt_ = et;
+}
+
+void Tau::setIsoEt(short int et) {
+ isoEt_ = et;
+}
+
+void Tau::setNTT(short int ntt) {
+ nTT_ = ntt;
+}
+
+void Tau::setHasEM(bool hasEM) {
+ hasEM_ = hasEM;
+}
+
+void Tau::setIsMerged(bool isMerged) {
+ isMerged_ = isMerged;
+}
+
+short int Tau::towerIEta() {
+ return towerIEta_;
+}
+
+short int Tau::towerIPhi() {
+ return towerIPhi_;
+}
+
+short int Tau::rawEt() {
+ return rawEt_;
+}
+
+short int Tau::isoEt() {
+ return isoEt_;
+}
+
+short int Tau::nTT() {
+ return nTT_;
+}
+
+bool Tau::hasEM() {
+ return hasEM_;
+}
+
+bool Tau::isMerged() {
+ return isMerged_;
+}
+
diff --git a/DataFormats/L1Trigger/src/classes_def.xml b/DataFormats/L1Trigger/src/classes_def.xml
index 6ed7e74fe029f..0cd874ec87207 100644
--- a/DataFormats/L1Trigger/src/classes_def.xml
+++ b/DataFormats/L1Trigger/src/classes_def.xml
@@ -13,7 +13,8 @@
-
+
+
@@ -28,7 +29,8 @@
-
+
+
@@ -57,7 +59,8 @@
-
+
+