diff --git a/DataFormats/GEMDigi/interface/GEMOHStatus.h b/DataFormats/GEMDigi/interface/GEMOHStatus.h
index 3d01a2ad34047..3aa3e5d85255d 100644
--- a/DataFormats/GEMDigi/interface/GEMOHStatus.h
+++ b/DataFormats/GEMDigi/interface/GEMOHStatus.h
@@ -36,7 +36,7 @@ class GEMOHStatus {
};
GEMOHStatus() {}
- GEMOHStatus(const GEMOptoHybrid& oh) {
+ GEMOHStatus(const GEMOptoHybrid& oh, int chamberType) : chamberType_(chamberType) {
Errors error{0};
error.EvtF = oh.evtF();
error.InF = oh.inF();
@@ -77,8 +77,10 @@ class GEMOHStatus {
uint32_t vfatMask() const { return vfatMask_; }
uint32_t zsMask() const { return zsMask_; }
uint32_t existVFATs() const { return existVFATs_; }
+ int chamberType() const { return chamberType_; }
private:
+ int chamberType_;
uint16_t errors_;
uint8_t warnings_;
uint32_t missingVFATs_;
diff --git a/DataFormats/GEMDigi/interface/GEMVFATStatus.h b/DataFormats/GEMDigi/interface/GEMVFATStatus.h
index 7cc28e7c10cfd..96240166417e7 100644
--- a/DataFormats/GEMDigi/interface/GEMVFATStatus.h
+++ b/DataFormats/GEMDigi/interface/GEMVFATStatus.h
@@ -28,7 +28,7 @@ class GEMVFATStatus {
};
GEMVFATStatus() {}
- GEMVFATStatus(const GEMAMC& amc, const GEMOptoHybrid& oh, const GEMVFAT& vfat, bool readMultiBX) {
+ GEMVFATStatus(const GEMAMC& amc, const GEMOptoHybrid& oh, const GEMVFAT& vfat, int chamberType, bool readMultiBX) : chamberType_(chamberType){
Errors error{0};
Warnings warn{0};
@@ -64,8 +64,10 @@ class GEMVFATStatus {
bool isBad() const { return errors_ != 0; }
uint8_t errors() const { return errors_; }
uint8_t warnings() const { return warnings_; }
+ int chamberType() const { return chamberType_; }
private:
+ int chamberType_;
uint16_t vfatPosition_;
uint8_t errors_;
uint8_t warnings_;
diff --git a/DataFormats/GEMDigi/src/classes_def.xml b/DataFormats/GEMDigi/src/classes_def.xml
index 97e2d0c97de60..933da64f447f3 100644
--- a/DataFormats/GEMDigi/src/classes_def.xml
+++ b/DataFormats/GEMDigi/src/classes_def.xml
@@ -61,9 +61,10 @@
-
+
+
@@ -71,9 +72,10 @@
-
+
+
diff --git a/EventFilter/GEMRawToDigi/plugins/GEMRawToDigiModule.cc b/EventFilter/GEMRawToDigi/plugins/GEMRawToDigiModule.cc
index b3e403d105886..085db82b65c08 100644
--- a/EventFilter/GEMRawToDigi/plugins/GEMRawToDigiModule.cc
+++ b/EventFilter/GEMRawToDigi/plugins/GEMRawToDigiModule.cc
@@ -172,7 +172,7 @@ void GEMRawToDigiModule::produce(edm::StreamID iID, edm::Event& iEvent, edm::Eve
GEMDetId cId(geb_dc.detId);
int chamberType = geb_dc.chamberType;
- GEMOHStatus st_oh(optoHybrid);
+ GEMOHStatus st_oh(optoHybrid, chamberType);
if (st_oh.isBad()) {
LogDebug("GEMRawToDigiModule") << st_oh;
if (keepDAQStatus_) {
@@ -195,7 +195,7 @@ void GEMRawToDigiModule::produce(edm::StreamID iID, edm::Event& iEvent, edm::Eve
continue;
}
- GEMVFATStatus st_vfat(amc, optoHybrid, vfat, readMultiBX_);
+ GEMVFATStatus st_vfat(amc, optoHybrid, vfat, chamberType, readMultiBX_);
if (st_vfat.isBad()) {
LogDebug("GEMRawToDigiModule") << st_vfat;
if (keepDAQStatus_) {