#include <UgliScintMdlHandle.h>
Inheritance diagram for UgliScintMdlHandle:

Public Member Functions | |
| UgliScintMdlHandle (UgliScintMdlNode *mdlNode) | |
| UgliScintMdlHandle (GeoScintMdlNode *mdlNode) | |
| UgliScintMdlHandle (const UgliScintMdlHandle &that) | |
| UgliScintMdlHandle & | operator= (const UgliScintMdlHandle &that) |
| UgliScintMdlHandle () | |
| virtual | ~UgliScintMdlHandle () |
| virtual Bool_t | IsGeo () const |
| virtual Bool_t | IsValid () const |
| virtual Bool_t | IsFrozen () const |
| virtual PlexScintMdlId | GetPlexScintMdlId () const |
| virtual PlexPlaneId | GetPlexPlaneId () const |
| virtual Int_t | GetModuleNum () const |
| virtual Int_t | NumberOfStrips () const |
| virtual Float_t | GetClearFiber (const StripEnd::StripEnd_t end) const |
| virtual Float_t | GetExtraWlsFiber (const StripEnd::StripEnd_t end) const |
| UgliScintPlnHandle | GetScintPlnHandle () const |
| virtual TVector3 | GlobalToLocal (const TVector3 &global, const Bool_t globalInXYZ=true) const |
| virtual TVector3 | LocalToGlobal (const TVector3 &local, const Bool_t globalInXYZ=true) const |
| Float_t | GetZRotRelPlnRad () const |
| Float_t | GetLPosRelPln () const |
| Float_t | GetTPosRelPln () const |
| Bool_t | AttemptSet (const char *what="?") const |
| void | SetZRotRelPlnRad (Float_t radians) |
| void | SetLTPosRelPln (Float_t lpos, Float_t tpos) |
| void | RotateRelPlnBy (Float_t deltaRadians) |
| void | ShiftLTPosRelPlnBy (Float_t dlpos, Float_t dtpos) |
Protected Attributes | |
| UgliScintMdlNode * | fUgliScintMdlNode |
| GeoScintMdlNode * | fGeoScintMdlNode |
|
|
Definition at line 44 of file UgliScintMdlHandle.cxx. References fUgliScintMdlNode, and UgliScintMdlNode::IncrementRef(). 00045 : fUgliScintMdlNode(node),fGeoScintMdlNode(0) 00046 { 00047 // ctor keeps reference count up-to-date 00048 00049 if (fUgliScintMdlNode) fUgliScintMdlNode->IncrementRef(); 00050 }
|
|
|
Definition at line 53 of file UgliScintMdlHandle.cxx. References fGeoScintMdlNode, and GeoNode::IncrementRef(). 00054 : fUgliScintMdlNode(0),fGeoScintMdlNode(node) 00055 { 00056 // ctor keeps reference count up-to-date 00057 00058 if (fGeoScintMdlNode) fGeoScintMdlNode->IncrementRef(); 00059 }
|
|
|
Definition at line 63 of file UgliScintMdlHandle.cxx. References fGeoScintMdlNode, fUgliScintMdlNode, GeoNode::IncrementRef(), and UgliScintMdlNode::IncrementRef(). 00064 : UgliScintMdlABC(), 00065 fUgliScintMdlNode(that.fUgliScintMdlNode), 00066 fGeoScintMdlNode(that.fGeoScintMdlNode) 00067 { 00068 // copy constructor keeps reference counts up-to-date 00069 00070 if (fUgliScintMdlNode) fUgliScintMdlNode->IncrementRef(); 00071 if (fGeoScintMdlNode) fGeoScintMdlNode->IncrementRef(); 00072 }
|
|
|
Definition at line 25 of file UgliScintMdlHandle.cxx. References MSG. 00026 : fUgliScintMdlNode(0),fGeoScintMdlNode(0) 00027 { 00028 // Default constructor 00029 00030 MSG("Ugli",Msg::kFatal) << 00031 "UgliScintMdlHandle created by default ctor" << endl; 00032 // assert(0); 00033 }
|
|
|
Definition at line 36 of file UgliScintMdlHandle.cxx. References GeoNode::DecrementRef(), UgliScintMdlNode::DecrementRef(), fGeoScintMdlNode, and fUgliScintMdlNode. 00037 {
00038 // handle deletion updates reference count
00039 if (fUgliScintMdlNode) fUgliScintMdlNode->DecrementRef();
00040 if (fGeoScintMdlNode) fGeoScintMdlNode->DecrementRef();
00041 }
|
|
|
Definition at line 103 of file UgliScintMdlHandle.cxx. References GetPlexScintMdlId(), IsFrozen(), and MSG. Referenced by SetLTPosRelPln(), and SetZRotRelPlnRad(). 00104 {
00105 if (!IsFrozen()) return true;
00106
00107 MSG("Ugli",Msg::kError)
00108 << "AttemptSet " << what << " on Frozen "
00109 << GetPlexScintMdlId() << " twarted!" << endl;
00110 return false;
00111 }
|
|
|
Implements UgliScintMdlABC. Definition at line 113 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetClearFiber(), UgliScintMdlNode::GetClearFiber(), and IsGeo(). Referenced by GeoValidate::TestScintMdl_GetClearFiber(). 00114 { if ( !IsGeo() ) return fUgliScintMdlNode->GetClearFiber(end);
00115 else return (fGeoScintMdlNode ->GetClearFiber(end))*Munits::cm; }
|
|
|
Implements UgliScintMdlABC. Definition at line 117 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetExtraWlsFiber(), UgliScintMdlNode::GetExtraWlsFiber(), and IsGeo(). Referenced by GeoValidate::TestScintMdl_GetExtraWlsFiber(). 00118 { if ( !IsGeo() ) return fUgliScintMdlNode->GetExtraWlsFiber(end);
00119 else return (fGeoScintMdlNode->GetExtraWlsFiber(end))*Munits::cm;}
|
|
|
Definition at line 125 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetLPosRelPln(), UgliScintMdlNode::GetLPosRelPln(), and IsGeo(). Referenced by ShiftLTPosRelPlnBy(), and GeoValidate::TestScintMdl_GetLPosRelPln(). 00126 { if ( !IsGeo() ) return fUgliScintMdlNode->GetLPosRelPln();
00127 else return (fGeoScintMdlNode ->GetLPosRelPln())*Munits::cm; }
|
|
|
Implements UgliScintMdlABC. Definition at line 105 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetModuleNum(), UgliScintMdlNode::GetModuleNum(), and IsGeo(). Referenced by StraightTrackAlignment::ApplyTrack(), and GeoValidate::TestScintMdl_GetModuleNum(). 00106 { if ( !IsGeo() ) return fUgliScintMdlNode->GetModuleNum();
00107 else return fGeoScintMdlNode ->GetModuleNum(); }
|
|
|
Implements UgliScintMdlABC. Definition at line 101 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetPlexPlaneId(), UgliScintMdlNode::GetPlexPlaneId(), and IsGeo(). Referenced by StraightTrackAlignment::ApplyTrack(), and GeoValidate::TestScintMdl_GetPlexPlaneId(). 00102 { if ( !IsGeo() ) return fUgliScintMdlNode->GetPlexPlaneId();
00103 else return fGeoScintMdlNode ->GetPlexPlaneId(); }
|
|
|
|
Definition at line 95 of file UgliScintMdlHandle.cxx. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetScintPlnNode(), UgliScintMdlNode::GetScintPlnNode(), and IsGeo(). Referenced by GeoValidate::TestScintMdl_GetScintPlnHandle(). 00096 { if (!IsGeo())
00097 return UgliScintPlnHandle(fUgliScintMdlNode->GetScintPlnNode());
00098 else
00099 return UgliScintPlnHandle(fGeoScintMdlNode->GetScintPlnNode());
00100 }
|
|
|
Definition at line 129 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetTPosRelPln(), UgliScintMdlNode::GetTPosRelPln(), and IsGeo(). Referenced by ShiftLTPosRelPlnBy(), and GeoValidate::TestScintMdl_GetTPosRelPln(). 00130 { if ( !IsGeo() ) return fUgliScintMdlNode->GetTPosRelPln();
00131 else return (fGeoScintMdlNode ->GetTPosRelPln())*Munits::cm; }
|
|
|
Definition at line 121 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoScintMdlNode::GetZRotRelPlnRad(), UgliScintMdlNode::GetZRotRelPlnRad(), and IsGeo(). Referenced by RotateRelPlnBy(), and GeoValidate::TestScintMdl_GetZRotRelPlnRad(). 00122 { if ( !IsGeo() ) return fUgliScintMdlNode->GetZRotRelPlnRad();
00123 else return fGeoScintMdlNode ->GetZRotRelPlnRad(); }
|
|
||||||||||||
|
Definition at line 134 of file UgliScintMdlHandle.cxx. References fGeoScintMdlNode, fUgliScintMdlNode, DataUtil::GetDetector(), GetPlexScintMdlId(), GeoNode::GlobalToLocal(), UgliScintMdlNode::GlobalToLocal(), IsGeo(), and Ugli::uvz2xyz(). Referenced by GeoValidate::TestScintMdl_GlobalToLocal(). 00136 {
00137 // convert a global position into a local (volume) one
00138 // globalInXYZ determines whether result is in XYZ or UVZ
00139 TVector3 globalXYZ = (globalInXYZ) ?
00140 global : Ugli::uvz2xyz(GetPlexScintMdlId().GetDetector(),global);
00141
00142 if ( !IsGeo() )
00143 return fUgliScintMdlNode->GlobalToLocal(globalXYZ);
00144 else {
00145 TVector3 scaledglobal(globalXYZ); scaledglobal *= 1./Munits::cm;
00146 return (fGeoScintMdlNode->GlobalToLocal(scaledglobal) *= Munits::cm);
00147 }
00148 }
|
|
|
Definition at line 93 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, GeoNode::GetGeoGeometry(), UgliScintMdlNode::GetUgliGeometry(), GeoGeometry::IsFrozen(), UgliGeometry::IsFrozen(), and IsGeo(). Referenced by AttemptSet(). 00094 { if ( !IsGeo() ) return fUgliScintMdlNode->GetUgliGeometry()->IsFrozen();
00095 else return fGeoScintMdlNode ->GetGeoGeometry() ->IsFrozen(); }
|
|
|
Definition at line 39 of file UgliScintMdlHandle.h. References fGeoScintMdlNode. Referenced by GetClearFiber(), GetExtraWlsFiber(), GetLPosRelPln(), GetModuleNum(), GetPlexPlaneId(), GetPlexScintMdlId(), GetScintPlnHandle(), GetTPosRelPln(), GetZRotRelPlnRad(), GlobalToLocal(), IsFrozen(), IsValid(), LocalToGlobal(), NumberOfStrips(), SetLTPosRelPln(), and SetZRotRelPlnRad(). 00039 { return (fGeoScintMdlNode != 0); }
|
|
|
Definition at line 89 of file UgliScintMdlHandle.h. References IsGeo(). 00090 { if ( !IsGeo() ) return (fUgliScintMdlNode) ? kTRUE : kFALSE;
00091 else return (fGeoScintMdlNode) ? kTRUE : kFALSE; }
|
|
||||||||||||
|
Definition at line 151 of file UgliScintMdlHandle.cxx. References fGeoScintMdlNode, fUgliScintMdlNode, DataUtil::GetDetector(), GetPlexScintMdlId(), IsGeo(), GeoNode::LocalToGlobal(), UgliScintMdlNode::LocalToGlobal(), and Ugli::xyz2uvz(). Referenced by GeoValidate::TestScintMdl_GlobalToLocal(), and GeoValidate::TestScintMdl_LocalToGlobal(). 00153 {
00154 // convert a global position into a local (volume) one
00155 // globalInXYZ determines whether result is in XYZ or UVZ
00156 TVector3 globalXYZ;
00157 if ( !IsGeo() )
00158 globalXYZ = fUgliScintMdlNode->LocalToGlobal(local);
00159 else {
00160 TVector3 scaledlocal(local); scaledlocal *= 1./Munits::cm;
00161 globalXYZ = (fGeoScintMdlNode ->LocalToGlobal(scaledlocal) *= Munits::cm);
00162 }
00163
00164 if (globalInXYZ ) return globalXYZ;
00165 else return Ugli::xyz2uvz(GetPlexScintMdlId().GetDetector(),
00166 globalXYZ);
00167 }
|
|
|
Implements UgliScintMdlABC. Definition at line 109 of file UgliScintMdlHandle.h. References fGeoScintMdlNode, fUgliScintMdlNode, IsGeo(), GeoScintMdlNode::NumberOfStrips(), and UgliScintMdlNode::NumberOfStrips(). Referenced by GeoValidate::TestScintMdl_NumberOfStrips(). 00110 { if ( !IsGeo() ) return fUgliScintMdlNode->NumberOfStrips();
00111 else return fGeoScintMdlNode ->NumberOfStrips(); }
|
|
|
Definition at line 75 of file UgliScintMdlHandle.cxx. References GeoNode::DecrementRef(), UgliScintMdlNode::DecrementRef(), fGeoScintMdlNode, fUgliScintMdlNode, GeoNode::IncrementRef(), and UgliScintMdlNode::IncrementRef(). 00076 {
00077 // assignment keeps reference counts up-to-date
00078
00079 if (fUgliScintMdlNode) fUgliScintMdlNode->DecrementRef();
00080 if (fGeoScintMdlNode) fGeoScintMdlNode->DecrementRef();
00081
00082 fUgliScintMdlNode = that.fUgliScintMdlNode;
00083 fGeoScintMdlNode = that.fGeoScintMdlNode;
00084
00085 if (fUgliScintMdlNode) fUgliScintMdlNode->IncrementRef();
00086 if (fGeoScintMdlNode) fGeoScintMdlNode->IncrementRef();
00087
00088 return *this;
00089 }
|
|
|
Definition at line 133 of file UgliScintMdlHandle.h. References GetZRotRelPlnRad(), and SetZRotRelPlnRad(). 00134 { SetZRotRelPlnRad(GetZRotRelPlnRad()+deltaRadians); }
|
|
||||||||||||
|
Definition at line 121 of file UgliScintMdlHandle.cxx. References AttemptSet(), fGeoScintMdlNode, fUgliScintMdlNode, IsGeo(), GeoScintMdlNode::SetLTPosRelPln(), and UgliScintMdlNode::SetLTPosRelPln(). Referenced by ShiftLTPosRelPlnBy(). 00122 {
00123 if (!AttemptSet("LTPosRelPln")) return;
00124 if (!IsGeo())fUgliScintMdlNode->SetLTPosRelPln(lpos,tpos);
00125 else {
00126 lpos *= 1./Munits::cm;
00127 tpos *= 1./Munits::cm;
00128 fGeoScintMdlNode->SetLTPosRelPln(lpos,tpos);
00129 }
00130
00131 }
|
|
|
Definition at line 113 of file UgliScintMdlHandle.cxx. References AttemptSet(), fGeoScintMdlNode, fUgliScintMdlNode, IsGeo(), GeoScintMdlNode::SetZRotRelPlnRad(), and UgliScintMdlNode::SetZRotRelPlnRad(). Referenced by RotateRelPlnBy(). 00114 {
00115 if (!AttemptSet("ZRotRelPlnRad")) return;
00116 if (!IsGeo())fUgliScintMdlNode->SetZRotRelPlnRad(radians);
00117 else fGeoScintMdlNode->SetZRotRelPlnRad(radians);
00118
00119 }
|
|
||||||||||||
|
Definition at line 136 of file UgliScintMdlHandle.h. References GetLPosRelPln(), GetTPosRelPln(), and SetLTPosRelPln(). 00137 { SetLTPosRelPln(GetLPosRelPln()+dlpos,GetTPosRelPln()+dtpos); }
|
|
|
Definition at line 76 of file UgliScintMdlHandle.h. Referenced by GetClearFiber(), GetExtraWlsFiber(), GetLPosRelPln(), GetModuleNum(), GetPlexPlaneId(), GetPlexScintMdlId(), GetScintPlnHandle(), GetTPosRelPln(), GetZRotRelPlnRad(), GlobalToLocal(), IsFrozen(), IsGeo(), LocalToGlobal(), NumberOfStrips(), operator=(), SetLTPosRelPln(), SetZRotRelPlnRad(), UgliScintMdlHandle(), and ~UgliScintMdlHandle(). |
|
|
Definition at line 75 of file UgliScintMdlHandle.h. Referenced by GetClearFiber(), GetExtraWlsFiber(), GetLPosRelPln(), GetModuleNum(), GetPlexPlaneId(), GetPlexScintMdlId(), GetScintPlnHandle(), GetTPosRelPln(), GetZRotRelPlnRad(), GlobalToLocal(), IsFrozen(), LocalToGlobal(), NumberOfStrips(), operator=(), SetLTPosRelPln(), SetZRotRelPlnRad(), UgliScintMdlHandle(), and ~UgliScintMdlHandle(). |
1.3.9.1