MINT2
ParsedParameterFileList.h
Go to the documentation of this file.
1 #ifndef PARSED_PARAMETER_FILE_LIST_HH
2 #define PARSED_PARAMETER_FILE_LIST_HH
3 // author: Jonas Rademacker (Jonas.Rademacker@bristol.ac.uk)
4 // status: Mon 9 Feb 2009 19:17:56 GMT
5 
6 #include <map>
7 #include <string>
8 #include <iostream>
10 
11 /* It's a singleton - there can only be one instance
12  of ParsedParameterFileList in any program.
13 */
14 
15 namespace MINT{
16 
17 class ParsedParameterFile; // forward declaration.
18 
22  protected:
23  std::map<std::string, ParsedParameterFile*> _fileMap;
24  std::map<const std::istream*, ParsedParameterFile*> _streamMap;
25  void deleteFileMap();
26  void deleteStreamMap();
27  void deleteAll();
28  public:
30 
31  ParsedParameterFile* getParsedFile(const std::string& fname);
32  ParsedParameterFile* getParsedFile(std::istream& is);
33 
34  void deleteFile(const std::string& fname);
35  void deleteStream(const std::istream& istream);
36 
37  ParsedParameterFile* reloadFile(const std::string& id);
38 
40  deleteAll();
41  }
42 };
43 }//namespace MINT
44 #endif
45 //
void deleteStream(const std::istream &istream)
static ParsedParameterFileList * ptr
std::map< const std::istream *, ParsedParameterFile * > _streamMap
void deleteFile(const std::string &fname)
std::map< std::string, ParsedParameterFile * > _fileMap
ParsedParameterFile * reloadFile(const std::string &id)
static ParsedParameterFileList * getMe()
ParsedParameterFile * getParsedFile(const std::string &fname)