/scratch0/jsnuveri/BDSIM/BDSIMgit/bdsim/src/BDSBunchFactory.cc

00001 #include "BDSBunchFactory.hh"
00002 
00003 #include "BDSBunchCircle.hh"
00004 #include "BDSBunchComposite.hh"
00005 #include "BDSBunchEShell.hh"
00006 #include "BDSBunchGaussian.hh"
00007 #include "BDSBunchInterface.hh"
00008 #include "BDSBunchRing.hh"
00009 #include "BDSBunchSquare.hh"
00010 #include "BDSBunchUserFile.hh"
00011 #include "BDSBunchTwiss.hh"
00012 #include "BDSBunchPtc.hh"
00013 #include "BDSBunchHalo.hh"
00014 
00015 BDSBunchInterface* BDSBunchFactory::createBunch(G4String distribType)
00016 {
00017   BDSBunchInterface* bdsBunch;
00018   if (distribType == "reference") 
00019     bdsBunch = new BDSBunchInterface();
00020   else if(distribType == "gauss" || distribType == "gaussmatrix") 
00021     bdsBunch = new BDSBunchGaussian(); 
00022   else if(distribType == "square") 
00023     bdsBunch = new BDSBunchSquare();
00024   else if(distribType == "circle") 
00025     bdsBunch = new BDSBunchCircle();
00026   else if(distribType == "ring") 
00027     bdsBunch = new BDSBunchRing();
00028   else if(distribType == "eshell") 
00029     bdsBunch = new BDSBunchEShell();
00030   else if(distribType == "gausstwiss") 
00031     bdsBunch = new BDSBunchTwiss();
00032   else if(distribType == "halo") 
00033     bdsBunch = new BDSBunchHalo();
00034   else if(distribType == "userfile")
00035     bdsBunch = new BDSBunchUserFile();
00036   else if(distribType == "composite")
00037     bdsBunch = new BDSBunchComposite();
00038   else if(distribType == "ptc") 
00039     bdsBunch = new BDSBunchPtc(); 
00040   else {
00041     G4cerr << "distribType not found " << distribType << G4endl;
00042     exit(1);
00043   }
00044   return bdsBunch;
00045 }

Generated on 28 Jun 2015 for BDSIM by  doxygen 1.4.7