#include <LCDtowerIDNonProj.hh>
Collaboration diagram for LCDtowerIDNonProj:

Public Member Functions | |
| LCDtowerIDNonProj () | |
| LCDtowerIDNonProj (int tag) | |
| ~LCDtowerIDNonProj () | |
| int | GetTag () const |
| void | SetTag (int tagVal) |
| int | GetTheta () const |
| ________________________________________________________________________________________________________________________________________________ | |
| void | SetTheta (int thetaVal) |
| _______________________________________________________________________ | |
| int | GetPhi () const |
| ________________________________________________________________________________________________________________________________________________ | |
| void | SetPhi (int phiVal) |
| _______________________________________________________________________________________________________________________________________________ | |
| int | GetLayer () const |
| ________________________________________________________________________ | |
| void | SetLayer (int layerVal) |
| ________________________________________________________________________________________________________________________________________________ | |
| int | GetSystem () const |
| ________________________________________________________________________________________________________________________________________________ | |
| void | SetSystem (int systemVal) |
| ________________________________________________________________________________________________________________________________________________ | |
| int | GetBarrelEndcap () const |
| ________________________________________________________________________________________________________________________________________________ | |
| void | SetBarrelEndcap (int barrelEndcapVal) |
| ________________________________________________________________________________________________________________________________________________ | |
| LCDtowerIDNonProj & | operator= (const LCDtowerIDNonProj &p) |
| LCDtowerIDNonProj & | operator= (const int &itag) |
Private Attributes | |
| int | m_tag |
|
|
Definition at line 17 of file LCDtowerIDNonProj.hh. References m_tag.
00017 : m_tag(0) {} |
|
|
Definition at line 19 of file LCDtowerIDNonProj.hh. References m_tag.
00019 : m_tag(tag) {} |
|
|
Definition at line 20 of file LCDtowerIDNonProj.hh.
00020 {}
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 115 of file LCDtowerIDNonProj.cc. References CAL_F_SYSTEM, and m_tag.
00115 {
00116 return ((m_tag >> CAL_F_SYSTEM) & 1);
00117 }
|
|
|
________________________________________________________________________
Definition at line 88 of file LCDtowerIDNonProj.cc. References CAL_F_LAYER, CAL_M_LAYER, and m_tag.
00088 {
00089 return ((m_tag >> CAL_F_LAYER) & CAL_M_LAYER);
00090 }
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 82 of file LCDtowerIDNonProj.cc. References CAL_F_PHI, CAL_M_PHI, and m_tag.
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 102 of file LCDtowerIDNonProj.cc. References CAL_F_SYSTEM, CAL_M_SYSTEM, and m_tag.
00102 {
00103 return ((m_tag >> CAL_F_SYSTEM) & CAL_M_SYSTEM);
00104 }
|
|
|
Definition at line 22 of file LCDtowerIDNonProj.hh. References m_tag.
00022 { return m_tag ; }
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 65 of file LCDtowerIDNonProj.cc. References CAL_F_THETA, CAL_M_THETA, and m_tag.
00065 {
00066 // This is easier to understand if one understands SetTheta() first
00067 static const int thetaMin = ~(CAL_M_THETA>>1);
00068 int nonNegative = (m_tag >> CAL_F_THETA) & CAL_M_THETA;
00069 return nonNegative + thetaMin;
00070 }
|
|
|
Definition at line 59 of file LCDtowerIDNonProj.hh. References m_tag.
00059 {
00060 m_tag = itag;
00061 return *this;
00062 }
|
|
|
Definition at line 54 of file LCDtowerIDNonProj.hh. References m_tag.
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 121 of file LCDtowerIDNonProj.cc. References CAL_F_SYSTEM, CAL_M_SYSTEM, and m_tag.
00121 {
00122 m_tag &= ~(CAL_M_SYSTEM << CAL_F_SYSTEM);
00123 m_tag |= tag << CAL_F_SYSTEM;
00124 }
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 94 of file LCDtowerIDNonProj.cc. References CAL_F_LAYER, CAL_M_LAYER, and m_tag.
00094 {
00095 assert((tag & ~CAL_M_LAYER) == 0);
00096 m_tag &= ~(CAL_M_LAYER << CAL_F_LAYER);
00097 m_tag |= tag << CAL_F_LAYER;
00098 }
|
|
|
_______________________________________________________________________________________________________________________________________________
Definition at line 74 of file LCDtowerIDNonProj.cc. References CAL_F_PHI, CAL_M_PHI, and m_tag.
|
|
|
________________________________________________________________________________________________________________________________________________
Definition at line 108 of file LCDtowerIDNonProj.cc. References CAL_F_SYSTEM, CAL_M_SYSTEM, and m_tag.
00108 {
00109 m_tag &= ~(CAL_M_SYSTEM << CAL_F_SYSTEM);
00110 m_tag |= tag << CAL_F_SYSTEM;
00111 }
|
|
|
Definition at line 23 of file LCDtowerIDNonProj.hh. References m_tag.
00023 { m_tag = tagVal; }
|
|
|
_______________________________________________________________________
Definition at line 48 of file LCDtowerIDNonProj.cc. References CAL_F_THETA, CAL_M_THETA, and m_tag.
00048 {
00049 // Theta may be negative: for N bits -> (N-1) significant bits + 1 sign bit
00050 static const int max = (CAL_M_THETA>>1);
00051 static const int min = ~max;
00052 int nonNegative = tag - min;
00053
00054 // make sure it is in right range
00055 assert( nonNegative >= 0 );
00056 assert( nonNegative <= max-min );
00057
00058 // store it
00059 m_tag &= ~(CAL_M_THETA << CAL_F_THETA);
00060 m_tag |= nonNegative << CAL_F_THETA;
00061 }
|
|
|
Definition at line 51 of file LCDtowerIDNonProj.hh. Referenced by GetBarrelEndcap(), GetLayer(), GetPhi(), GetSystem(), GetTag(), GetTheta(), LCDtowerIDNonProj(), operator=(), SetBarrelEndcap(), SetLayer(), SetPhi(), SetSystem(), SetTag(), and SetTheta(). |
1.3.4