VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
readerWriterFile.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
14 
15 #pragma once
16 
17 #include "vrfutil/readerWriter.h"
18 #include "vrfutil/rwString.h"
19 #include <vlutil/vlFilename.h>
20 #include <mtl/mtlEnvironment.h>
21 
22 typedef std::map<DtlObj*, std::string> DtlObjStringMap;
23 
25 class DtFilename;
26 
34 #include "vrfutil/vrfutilDefines.h"
36 {
37 public:
40 
42  DtReaderWriterFile(const DtString& name,
43  DtReaderWriterRegistry* parentRegistry = NULL);
44 
46  DtReaderWriterRegistry* parentRegistry = NULL);
47 
49  DtReaderWriterFile(const DtString& name, const DtReaderWriterFile& orig,
50  DtReaderWriterRegistry* parentRegistry = NULL);
51 
52  DtReaderWriterFile(const DtSymbolString& name, const DtReaderWriterFile& orig,
53  DtReaderWriterRegistry* parentRegistry = NULL);
54 
57  DtReaderWriterFile& operator=(const DtFilename& orig);
58 
60  virtual ~DtReaderWriterFile();
61 
63  DtReaderWriterFile* clone(const DtString& name,
64  DtReaderWriterRegistry* parentRegistry = NULL);
65 
66  DtReaderWriterFile* clone(const DtSymbolString& name,
67  DtReaderWriterRegistry* parentRegistry = NULL);
68 
71  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
72  const DtVariableBindingsList& variableBindings);
73 
75  virtual bool saveFile(const DtFilename& filename);
76 
78  virtual bool loadFile(const DtReaderWriter::SearchPaths& searchPaths,
79  const DtVariableBindingsList& variableBindings, DtlObjStringMap* commentMap = NULL);
80 
83  virtual void putSelf(std::string& fp, int indentLevel,
84  bool writeUnspecified, const DtFilename& path);
85 
87  virtual void setObjectToReadAndWrite(DtReaderWriter* object);
89  virtual const DtReaderWriter& objectToReadAndWrite() const;
90 
92  static const DtFilename& appPath();
93 
101  virtual void setFilename(const DtString& filename);
102 
107  virtual void setFilename(const DtString& filename, const DtString& unsubstitutedFilename);
108 
112  virtual const DtString& filename() const;
113 
115  virtual DtString unsubstitutedFilename() const;
116 
118  virtual void setUnsubstitudedFilename(const DtString& f);
119 
121  virtual const DtFilename& filenameLastReadIn() const;
122 
127  virtual void setFileReadOnly(bool readOnly = true);
128  virtual bool fileReadOnly() const;
129 
133  virtual const char* readerWriterType() const;
134 
136  virtual void substitute(const DtVariableBindingsList& variableBindings);
137 
139  bool operator==(const DtReaderWriterFile&) const;
140 
141  static DtFilename findHighestPriorityFile(const DtFilename& filename,
142  const DtReaderWriter::SearchPaths& searchPaths, bool warnOnNotFound = true);
143  static FILE* loadHighestPriorityFile(const DtFilename& filename,
144  const DtReaderWriter::SearchPaths& searchPaths, bool warnOnNotFound = true);
145  static FILE* loadHighestPriorityFile(const DtFilename& filename,
146  const DtReaderWriter::SearchPaths& searchPaths, DtFilename& successfulPath,
147  bool warnOnNotFound = true);
148 
150  static DtFilename createPathFragment(const DtFilename& filename,
151  const DtReaderWriter::SearchPaths& searchPaths);
152 
155  static std::vector<DtFilename> findFilesByExtension(
156  const DtString& path, const DtString& extension);
157 
158 protected:
159 
163  bool getFilenameToWrite(const DtFilename& path, const DtFilename& filename,
164  DtFilename& filenameToWrite) const;
165 
166 protected:
172 };
173 

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)