CMS 3D CMS Logo

EESrFlag.h
Go to the documentation of this file.
1 // -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: t; tab-width: 8; -*-
2 
3 #ifndef EESRFLAG_H
4 #define EESRFLAG_H
5 
9 
13 class EESrFlag : public EcalSrFlag {
14 public:
15 public:
16  typedef EcalScDetId key_type; //key for edm::SortedCollection
17 
18 public:
21  EESrFlag(){};
22 
27  EESrFlag(const EcalScDetId& sc, const int& flag) : scId_(sc) {
28  //SRP flag is coded on 3 bits:
29  if (flag < 0 || flag > 0x7)
30  throw cms::Exception("InvalidValue", "srp flag greater than 0x7 or negative.");
31  flag_ = (unsigned char)flag;
32  }
33 
37  const EcalScDetId& id() const override { return scId_; }
38 
39 private:
43 };
44 
45 std::ostream& operator<<(std::ostream& s, const EESrFlag& digi);
46 
47 #endif //EESRFLAG_H not defined
unsigned char flag_
Definition: EcalSrFlag.h:70
const EcalScDetId & id() const override
Definition: EESrFlag.h:37
EESrFlag(const EcalScDetId &sc, const int &flag)
Definition: EESrFlag.h:27
std::ostream & operator<<(std::ostream &s, const EESrFlag &digi)
Definition: EESrFlag.cc:5
EcalScDetId key_type
Definition: EESrFlag.h:16
EcalScDetId scId_
Definition: EESrFlag.h:42
EESrFlag()
Definition: EESrFlag.h:21