![]() |
|
|||
File indexing completed on 2023-03-17 10:40:44
0001 #ifndef Alignment_TrackerAlignment_AlignableSiStripDet_H 0002 #define Alignment_TrackerAlignment_AlignableSiStripDet_H 0003 0004 /** \class AlignableSiStripDet 0005 * An alignable for GluedDets in Strip tracker, 0006 * taking care of consistency with AlignableDet components. 0007 * 0008 * First implementation April/May 2008 0009 * \author Gero Flucke, Hamburg University 0010 * $Date: 2008/07/13 12:26:41 $ 0011 * $Revision: 1.4 $ 0012 */ 0013 0014 #include "Alignment/CommonAlignment/interface/AlignableDet.h" 0015 0016 #include <vector> 0017 0018 class GluedGeomDet; 0019 class AlignTransformErrorExtended; 0020 class Bounds; 0021 class StripGeomDetType; 0022 0023 class AlignableSiStripDet : public AlignableDet { 0024 public: 0025 /// Constructor 0026 AlignableSiStripDet(const GluedGeomDet *geomDet); 0027 /// reduntantly make destructor virtual 0028 ~AlignableSiStripDet() override; 0029 0030 /// first consistify with component detunits, then call method from AlignableDet 0031 Alignments *alignments() const override; 0032 0033 private: 0034 /// make alignments consistent with daughters 0035 void consistifyAlignments(); 0036 0037 // void dumpCompareEuler(const RotationType &oldRot, const RotationType &newRot) const; 0038 0039 /// The following four members are needed to recalculate the surface in consistifyAlignments, 0040 /// to get rid of a GluedDet* which is disregarded since it could become an invalid pointer 0041 /// in the next event (theoretically...). But this solution is not better, the references for the 0042 /// types would become invalid together with the GeomDets they are taken from. 0043 /// StripGeomDetType has neither clone() and nor a decent copy constructor, so I cannot go the 0044 /// the same way as for the bounds. Sigh! 0045 const Bounds *theMonoBounds; 0046 const Bounds *theStereoBounds; 0047 const StripGeomDetType &theMonoType; 0048 const StripGeomDetType &theStereoType; 0049 }; 0050 0051 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |