//////////////////////////////////////////////////////////////////////// /// \class RAT::PMTBaseConstructorParams /// /// \brief The struct of parameters needed to construct a pmt base /// /// \author Phil Jones /// \author Aksel Hallin -- contact person /// /// REVISION HISTORY:\n /// 28/10 : P.Jones - First Revision, new file. \n /// 08/10 : P.Jones - New constructor. \n /// /// \details Stores the necessary parameters for a pmt base /// /// //////////////////////////////////////////////////////////////////////// #ifndef __RAT_PMTBaseConstructorParams__ #define __RAT_PMTBaseConstructorParams__ #include class G4Material; class G4VisAttributes; namespace RAT { class PMTBaseConstructorParams { public: PMTBaseConstructorParams( const std::string& pmtBaseType, G4VisAttributes* visAttributes ); virtual ~PMTBaseConstructorParams() {} std::string fPMTBaseType; ///< PMT Base type in the db double fInnerRadius; ///< Radius of the inner void double fOuterRadius; ///< Radius of the PMT Base double fHeight; ///< Height of the PMT Base, a length independent of the pmt equator double fVoidDepth; ///< Size of the PMT base inner void, from the top of the bucket, a length independent of the pmt equator double fOffset; ///< Offset of the PMTBase (PMTBase z=0) from the PMT Equator G4Material* fBulkMaterial; ///< PMTBase Bulk (Plastic) material G4VisAttributes* fVisAttributes; ///< Visualisation attributes private: PMTBaseConstructorParams(); }; } //::RAT #endif