00001 #ifndef BDSMAGNETOUTERFACTORYPOLESFACET_H 00002 #define BDSMAGNETOUTERFACTORYPOLESFACET_H 00003 00004 #include "BDSMagnetOuterFactoryPolesBase.hh" 00005 00006 #include "globals.hh" // geant4 globals / types 00007 00020 class BDSMagnetOuterFactoryPolesFacet: public BDSMagnetOuterFactoryPolesBase 00021 { 00022 public: 00023 static BDSMagnetOuterFactoryPolesFacet* Instance(); 00024 00025 ~BDSMagnetOuterFactoryPolesFacet(); 00026 00027 private: 00029 BDSMagnetOuterFactoryPolesFacet(){;}; 00030 static BDSMagnetOuterFactoryPolesFacet* _instance; 00031 00033 virtual void CreatePoleSolid(G4String name, // name 00034 G4double length, // length [mm] 00035 G4int order); // Nx2 poles 00036 00038 virtual void CreateYokeAndContainerSolid(G4String name, 00039 G4double length, 00040 G4int order); 00041 00042 }; 00043 00044 #endif