00001 // $Header: /cvs/lcd/slic/include/LcioFileNamer.hh,v 1.9 2007/09/24 21:00:02 jeremy Exp $ 00002 00003 #ifndef SLIC_LCIOFILENAMER_HH 00004 #define SLIC_LCIOFILENAMER_HH 1 00005 00006 // slic 00007 #include "Module.hh" 00008 00009 // geant4 00010 #include "G4ThreeVector.hh" 00011 00012 // std 00013 #include <string> 00014 #include <vector> 00015 00016 namespace slic 00017 { 00018 00023 class LcioFileNamer : public Module 00024 { 00025 public: 00026 LcioFileNamer(); 00027 virtual ~LcioFileNamer() {} 00028 00029 public: 00030 00031 std::string makeFileName(std::vector<std::string>); 00032 00033 private: 00034 std::string getFieldValue(std::string); 00035 00036 std::string makeDefaultFileName(); 00037 00038 static std::string makeEventName(); 00039 00040 static std::string makeFileBasedName(); 00041 static std::string makeGPSName(); 00042 static std::string makeGunName(); 00043 00044 static std::string makeRunNumberString(); 00045 static std::string makeEventNumberString(); 00046 00047 static std::string getGeant4VersionString(); 00048 00049 private: 00050 00051 static std::string m_sep; 00052 std::vector<std::string> m_defaultFields; 00053 }; 00054 } 00055 00056 #endif
1.5.4