00001 // $Id: GiGaSensDetBase.h,v 1.12 2007/10/03 15:21:09 gcorti Exp $ 00002 #ifndef GIGA_GIGASENSDETBASE_H 00003 #define GIGA_GIGASENSDETBASE_H 1 00004 00005 // Include files 00006 // from GiGa 00007 #include "GiGa/IGiGaSensDet.h" 00008 #include "GiGa/GiGaBase.h" 00009 00010 // forward declaration 00011 class G4step; 00012 class G4TouchableHistory; 00013 00022 class GiGaSensDetBase: virtual public IGiGaSensDet , 00023 public GiGaBase 00024 { 00025 00026 public: 00027 00035 GiGaSensDetBase ( const std::string& type , 00036 const std::string& name , 00037 const IInterface* parent ); 00038 00040 virtual ~GiGaSensDetBase(); 00041 00042 public: 00043 00050 virtual StatusCode initialize(); 00051 00058 virtual StatusCode finalize(); 00059 00063 virtual bool processStep( G4Step* step, 00064 G4TouchableHistory* history ); 00065 00066 virtual unsigned long release() ; 00067 00068 protected: 00069 00070 GiGaSensDetBase( const GiGaSensDetBase& ); 00071 GiGaSensDetBase& operator=( const GiGaSensDetBase& ); 00072 00073 private: 00074 00075 bool m_active ; 00076 std::string m_detPath ; 00077 }; 00078 00079 #endif // GIGA_GIGASENSDET_H 00080