00001 00002 // 00003 // GeoSteelPlnNode 00004 // 00005 // GeoSteelPlnNode is a specialized GeoPlnNode to provide methods 00006 // specialized to a steel pln. 00007 // 00008 // Modeled after R. Hatcher's UgliSteelPlnNode class 00009 // 00010 // Author: S. Kasahara 07/04 00012 00013 #ifndef GEOSTEELPLNNODE_H 00014 #define GEOSTEELPLNNODE_H 00015 00016 #include "GeoGeometry/GeoPlnNode.h" // base class 00017 00018 class GeoSteelPlnNode; 00019 00020 class GeoSteelPlnNode : public GeoPlnNode { 00021 00022 friend class UgliSteelPlnHandle; 00023 friend class GeoGeometry; // every node belongs to its geometry creator 00024 00025 public: 00026 // Constructors & destructors 00027 GeoSteelPlnNode() {} // default constructor for i/o 00028 virtual ~GeoSteelPlnNode(); 00029 00030 // State testing methods 00031 00032 protected: 00033 00034 GeoSteelPlnNode(GeoGeometry* geoGeometry, TGeoVolume* plnvol, 00035 TGeoMatrix* plnmatrix, TGeoVolume* parVol, 00036 std::string globalpath, std::string nodename, 00037 const PlexPlaneId& planeid); 00038 00039 private: 00040 00041 // Avoid copy and assignment ctor by making them private and w/no imp 00042 GeoSteelPlnNode(const GeoSteelPlnNode& that); 00043 GeoSteelPlnNode& operator=(const GeoSteelPlnNode& that); 00044 00045 00046 ClassDef(GeoSteelPlnNode,1) 00047 }; 00048 #endif // GEOSTEELPLNNODE_H
1.3.9.1