CMS 3D CMS Logo

VisTrackingGeometry.h

Go to the documentation of this file.
00001 #ifndef VIS_RECO_GEOMETRY_VIS_TRACKING_GEOMETRY_H
00002 # define VIS_RECO_GEOMETRY_VIS_TRACKING_GEOMETRY_H
00003 
00004 //<<<<<< INCLUDES                                                       >>>>>>
00005 
00006 # include "FWCore/Framework/interface/ESHandle.h"
00007 # include "DataFormats/GeometryVector/interface/GlobalPoint.h"
00008 #include "Geometry/CommonDetUnit/interface/GlobalTrackingGeometry.h"
00009 # include <string>
00010 
00011 //<<<<<< PUBLIC DEFINES                                                 >>>>>>
00012 //<<<<<< PUBLIC CONSTANTS                                               >>>>>>
00013 //<<<<<< PUBLIC TYPES                                                   >>>>>>
00014 
00015 class GeomDetUnit;
00016 class SbVec3f;
00017 class SoSeparator;
00018 class SoAnnotation;
00019 class TrackerGeometry;
00020 
00021 //<<<<<< PUBLIC VARIABLES                                               >>>>>>
00022 //<<<<<< PUBLIC FUNCTIONS                                               >>>>>>
00023 //<<<<<< CLASS DECLARATIONS                                             >>>>>>
00024 
00025 class VisTrackingGeometry
00026 {
00027 public:
00028     // implicit copy constructor
00029     // implicit assignment operator
00030     // implicit destructor
00031   
00032     enum DetectorRep { FullDet, RZDet, RPhiDet, 
00033                        CSCME1, CSCME2, CSCME3, CSCME4};
00034   
00035     static SoSeparator  *buildDet (DetectorRep type, edm::ESHandle<TrackerGeometry> &pDD, int subDetector);
00036     static SoSeparator  *buildDet (DetectorRep type, std::vector<const GeomDetUnit *>&);
00037     static SoAnnotation  *buildDet_anno (DetectorRep type, std::vector<const GeomDetUnit *>&);
00038 
00039     static int          subDetector (const std::string &key);
00040     static bool         visible (const GlobalPoint & point, DetectorRep type, int subDetector);
00041     static void         addWafer (SoSeparator *separator, const GeomDetUnit *det,DetectorRep type);
00042     static void         addBoxWafer (SoSeparator *separator, const GeomDetUnit *det);
00043     static void         createRotation (const GeomDetUnit *det, SbVec3f & axis, float & angle);
00044 };
00045 
00046 //<<<<<< INLINE PUBLIC FUNCTIONS                                        >>>>>>
00047 //<<<<<< INLINE MEMBER FUNCTIONS                                        >>>>>>
00048 
00049 #endif // VIS_RECO_GEOMETRY_VIS_TRACKING_GEOMETRY_H

Generated on Tue Jun 9 17:50:24 2009 for CMSSW by  doxygen 1.5.4