CMS 3D CMS Logo

Public Member Functions | Private Attributes

JetMETDQMDCSFilter Class Reference

#include <JetMETDQMDCSFilter.h>

List of all members.

Public Member Functions

bool filter (const edm::Event &evt, const edm::EventSetup &es)
 JetMETDQMDCSFilter (const edm::ParameterSet &)
 ~JetMETDQMDCSFilter ()

Private Attributes

bool detectorOn_
std::string detectorTypes_
bool filter_
bool verbose_

Detailed Description

Definition at line 11 of file JetMETDQMDCSFilter.h.


Constructor & Destructor Documentation

JetMETDQMDCSFilter::JetMETDQMDCSFilter ( const edm::ParameterSet pset)

Definition at line 15 of file JetMETDQMDCSFilter.cc.

References gather_cfg::cout, detectorOn_, detectorTypes_, funct::false, filter_, edm::ParameterSet::getUntrackedParameter(), funct::true, and verbose_.

                                                                     {
   verbose_       = pset.getUntrackedParameter<bool>( "DebugOn", false );
   detectorTypes_ = pset.getUntrackedParameter<std::string>( "DetectorTypes", "ecal:hcal");
   filter_        = pset.getUntrackedParameter<bool>( "Filter", true );
   detectorOn_    = false;
   if (verbose_) std::cout << "JetMETDQMDCSFilter constructor: " << detectorTypes_ << std::endl;
}
JetMETDQMDCSFilter::~JetMETDQMDCSFilter ( )

Definition at line 25 of file JetMETDQMDCSFilter.cc.

References gather_cfg::cout, and verbose_.

                                        {
   if (verbose_) std::cout << "JetMETDQMDCSFilter destructor: " << std::endl;
}

Member Function Documentation

bool JetMETDQMDCSFilter::filter ( const edm::Event evt,
const edm::EventSetup es 
)

Definition at line 29 of file JetMETDQMDCSFilter.cc.

References DcsStatus::BPIX, gather_cfg::cout, DcsStatus::CSCm, DcsStatus::CSCp, detectorOn_, detectorTypes_, DcsStatus::DT0, DcsStatus::DTm, DcsStatus::DTp, DcsStatus::EBm, DcsStatus::EBp, DcsStatus::EEm, DcsStatus::EEp, DcsStatus::ESm, DcsStatus::ESp, filter_, DcsStatus::FPIX, edm::Event::getByLabel(), DcsStatus::HBHEa, DcsStatus::HBHEb, DcsStatus::HBHEc, DcsStatus::HF, DcsStatus::HO, edm::EventBase::isRealData(), edm::HandleBase::isValid(), DcsStatus::RPC, DcsStatus::TECm, DcsStatus::TECp, DcsStatus::TIBTID, DcsStatus::TOB, and verbose_.

                                                                              {
  
  detectorOn_ = true;

  if (!evt.isRealData()) return detectorOn_;
  if (!filter_) return detectorOn_;

  edm::Handle<DcsStatusCollection> dcsStatus;
  evt.getByLabel("scalersRawToDigi", dcsStatus);

  if (dcsStatus.isValid() && dcsStatus->size() != 0) {

  if (detectorTypes_.find("pixel") !=std::string::npos) {
      if ((*dcsStatus)[0].ready(DcsStatus::BPIX) && 
          (*dcsStatus)[0].ready(DcsStatus::FPIX)) {
        if (verbose_) std::cout << "pixel on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("sistrip") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::TIBTID) &&
          (*dcsStatus)[0].ready(DcsStatus::TOB) &&   
          (*dcsStatus)[0].ready(DcsStatus::TECp) &&  
          (*dcsStatus)[0].ready(DcsStatus::TECm)) {
        if (verbose_) std::cout << "sistrip on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("ecal") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::EBp) &&
          (*dcsStatus)[0].ready(DcsStatus::EBm) &&   
          (*dcsStatus)[0].ready(DcsStatus::EEp) &&  
          (*dcsStatus)[0].ready(DcsStatus::EEm)) {
        if (verbose_) std::cout << "ecal on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("hbhe") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::HBHEa) &&
          (*dcsStatus)[0].ready(DcsStatus::HBHEb) &&   
          (*dcsStatus)[0].ready(DcsStatus::HBHEc)){
        if (verbose_) std::cout << "hbhe on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("hf") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::HF)){
        if (verbose_) std::cout << "hf on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("ho") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::HO)){
        if (verbose_) std::cout << "ho on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("es") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::ESp) &&
          (*dcsStatus)[0].ready(DcsStatus::ESm)) {
        if (verbose_) std::cout << "es on" << std::endl;
      } else detectorOn_ = false;
    }

    if (detectorTypes_.find("muon") !=std::string::npos){  
      if ((*dcsStatus)[0].ready(DcsStatus::RPC)  &&
          (*dcsStatus)[0].ready(DcsStatus::DT0)  &&   
          (*dcsStatus)[0].ready(DcsStatus::DTp)  &&  
          (*dcsStatus)[0].ready(DcsStatus::DTm)  &&
          (*dcsStatus)[0].ready(DcsStatus::CSCp) &&  
          (*dcsStatus)[0].ready(DcsStatus::CSCm)) {
        if (verbose_) std::cout << "muon on" << std::endl;
      } else detectorOn_ = false;
    }    

  }

  return detectorOn_;

}

Member Data Documentation

Definition at line 21 of file JetMETDQMDCSFilter.h.

Referenced by filter(), and JetMETDQMDCSFilter().

std::string JetMETDQMDCSFilter::detectorTypes_ [private]

Definition at line 22 of file JetMETDQMDCSFilter.h.

Referenced by filter(), and JetMETDQMDCSFilter().

Definition at line 20 of file JetMETDQMDCSFilter.h.

Referenced by filter(), and JetMETDQMDCSFilter().

Definition at line 19 of file JetMETDQMDCSFilter.h.

Referenced by filter(), JetMETDQMDCSFilter(), and ~JetMETDQMDCSFilter().