00001 //! \file 00002 //! 00003 //! Header file for the Wire_Chamber class. 00004 //! 00005 //! The Wire_Chamber class is used to build the wire chamber detector 00006 //! for the OLYMPUS detector simulation. This file declares the Wire_Chamber 00007 //! class and the member routines which build the wire chamber detector. 00008 //! 00009 //! \author D.K. Hasell 00010 //! \version 1.0 00011 //! \date 2010-08-28 00012 //! 00013 //! \ingroup detector 00014 00015 // *+****1****+****2****+****3****+****4****+****5****+****6****+****7****+**** 00016 00017 // Ensure this header file is only included once. 00018 00019 #ifndef WIRE_CHAMBER_H 00020 #define WIRE_CHAMBER_H 00021 00022 // Define the number of WC detectors (NB also used in WC_SD). 00023 00024 #define N_WC 6 00025 00026 // Declare classes used in this file. 00027 00028 class G4VPhysicalVolume; 00029 00030 // *+****1****+****2****+****3****+****4****+****5****+****6****+****7****+**** 00031 00032 //! Wire_Chamber class. 00033 //! 00034 //! This class builds the Wire_Chamber detector. It is 00035 //! instantiated by the OLYMPUS Detector class memeber function Construct() 00036 //! and then the Build() member function builds the detector and places it in 00037 //! the world volume. The Build member function also creates an 00038 //! instantiation the WC_SD class. 00039 00040 class Wire_Chamber { 00041 00042 public: 00043 00044 //! Constructor for the Wire_Chamber class. 00045 //! 00046 //! Called by OLYMPUS Detector member Construct() to create an instance of 00047 //! this class. 00048 00049 Wire_Chamber(); 00050 00051 //! Destructor for the Wire_Chamber class. 00052 //! 00053 //! Called by OLYMPUS Detector member Construct() to delete this instance. 00054 00055 ~Wire_Chamber(); 00056 00057 // Member functions. 00058 00059 //! Member function to build the the Wire_Chamber. 00060 //! 00061 //! Called by OLYMPUS Detector member Construct() to build the detector 00062 //! and place it in the world volume. This function also creates an 00063 //! instance of WC_SD, the Wire_Chamber sensitive detector class. 00064 00065 void Build( G4VPhysicalVolume * World_phys ); 00066 00067 private: 00068 00069 }; 00070 00071 #endif