CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
CastorDbASCIIIO::DetIdLess Class Reference

Public Member Functions

bool operator() (DetId fFirst, DetId fSecond) const
 

Detailed Description

Definition at line 17 of file CastorDbASCIIIO.cc.

Member Function Documentation

bool CastorDbASCIIIO::DetIdLess::operator() ( DetId  fFirst,
DetId  fSecond 
) const
inline

Definition at line 19 of file CastorDbASCIIIO.cc.

References HcalDetId::depth(), python.connectstrParser::f1, plotBeamSpotDB::first, HcalGenericDetId::genericSubdet(), HcalDetId::ietaAbs(), HcalDetId::iphi(), HcalGenericDetId::isHcalDetId(), DetId::rawId(), edm::second(), and HcalDetId::zside().

19  {
20  HcalGenericDetId first (fFirst);
21  HcalGenericDetId second (fSecond);
22  if (first.genericSubdet () != second.genericSubdet ()) return first.genericSubdet () < second.genericSubdet ();
23  if (first.isHcalDetId ()) {
24  HcalDetId f1 (first);
25  HcalDetId s1 (second);
26  return f1.zside () != s1.zside () ? f1.zside () < s1.zside () :
27  f1.iphi () != s1.iphi () ? f1.iphi () < s1.iphi () :
28  f1.ietaAbs () != s1.ietaAbs () ? f1.ietaAbs () < s1.ietaAbs () :
29  f1.depth () < s1.depth ();
30  }
31  else {
32  return first.rawId() < second.rawId();
33  }
34  }
U second(std::pair< T, U > const &p)