Go to the documentation of this file.00001 #ifndef Fireworks_Core_FWRPZViewGeometry_h
00002 #define Fireworks_Core_FWRPZViewGeometry_h
00003
00004
00005
00006
00007
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "TEveElement.h"
00026 #include "Fireworks/Core/interface/FWViewType.h"
00027 #include "Fireworks/Core/interface/FWViewGeometryList.h"
00028 #include "Fireworks/Core/interface/FWGeometry.h"
00029
00030
00031 class TGeoShape;
00032
00033 class FWRPZViewGeometry : public FWViewGeometryList
00034 {
00035 public:
00036 FWRPZViewGeometry(const fireworks::Context& context);
00037 virtual ~FWRPZViewGeometry();
00038
00039
00040
00041
00042
00043
00044 void initStdGeoElements(const FWViewType::EType id);
00045
00046 void showPixelBarrel( bool );
00047 void showPixelEndcap( bool );
00048 void showTrackerBarrel( bool );
00049 void showTrackerEndcap( bool );
00050
00051 private:
00052 FWRPZViewGeometry(const FWRPZViewGeometry&);
00053 const FWRPZViewGeometry& operator=(const FWRPZViewGeometry&);
00054
00055
00056
00057 TEveElement* makeMuonGeometryRhoPhi();
00058 TEveElement* makeMuonGeometryRhoZ();
00059 TEveElement* makeCaloOutlineRhoPhi();
00060 TEveElement* makeCaloOutlineRhoZ();
00061 void estimateProjectionSizeDT( const FWGeometry::GeomDetInfo& info, float&, float&, float&, float& );
00062 void estimateProjectionSizeCSC( const FWGeometry::GeomDetInfo& info, float&, float&, float&, float& );
00063 void estimateProjectionSize( const float*, float&, float&, float&, float& );
00064
00065 void importNew(TEveElementList* x);
00066
00067 TEveGeoShape* makeShape( double, double, double, double );
00068
00069 TEveElementList* m_rhoPhiGeo;
00070 TEveElementList* m_rhoZGeo;
00071
00072
00073 TEveElementList* m_pixelBarrelElements;
00074 TEveElementList* m_pixelEndcapElements;
00075 TEveElementList* m_trackerBarrelElements;
00076 TEveElementList* m_trackerEndcapElements;
00077 };
00078
00079
00080 #endif