StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StEtGridKey.h
1 // -*- mode: c++;-*-
2 // $Id: StEtGridKey.h,v 1.1 2008/04/29 00:11:09 tai Exp $
3 #ifndef STETGRIDKEY_H
4 #define STETGRIDKEY_H
5 
6 #include <ostream>
7 
8 class StEtGridKey {
9 
10 public:
11  StEtGridKey() : iEta(0), iPhi(0) {};
12  StEtGridKey(int ie, int ip) : iEta(ie), iPhi(ip) {};
13 
14  friend std::ostream& operator<<(std::ostream& os, const StEtGridKey& key)
15  {
16  return os << "iEta:\t" << key.iEta << "\tiPhi:\t" << key.iPhi;
17  }
18 
19  friend bool operator<(const StEtGridKey& lhs, const StEtGridKey& rhs){
20  if (lhs.iEta < rhs.iEta) return true;
21  else if (lhs.iEta > rhs.iEta) return false;
22  else return lhs.iPhi < rhs.iPhi;
23  }
24 
25  friend bool operator==(const StEtGridKey& lhs, const StEtGridKey& rhs){
26  return !( lhs < rhs ) && !( rhs < lhs);
27  }
28 
29  friend struct StEtGridKeyLessThan;
30 
31  int eta() const { return iEta; }
32  int phi() const { return iPhi; }
33 
34 private:
35  int iEta;
36  int iPhi;
37 };
38 
39 
40 #endif // STETGRIDKEY_H