00001 #ifndef bRod_H 00002 #define bRod_H 00003 00013 #include "MagneticField/GeomBuilder/src/MagGeoBuilderFromDDD.h" 00014 #include "MagneticField/GeomBuilder/src/volumeHandle.h" 00015 #include "MagneticField/GeomBuilder/src/bSlab.h" 00016 00017 class MagBRod; 00018 00019 class MagGeoBuilderFromDDD::bRod { 00020 public: 00022 bRod(handles::const_iterator begin, handles::const_iterator end); 00023 00025 ~bRod(); 00026 00028 const float RN() const { 00029 return volumes.front()->RN(); 00030 } 00031 00033 MagBRod* buildMagBRod() const; 00034 00035 private: 00036 std::vector<bSlab> slabs; 00037 handles volumes; // pointers to all volumes in the rod 00038 mutable MagBRod* mrod; 00039 }; 00040 00041 #endif