|
| OptOUserDefined () |
|
| OptOUserDefined (OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data) |
|
virtual void | userDefinedBehaviour (LightRay &lightray, Measurement &meas, ALIstring &behav) |
|
| ~OptOUserDefined () |
|
void | addCoordinateEntryToList (Entry *entry) |
|
void | addExtraEntryToList (Entry *entry) |
|
void | addExtraEntryValueOriginalOriginalToList (ALIdouble entry_value) |
|
void | addExtraEntryValueOriginalToList (ALIdouble entry_value) |
|
void | addExtraEntryValueToList (ALIdouble entry_value) |
|
double | addPii (double val) |
|
double | approxTo0 (double val) |
|
CLHEP::HepRotation | buildRmFromEntryValuesOriginalOriginal () |
|
const CLHEP::Hep3Vector & | centreGlob () const |
|
const CLHEP::Hep3Vector & | centreGlobal () const |
|
const CLHEP::Hep3Vector & | centreGlobOriginal () const |
|
const CLHEP::Hep3Vector & | centreGlobOriginalOriginal () const |
|
const CLHEP::Hep3Vector | centreLocal () const |
|
int | checkMatrixEquations (double angleX, double angleY, double angleZ, CLHEP::HepRotation *rot=0) |
|
void | construct () |
|
void | constructFromOptAligInfo (const OpticalAlignInfo &oaInfo) |
|
virtual void | constructMaterial () |
|
virtual void | constructSolidShape () |
|
const std::vector< Entry * > & | CoordinateEntryList () const |
|
void | createComponentOptOsFromOptAlignInfo () |
|
virtual void | defaultBehaviour (LightRay &lightray, Measurement &meas) |
|
virtual void | detailedDeviatesLightRay (LightRay &lightray) |
|
virtual void | detailedTraversesLightRay (LightRay &lightray) |
|
double | diff2pi (double ang1, double ang2) |
|
void | displaceCentreGlob (const XYZcoor coor, const ALIdouble disp) |
|
void | displaceCentreGlob (const CLHEP::Hep3Vector &dispVec) |
|
void | displaceCentreGlobOriginal (const XYZcoor coor, const ALIdouble disp) |
|
void | displaceCentreGlobOriginal (const CLHEP::Hep3Vector &dispVec) |
|
void | displaceCentreGlobOriginalOriginal (const XYZcoor coor, const ALIdouble disp) |
|
void | displaceCentreGlobOriginalOriginal (const CLHEP::Hep3Vector &dispVec) |
|
void | displaceExtraEntry (const ALIuint entryNo, const ALIdouble disp) |
|
void | displaceExtraEntryOriginal (const ALIuint entryNo, const ALIdouble disp) |
|
void | displaceExtraEntryOriginalOriginal (const ALIuint entryNo, const ALIdouble disp) |
|
void | displaceRmGlobAroundGlobal (OpticalObject *opto1stRotated, const XYZcoor coor, const ALIdouble disp) |
|
void | displaceRmGlobAroundLocal (OpticalObject *opto1stRotated, const XYZcoor coor, const ALIdouble disp) |
|
void | displaceRmGlobOriginal (const OpticalObject *opto1stRotated, const XYZcoor coor, const ALIdouble disp) |
|
void | displaceRmGlobOriginalOriginal (const OpticalObject *opto1stRotated, const XYZcoor coor, const ALIdouble disp) |
|
bool | eq2ang (double ang1, double ang2) |
|
const std::vector< Entry * > & | ExtraEntryList () const |
|
const ALIint | extraEntryNo (const ALIstring &entry_name) const |
|
std::vector< ALIdouble > & | ExtraEntryValueList () |
|
const std::vector< ALIdouble > & | ExtraEntryValueOriginalList () |
|
const std::vector< ALIdouble > & | ExtraEntryValueOriginalOriginalList () |
|
virtual void | fastDeviatesLightRay (LightRay &lightray) |
|
virtual void | fastTraversesLightRay (LightRay &lightray) |
|
virtual void | fillIguana () |
|
virtual void | fillVRML () |
|
const ALIdouble | findExtraEntryValue (const ALIstring &eename) const |
|
const ALIbool | findExtraEntryValueIfExists (const ALIstring &eename, ALIdouble &value) const |
|
const ALIdouble | findExtraEntryValueMustExist (const ALIstring &eename) const |
|
const ALIuint | getCmsswID () const |
|
std::vector< ALIstring > | getCoordinateFromOptAlignParam (const OpticalAlignParam &oaParam) |
|
CLHEP::Hep3Vector | getDisplacementInLocalCoordinates (const XYZcoor coor, const ALIdouble disp) |
|
const double | getEntryCentre (const XYZcoor coor) const |
|
const double | getEntryCentre (const ALIstring &coor) const |
|
const double | getEntryRMangle (const XYZcoor coor) const |
|
const double | getEntryRMangle (const ALIstring &coor) const |
|
std::vector< double > | getLocalRotationAngles (const std::vector< Entry * > &entries) const |
|
CocoaMaterialElementary * | getMaterial () const |
|
ALIPlane | getPlate (const ALIbool forwardPlate, const ALIbool applyWedge) |
|
std::vector< double > | getRotationAnglesFromMatrix (CLHEP::HepRotation &rmLocal, const std::vector< Entry * > &entries) const |
|
std::vector< double > | getRotationAnglesInOptOFrame (const OpticalObject *optoAncestor, const std::vector< Entry * > &entries) const |
|
CocoaSolidShape * | getSolidShape () const |
|
CLHEP::Hep3Vector | getZAxis () |
|
const ALIuint | ID () const |
|
const ALIstring | longName () const |
|
virtual void | makeMeasurement (LightRay &lightray, Measurement &meas) |
|
Measurement * | meas () |
|
const ALIstring & | name () const |
|
| OpticalObject () |
|
| OpticalObject (OpticalObject *parent, const ALIstring &type, const ALIstring &name, const ALIbool copy_data) |
|
const OpticalObject * | parent () const |
|
virtual void | participateInMeasurement (LightRay &lightray, Measurement &meas, const ALIstring &behav) |
|
void | propagateGlobalRMOriginalOriginalChangeToChildren (const CLHEP::HepRotation &rmorioriold, const CLHEP::HepRotation &rmoriorinew) |
|
void | resetGlobalCoordinates () |
|
void | resetOriginalOriginalCoordinates () |
|
const CLHEP::HepRotation & | rmGlob () const |
|
const CLHEP::HepRotation & | rmGlobOriginal () const |
|
const CLHEP::HepRotation & | rmGlobOriginalOriginal () const |
|
const CLHEP::HepRotation | rmLocal () const |
|
void | setCmsswID (ALIuint id) |
|
void | setExtraEntryValue (const ALIuint entryNo, const ALIdouble disp) |
|
void | setGlobalCoordinates () |
|
void | setGlobalRMOriginalOriginal (const CLHEP::HepRotation &rmoriori) |
|
void | setID (ALIuint id) |
|
void | setMeas (Measurement *meas) |
| set current measurement More...
|
|
void | setOriginalEntryValues () |
|
void | setRmGlobal (const CLHEP::HepRotation &rm) |
|
void | setRmGlobalOriginal (const CLHEP::HepRotation &rm) |
|
void | setType (const ALIstring &type) |
|
const ALIstring | shortName () const |
|
const ALIstring & | type () const |
|
virtual void | userDefinedBehaviour (LightRay &lightray, Measurement &meas, const ALIstring &behav) |
|
virtual | ~OpticalObject () |
|
Definition at line 18 of file OptOUserDefined.h.
Definition at line 24 of file OptOUserDefined.cc.
References OpticalObject::centreGlob(), dtNoiseDBValidation_cfg::cerr, gather_cfg::cout, ALIUtils::debug, LightRay::direction(), ALIUtils::dump3v(), LightRay::dumpData(), cmsRelvalreport::exit, OpticalObject::ExtraEntryList(), OpticalObject::findExtraEntryValue(), ALIUtils::getFirstTime(), GlobalOptionMgr::getInstance(), OpticalObject::getPlate(), GlobalOptionMgr::GlobalOptions(), LightRay::intersect(), OpticalObject::name(), Measurement::name(), LightRay::point(), OpticalObject::rmGlob(), LightRay::setDirection(), LightRay::setPoint(), and findQualityFiles::size.
27 ALIVisLightPath* vispath = 0;
31 vispath = IgCocoaFileMgr::getInstance().newLightPath(
name() );
39 std::cerr <<
"OpticalObject: !!! EXITING at Measurement: " << meas.
name() <<
" in OptO: " <<
name() <<
" behaviour ':" << behav <<
"' is not adequate " << std::endl;
40 std::cerr <<
"an OptO has to indicate if detailed simulation traverses (:T) or deviates (:D) or Fast Simulation traverses (:FT) or deviates (:FD) or default behaviour () "<< std::endl;
43 ALIint behavSize = behav.size();
46 if( behavSize != 2 || behav[0] !=
'D' ){
47 std::cerr <<
"OpticalObject: !!! EXITING at Measurement: " << meas.
name() <<
" in OptO: " <<
name() <<
" behaviour ':" << behav <<
"' is not adequate " << std::endl;
48 std::cerr <<
"an OptO has to indicate detailed simulation by (:Dn) where n is an integer number " << std::endl;
51 nSet = behav.substr( behavSize-1, behavSize);
60 CLHEP::Hep3Vector shift3D( shiftX, shiftY, shiftZ );
61 CLHEP::HepRotation rmt =
rmGlob();
62 shift3D = rmt*shift3D;
64 lightray.
dumpData(
"OptOUserDefined: lightray incoming");
78 ALIVRMLMgr::getInstance().addLightPoint( lightray.
point() );
82 vispath->addLightPoint( lightray.
point(), this );
89 lightray.
dumpData(
"OptOUserDefined: lightray after shift");
91 CLHEP::Hep3Vector direc = lightray.
direction();
92 CLHEP::Hep3Vector XAxis(1.,0.,0.);
94 direc.rotate(deviX, XAxis);
96 std::cout <<
"Direction after deviX " << direc << std::endl;
97 std::cout <<
" deviX " << deviX << std::endl;
99 CLHEP::Hep3Vector YAxis(0.,1.,0.);
101 direc.rotate(deviY, YAxis);
104 std::cout <<
"Direction after deviY " << direc << std::endl;
105 std::cout <<
" deviY " << deviY << std::endl;
107 CLHEP::Hep3Vector ZAxis(0.,0.,1.);
109 direc.rotate(deviZ, ZAxis);
112 std::cout <<
"Direction after deviZ " << direc << std::endl;
113 std::cout <<
" deviZ " << deviZ << std::endl;
116 lightray.
dumpData(
"OptOUserDefined: lightray at exiting");
125 ALIVRMLMgr::getInstance().addLightPoint( lightray.
point() );
129 vispath->addLightPoint( lightray.
point(), this );
const std::vector< Entry * > & ExtraEntryList() const
static GlobalOptionMgr * getInstance()
const CLHEP::HepRotation & rmGlob() const
void setDirection(const CLHEP::Hep3Vector &direc)
void setPoint(const CLHEP::Hep3Vector &point)
const CLHEP::Hep3Vector & point() const
const ALIdouble findExtraEntryValue(const ALIstring &eename) const
static void dump3v(const CLHEP::Hep3Vector &vec, const std::string &msg)
void intersect(const ALIPlane &plane)
static ALIbool getFirstTime()
const CLHEP::Hep3Vector & centreGlob() const
ALIPlane getPlate(const ALIbool forwardPlate, const ALIbool applyWedge)
void dumpData(const ALIstring &str) const
const ALIstring & name() const
const ALIstring & name() const
std::map< ALIstring, ALIdouble, std::less< ALIstring > > & GlobalOptions()
const CLHEP::Hep3Vector & direction() const
tuple size
Write out results.