| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

GiGaExternalPhC.h

Go to the documentation of this file.
00001 // $Id: GiGaExternalPhC.h,v 1.3 2007/03/26 09:01:39 gcorti Exp $
00002 #ifndef GIGA_GIGAEXTERNALPHC_H 
00003 #define GIGA_GIGAEXTERNALPHC_H 1
00004 
00005 // Include files
00006 #include "GiGa/IGiGaPhysConstructor.h"
00007 #include "GiGa/GiGaPhysConstructorBase.h"
00008 
00009 
00026 template <class PHYSICSCONSTRUCTOR>
00027 class GiGaExternalPhC :
00028   public virtual IGiGaPhysConstructor     ,  
00029   public virtual  GiGaPhysConstructorBase ,
00030   public virtual G4VPhysicsConstructor    ,
00031   public virtual PHYSICSCONSTRUCTOR
00032 {
00034   typedef GiGaExternalPhC<PHYSICSCONSTRUCTOR> MyType ;
00035 
00036 protected:
00037   
00052   GiGaExternalPhC( const std::string& type   , 
00053                    const std::string& name   , 
00054                    const IInterface*  parent )
00055     : GiGaPhysConstructorBase ( type , name , parent )
00056     , PHYSICSCONSTRUCTOR      (        name          ) 
00057     , G4VPhysicsConstructor   (        name          )
00058   {
00059     // check for virtual inheritance 
00060     // the following line COULD produce compiler warning
00061     // for CORRECT  inheritance schema and 
00062     // it MUST produce the compiler error 
00063     // for INCORECT inheritance schema  
00064     G4ParticleTable* tt = theParticleTable ;
00065   };
00066   
00068   virtual ~GiGaExternalPhC() {};
00069 
00070 private:
00071 
00072   // default constructor is provate 
00073   GiGaExternalPhC();
00074   // copy constructor is private 
00075   GiGaExternalPhC           ( const MyType& );
00076   // assigement operator is private 
00077   GiGaExternalPhC& operator=( const MyType& );
00078   
00079 };
00080 
00081 #endif // GIGA_GIGAEXTERNALPHC_H
00082 
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:01:14 2011 for GiGa by doxygen 1.4.7