CbmRoot
|
Project track by straight line from imaginary plane to the mirror and reflect it to the photodetector plane. More...
#include <CbmRichProjectionProducerAnalytical.h>
Public Member Functions | |
CbmRichProjectionProducerAnalytical () | |
Standard constructor. | |
virtual | ~CbmRichProjectionProducerAnalytical () |
Destructor. | |
virtual void | Init () |
Initialization of the task. | |
virtual void | DoProjection (TClonesArray *richProj) |
Execute task. | |
void | GetPmtIntersectionPointTwoWings (const TVector3 *centerP, const TVector3 *crossP, const TVector3 *ref, TVector3 *outPoint) |
void | GetPmtIntersectionPointCyl (const TVector3 *centerP, const TVector3 *crossP, const TVector3 *ref, TVector3 *outPoint) |
TVector3 | MirrorCenter (const TVector3 centerP, const string volumeName) |
string | GetMirrorID (const string volumeName) |
CbmRichProjectionProducerAnalytical () | |
Standard constructor. | |
virtual | ~CbmRichProjectionProducerAnalytical () |
Destructor. | |
virtual void | Init () |
Initialization of the task. | |
virtual void | DoProjection (CbmEvent *event, TClonesArray *richProj) |
Execute task. | |
void | GetPmtIntersectionPointTwoWings (const TVector3 *centerP, const TVector3 *crossP, const TVector3 *ref, TVector3 *outPoint) |
void | GetPmtIntersectionPointCyl (const TVector3 *centerP, const TVector3 *crossP, const TVector3 *ref, TVector3 *outPoint) |
virtual void | SetMirrorCorrectionParameterFile (const string &s) |
int | GetSuccessfullProj () const |
Protected Attributes | |
string | fPathToMirrorCorrectionParameterFile |
CbmRichMirrorMisalignmentCorrectionUtils * | fMirrorCorrectionParameterFile |
int | fnSuccessfullProj {} |
Private Member Functions | |
CbmRichProjectionProducerAnalytical (const CbmRichProjectionProducerAnalytical &) | |
Copy constructor. | |
CbmRichProjectionProducerAnalytical & | operator= (const CbmRichProjectionProducerAnalytical &) |
Assignment operator. | |
CbmRichProjectionProducerAnalytical (const CbmRichProjectionProducerAnalytical &) | |
Copy constructor. | |
CbmRichProjectionProducerAnalytical & | operator= (const CbmRichProjectionProducerAnalytical &) |
Assignment operator. | |
Private Attributes | |
TClonesArray * | fTrackParams = nullptr |
int | fNHits |
int | fEventNum = 0 |
Project track by straight line from imaginary plane to the mirror and reflect it to the photodetector plane.
Definition at line 38 of file alignment/CbmRichProjectionProducerAnalytical.h.
CbmRichProjectionProducerAnalytical::CbmRichProjectionProducerAnalytical | ( | ) |
Standard constructor.
Definition at line 42 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
|
virtual |
Destructor.
Definition at line 46 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
|
private |
Copy constructor.
CbmRichProjectionProducerAnalytical::CbmRichProjectionProducerAnalytical | ( | ) |
Standard constructor.
|
virtual |
Destructor.
|
private |
Copy constructor.
|
virtual |
Execute task.
[out] | richProj | Output array of created projections. |
Implements CbmRichProjectionProducerBase.
Definition at line 53 of file tracks/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichGeometryTypeCylindrical, CbmRichGeometryTypeTwoWings, fEventNum, CbmRichRecGeoPar::fGeometryType, CbmRichGeoManager::fGP, CbmRichRecGeoPar::fMirrorR, CbmRichRecGeoPar::fMirrorX, CbmRichRecGeoPar::fMirrorY, CbmRichRecGeoPar::fMirrorZ, CbmRichProjectionProducerBase::fnSuccessfullProj, fTrackParams, CbmRichGeoManager::GetInstance(), GetPmtIntersectionPointCyl(), GetPmtIntersectionPointTwoWings(), CbmRichGeoManager::IsPointInsidePmt(), kRichTrackParamZ, kRichTrackProjection, richProj, and CbmRichGeoManager::RotatePoint().
|
virtual |
Execute task.
[out] | richProj | Output array of created projections. |
Implements CbmRichProjectionProducerBase.
Definition at line 67 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichGeometryTypeCylindrical, CbmRichGeometryTypeTwoWings, fEventNum, CbmRichRecGeoPar::fGeometryType, CbmRichGeoManager::fGP, CbmRichNavigationUtil::FindIntersection(), CbmRichRecGeoPar::fMirrorR, CbmRichRecGeoPar::fMirrorX, CbmRichRecGeoPar::fMirrorY, CbmRichRecGeoPar::fMirrorZ, fTrackParams, CbmRichGeoManager::GetInstance(), GetPmtIntersectionPointCyl(), GetPmtIntersectionPointTwoWings(), CbmRichGeoManager::IsPointInsidePmt(), MirrorCenter(), richProj, and CbmRichGeoManager::RotatePoint().
string CbmRichProjectionProducerAnalytical::GetMirrorID | ( | const string | volumeName | ) |
Definition at line 313 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
Referenced by MirrorCenter().
void CbmRichProjectionProducerAnalytical::GetPmtIntersectionPointCyl | ( | const TVector3 * | centerP, |
const TVector3 * | crossP, | ||
const TVector3 * | ref, | ||
TVector3 * | outPoint ) |
Definition at line 403 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichGeometryTypeCylindrical, CbmRichRecGeoPar::fGeometryType, CbmRichGeoManager::fGP, CbmRichRecGeoPar::fPmtMap, and CbmRichGeoManager::GetInstance().
Referenced by DoProjection(), and DoProjection().
void CbmRichProjectionProducerAnalytical::GetPmtIntersectionPointCyl | ( | const TVector3 * | centerP, |
const TVector3 * | crossP, | ||
const TVector3 * | ref, | ||
TVector3 * | outPoint ) |
void CbmRichProjectionProducerAnalytical::GetPmtIntersectionPointTwoWings | ( | const TVector3 * | centerP, |
const TVector3 * | crossP, | ||
const TVector3 * | ref, | ||
TVector3 * | outPoint ) |
Definition at line 327 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichGeometryTypeTwoWings, CbmRichRecGeoPar::fGeometryType, CbmRichGeoManager::fGP, CbmRichRecGeoParPmt::fPhi, CbmRichRecGeoParPmt::fPlaneX, CbmRichRecGeoParPmt::fPlaneY, CbmRichRecGeoParPmt::fPlaneZ, CbmRichRecGeoPar::fPmt, CbmRichRecGeoParPmt::fTheta, and CbmRichGeoManager::GetInstance().
Referenced by DoProjection(), and DoProjection().
void CbmRichProjectionProducerAnalytical::GetPmtIntersectionPointTwoWings | ( | const TVector3 * | centerP, |
const TVector3 * | crossP, | ||
const TVector3 * | ref, | ||
TVector3 * | outPoint ) |
|
inlineinherited |
Get number of successful projections
Definition at line 53 of file tracks/CbmRichProjectionProducerBase.h.
References CbmRichProjectionProducerBase::fnSuccessfullProj.
|
virtual |
Initialization of the task.
Reimplemented from CbmRichProjectionProducerBase.
Definition at line 53 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichProjectionProducerBase::fMirrorCorrectionParameterFile, CbmRichProjectionProducerBase::fPathToMirrorCorrectionParameterFile, fTrackParams, and CbmRichMirrorMisalignmentCorrectionUtils::Init().
|
virtual |
Initialization of the task.
Reimplemented from CbmRichProjectionProducerBase.
TVector3 CbmRichProjectionProducerAnalytical::MirrorCenter | ( | const TVector3 | centerP, |
const string | volumeName ) |
Definition at line 223 of file alignment/CbmRichProjectionProducerAnalytical.cxx.
References CbmRichProjectionProducerBase::fMirrorCorrectionParameterFile, CbmRichMirrorMisalignmentCorrectionUtils::GetMirrorCorrectionParamBool(), CbmRichMirrorMisalignmentCorrectionUtils::GetMirrorCorrectionParamMap(), and GetMirrorID().
Referenced by DoProjection().
|
private |
Assignment operator.
|
private |
Assignment operator.
|
inlinevirtualinherited |
Definition at line 55 of file alignment/CbmRichProjectionProducerBase.h.
References CbmRichProjectionProducerBase::fPathToMirrorCorrectionParameterFile.
Referenced by CbmRichReconstruction::InitProjection().
|
private |
Definition at line 80 of file alignment/CbmRichProjectionProducerAnalytical.h.
Referenced by DoProjection(), and DoProjection().
|
protectedinherited |
Definition at line 60 of file alignment/CbmRichProjectionProducerBase.h.
Referenced by Init(), and MirrorCenter().
|
private |
Definition at line 79 of file alignment/CbmRichProjectionProducerAnalytical.h.
|
protectedinherited |
Definition at line 56 of file tracks/CbmRichProjectionProducerBase.h.
Referenced by DoProjection(), CbmRichProjectionProducerTGeo::DoProjection(), and CbmRichProjectionProducerBase::GetSuccessfullProj().
|
protectedinherited |
Definition at line 59 of file alignment/CbmRichProjectionProducerBase.h.
Referenced by Init(), and CbmRichProjectionProducerBase::SetMirrorCorrectionParameterFile().
|
private |
Definition at line 77 of file alignment/CbmRichProjectionProducerAnalytical.h.
Referenced by DoProjection(), DoProjection(), and Init().