CGEM BOSS 6.6.5.i
BESIII Offline Software System
|
#include <MdcGeomSvc.h>
Classes | |
struct | AdjCandiTgtLine2D |
forms a line in x-y space, ax + by + c = 0 More... | |
Public Member Functions | |
MdcGeomSvc (const std::string &name, ISvcLocator *svcloc) | |
~MdcGeomSvc () | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvUnknown) |
virtual StatusCode | initialize () |
virtual StatusCode | finalize () |
void | handle (const Incident &inc) |
this handle function is prepared for special use | |
const MdcGeoWire *const | Wire (unsigned id) |
const MdcGeoWire *const | Wire (unsigned lyrid, unsigned wirid) |
const MdcGeoLayer *const | Layer (unsigned id) |
const MdcGeoSuper *const | SuperLayer (unsigned id) |
const MdcGeoGeneral *const | GeneralLayer (unsigned id) |
const MdcGeoMisc *const | Misc (void) |
const MdcGeoEnd *const | End (unsigned id) |
const int | getWireSize () |
const int | getLayerSize () |
const int | getSuperLayerSize () |
const int | getGeneralLayerSize () |
const int | getSegmentNo () |
void | Dump () |
MdcGeomSvc (const std::string &name, ISvcLocator *svcloc) | |
~MdcGeomSvc () | |
virtual StatusCode | queryInterface (const InterfaceID &riid, void **ppvUnknown) |
virtual StatusCode | initialize () |
virtual StatusCode | finalize () |
void | handle (const Incident &inc) |
const MdcGeoWire *const | Wire (unsigned id) |
const MdcGeoWire *const | Wire (unsigned lyrid, unsigned wirid) |
const MdcGeoLayer *const | Layer (unsigned id) |
const MdcGeoSuper *const | SuperLayer (unsigned id) |
const MdcGeoGeneral *const | GeneralLayer (unsigned id) |
const MdcGeoMisc *const | Misc (void) |
const MdcGeoEnd *const | End (unsigned id) |
const int | getWireSize () |
const int | getLayerSize () |
const int | getSuperLayerSize () |
const int | getGeneralLayerSize () |
const int | getSegmentNo () |
void | Dump () |
vector< HepPoint3D > | getAdjacentIntersectionShape (const MdcGeoWire *wireA, const MdcGeoWire *wireB) |
get touching shape of 2 adjacent layer wires. return vertexs of intersection shape if the wires' sensitive area connects. return empty if not. points does go in order | |
vector< double > | getAdjacentIntersectionBounds (const MdcGeoWire *wireA, const MdcGeoWire *wireB) |
get bounding box in \varphi and z of touching shape of 2 adjacent layer wires. | |
HepPoint3D | getAdjacentIntersectionPointFast (const MdcGeoWire *wireA, const MdcGeoWire *wireB) |
find the z where points on wireA, wireB has same phi. point is given as avg(A(z),B(z)) | |
HepPoint3D | getAdjacentIntersectionPointSlower (const MdcGeoWire *wireA, const MdcGeoWire *wireB) |
vector< AdjCandiTgtLine2D > | getAdjacentCandidateWithDriftCircle (const MdcGeoWire *wireA, const MdcGeoWire *wireB, double driftA, double driftB) |
give the lines that is tangent to both drift circles at the approximate z that the wires cross. require wireA != wireB. | |
vector< AdjCandiTgtLine2D > | getAdjacentCandidateWithDriftCircle (const MdcGeoWire *wireA, const MdcGeoWire *wireB, double driftA, double driftB, double expectedZ) |
give the lines that is tangent to both drift circles at certain z. require wireA != wireB. | |
void | testAdjacentIntersection () |
Public Member Functions inherited from IMdcGeomSvc |
Static Public Member Functions | |
static bool | getSagFlag (void) |
static bool | getSagFlag (void) |
Static Public Member Functions inherited from IMdcGeomSvc | |
static const InterfaceID & | interfaceID () |
static const InterfaceID & | interfaceID () |
Static Public Attributes | |
static bool | m_doSag = true |
static bool | m_readAlignParDataBase = true |
static bool | m_nomcalignment =true |
Definition at line 25 of file bak_MdcGeomSvc-00-01-39/MdcGeomSvc/MdcGeomSvc.h.
MdcGeomSvc::MdcGeomSvc | ( | const std::string & | name, |
ISvcLocator * | svcloc ) |
Definition at line 30 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
MdcGeomSvc::~MdcGeomSvc | ( | ) |
Definition at line 113 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
MdcGeomSvc::MdcGeomSvc | ( | const std::string & | name, |
ISvcLocator * | svcloc ) |
MdcGeomSvc::~MdcGeomSvc | ( | ) |
|
virtual |
Implements IMdcGeomSvc.
Definition at line 696 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by main().
|
virtual |
Implements IMdcGeomSvc.
const MdcGeoEnd *const MdcGeomSvc::End | ( | unsigned | id | ) |
Definition at line 815 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by BesMdcGeoParameter::InitFromSvc().
const MdcGeoEnd *const MdcGeomSvc::End | ( | unsigned | id | ) |
|
virtual |
Definition at line 107 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by main().
|
virtual |
|
virtual |
Implements IMdcGeomSvc.
Definition at line 802 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by BesMdcGeoParameter::InitFromSvc().
|
virtual |
Implements IMdcGeomSvc.
vector< MdcGeomSvc::AdjCandiTgtLine2D > MdcGeomSvc::getAdjacentCandidateWithDriftCircle | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB, | ||
double | driftA, | ||
double | driftB ) |
give the lines that is tangent to both drift circles at the approximate z that the wires cross. require wireA != wireB.
calls getAdjacentCandidateWithDriftCircle() with given Z. z calculated from center of bounds given in getAdjacentIntersectionBounds(); if no bound avaliable (the 2 wires has no neighbor), no line is returnd
wireA,wireB | the 2 wires |
driftA,driftB | the 2 drifts |
Definition at line 1687 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
Referenced by getAdjacentCandidateWithDriftCircle(), and testAdjacentIntersection().
vector< MdcGeomSvc::AdjCandiTgtLine2D > MdcGeomSvc::getAdjacentCandidateWithDriftCircle | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB, | ||
double | driftA, | ||
double | driftB, | ||
double | expectedZ ) |
give the lines that is tangent to both drift circles at certain z. require wireA != wireB.
inf is used to rep uninitialized value. gives AdjCandiTgtLine2D as the lines. mid of two tangent points are provided with AdjCandiTgtLine2D::location(). further check AdjCandiTgtLine2D.
wireA,wireB | the 2 wires |
driftA,driftB | the 2 drifts |
expectedZ | the z to calc |
Definition at line 1588 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
vector< double > MdcGeomSvc::getAdjacentIntersectionBounds | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB ) |
get bounding box in \varphi and z of touching shape of 2 adjacent layer wires.
wireA | |
wireB |
Definition at line 1298 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
Referenced by getAdjacentCandidateWithDriftCircle(), getAdjacentIntersectionPointSlower(), and testAdjacentIntersection().
HepPoint3D MdcGeomSvc::getAdjacentIntersectionPointFast | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB ) |
find the z where points on wireA, wireB has same phi. point is given as avg(A(z),B(z))
wireA | |
wireB |
Definition at line 1249 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
HepPoint3D MdcGeomSvc::getAdjacentIntersectionPointSlower | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB ) |
Definition at line 1275 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
vector< HepPoint3D > MdcGeomSvc::getAdjacentIntersectionShape | ( | const MdcGeoWire * | wireA, |
const MdcGeoWire * | wireB ) |
get touching shape of 2 adjacent layer wires.
return vertexs of intersection shape if the wires' sensitive area connects. return empty if not. points does go in order
wireA | |
wireB |
Definition at line 1045 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
Referenced by getAdjacentIntersectionBounds(), and testAdjacentIntersection().
|
virtual |
Implements IMdcGeomSvc.
Definition at line 686 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
|
virtual |
Implements IMdcGeomSvc.
|
virtual |
Implements IMdcGeomSvc.
Definition at line 676 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by DotsConnection::initialize(), DotsHelixFitter::initialize(), MdcDetector::MdcDetector(), and KalFitAlg::set_Mdc().
|
virtual |
Implements IMdcGeomSvc.
|
static |
Definition at line 823 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by MdcGeoWire::Sag().
|
static |
const int MdcGeomSvc::getSegmentNo | ( | ) |
Definition at line 691 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by BesMdcGeoParameter::InitFromSvc(), and DotsConnection::initialize().
const int MdcGeomSvc::getSegmentNo | ( | ) |
|
virtual |
Implements IMdcGeomSvc.
Definition at line 681 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by DotsConnection::initialize(), MdcDetector::MdcDetector(), and KalFitAlg::set_Mdc().
|
virtual |
Implements IMdcGeomSvc.
|
virtual |
Implements IMdcGeomSvc.
Definition at line 671 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by DotsConnection::initialize(), MdcDetector::MdcDetector(), and KalFitAlg::set_Mdc().
|
virtual |
Implements IMdcGeomSvc.
void MdcGeomSvc::handle | ( | const Incident & | inc | ) |
this handle function is prepared for special use
Definition at line 743 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
void MdcGeomSvc::handle | ( | const Incident & | inc | ) |
|
virtual |
Definition at line 73 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by main().
|
virtual |
|
virtual |
Implements IMdcGeomSvc.
Definition at line 786 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by BesMdcSD::Distance(), KalFitAlg::execute(), BesMdcGeoParameter::InitFromSvc(), DotsConnection::initialize(), DotsHelixFitter::initialize(), MdcDetector::MdcDetector(), MdcTrackUtil::nLayerTrackPassed(), BesMdcSD::ProcessHits(), KalFitAlg::set_Mdc(), testAdjacentIntersection(), and Wire().
|
virtual |
Implements IMdcGeomSvc.
const MdcGeoMisc *const MdcGeomSvc::Misc | ( | void | ) |
Definition at line 810 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by BesMdcGeoParameter::InitFromSvc().
const MdcGeoMisc *const MdcGeomSvc::Misc | ( | void | ) |
|
virtual |
Definition at line 63 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
|
virtual |
|
virtual |
Implements IMdcGeomSvc.
Definition at line 794 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
|
virtual |
Implements IMdcGeomSvc.
void MdcGeomSvc::testAdjacentIntersection | ( | ) |
Definition at line 1384 of file MdcGeomSvc-00-01-42/src/MdcGeomSvc.cxx.
|
virtual |
Implements IMdcGeomSvc.
Definition at line 770 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
Referenced by HoughTrack::calculateZ_S(), DotsConnection::CellAutomaton(), BesMdcSD::Distance(), DotsConnection::dotComp(), KalFitAlg::execute(), TrkReco::execute(), KalFitAlg::filter_fwd_anal(), KalFitAlg::filter_fwd_calib(), getAdjacentIntersectionShape(), HoughHit::HoughHit(), DotsConnection::initialize(), DotsHelixFitter::initialize(), main(), DotsConnection::makeDotCellEdge(), MdcDetector::MdcDetector(), DotsConnection::print(), KalFitAlg::set_Mdc(), KalFitAlg::smoother_anal(), KalFitAlg::smoother_calib(), and HoughHit::VHitPosition().
|
virtual |
Implements IMdcGeomSvc.
|
virtual |
Implements IMdcGeomSvc.
Definition at line 778 of file bak_MdcGeomSvc-00-01-39/src/MdcGeomSvc.cxx.
|
virtual |
Implements IMdcGeomSvc.
Definition at line 54 of file bak_MdcGeomSvc-00-01-39/MdcGeomSvc/MdcGeomSvc.h.
Referenced by getSagFlag(), and MdcGeomSvc().
Definition at line 56 of file bak_MdcGeomSvc-00-01-39/MdcGeomSvc/MdcGeomSvc.h.
Referenced by handle(), and MdcGeomSvc().
Definition at line 55 of file bak_MdcGeomSvc-00-01-39/MdcGeomSvc/MdcGeomSvc.h.
Referenced by handle(), and MdcGeomSvc().