FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairShieldGenerator.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 // -------------------------------------------------------------------------
9 // ----- FairShieldGenerator header file -----
10 // ----- Created 15/09/06 by V. Friese -----
11 // -------------------------------------------------------------------------
12 
28 #ifndef FAIRSHIELDGENERATOR_H
29 #define FAIRSHIELDGENERATOR_H 1
30 
31 #include "FairGenerator.h" // for FairGenerator
32 
33 #include <Rtypes.h> // for FairShieldGenerator::Class, etc
34 #include <TString.h> // for TString
35 #include <iosfwd> // for ifstream
36 #include <map> // for map
37 
38 class TDatabasePDG;
40 class FairIon;
41 
43 {
44  public:
47 
51  FairShieldGenerator(const char* fileName);
52 
54  virtual ~FairShieldGenerator();
55 
60  virtual Bool_t ReadEvent(FairPrimaryGenerator* primGen);
61 
62  private:
63  std::ifstream* fInputFile;
64  const Char_t* fFileName;
65  TDatabasePDG* fPDG;
66 
69  void CloseInput();
70 
73  Int_t RegisterIons();
74 
76  std::map<TString, FairIon*> fIonMap;
77 
79  FairShieldGenerator& operator=(const FairShieldGenerator&);
80 
81  ClassDef(FairShieldGenerator, 1);
82 };
83 
84 #endif
virtual Bool_t ReadEvent(FairPrimaryGenerator *primGen)