00001 //! \file 00002 //! 00003 //! Header file for Target_Chamber class. 00004 //! 00005 //! The Target_Chamber class is used to build the target chamber, target cell, 00006 //! and collimator for the OLYMPUS detector simulation. This file declares the 00007 //! Target_Chamber class and the member routines which construct the OLYMPUS 00008 //! target chamber, target cell, and collimator. 00009 //! 00010 //! \author D.K. Hasell 00011 //! \version 1.0 00012 //! \date 2010-10-14 00013 //! 00014 //! \ingroup detector 00015 00016 // *+****1****+****2****+****3****+****4****+****5****+****6****+****7****+**** 00017 00018 #ifndef TARGET_CHAMBER_H 00019 #define TARGET_CHAMBER_H 00020 00021 // Include the classes referenced here. 00022 00023 class G4VPhysicalVolume; 00024 00025 //! Class used to build the OLYMPUS target chamber, target cell, and 00026 //! collimator. 00027 //! 00028 //! Instatiated by OLYMPUS_Detector class member function Construct(). 00029 00030 class Target_Chamber { 00031 00032 public: 00033 00034 //! Constructor for the Target_Chamber class. 00035 //! 00036 //! Called by OLYMPUS_Detector member Construct() to create an instance of 00037 //! this class. 00038 00039 Target_Chamber(); 00040 00041 //! Destructor for the Target_Chamber class. 00042 //! 00043 //! Called by OLYMPUS_Detector member Construct() to delete the target 00044 //! chamber instance. 00045 00046 ~Target_Chamber(); 00047 00048 // Member functions. 00049 00050 //! Member function to build the the Target_Chamber. 00051 //! 00052 //! Called by OLYMPUS_Detector member Construct() to build the target 00053 //! chamber. 00054 00055 void Build( G4VPhysicalVolume * World_phys ); 00056 00057 private: 00058 00059 }; 00060 00061 #endif