Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
#ifndef HTrackAssociator_HEcalDetIdAssociator_h
#define HTrackAssociator_HEcalDetIdAssociator_h 1
// -*- C++ -*-
//
// Package:    HTrackAssociator
// Class:      HEcalDetIdAssociator
//
/*

 Description: <one line class summary>

 Implementation:
     <Notes on implementation>
*/
//
// Original Author:  Dmytro Kovalskyi
// Modified for ECAL+HCAL by Michal Szleper
//

#include "Calibration/Tools/interface/CaloDetIdAssociator.h"

class HEcalDetIdAssociator : public HCaloDetIdAssociator {
public:
  HEcalDetIdAssociator() : HCaloDetIdAssociator(180, 150, 0.04){};

protected:
  std::set<DetId> getASetOfValidDetIds() override {
    std::set<DetId> setOfValidIds;
    const std::vector<DetId>& vectOfValidIds = geometry_->getValidDetIds(DetId::Ecal, 1);  //EB
    for (std::vector<DetId>::const_iterator it = vectOfValidIds.begin(); it != vectOfValidIds.end(); ++it)
      setOfValidIds.insert(*it);

    //      vectOfValidIds.clear();
    const std::vector<DetId>& vectOfValidIdsEE = geometry_->getValidDetIds(DetId::Ecal, 2);  //EE
    for (std::vector<DetId>::const_iterator it = vectOfValidIdsEE.begin(); it != vectOfValidIdsEE.end(); ++it)
      setOfValidIds.insert(*it);

    return setOfValidIds;
  }
};
#endif