16 #include <boost/signals.hpp>
17 #include <boost/unordered_set.hpp>
24 class DtCacheSettingsRecord;
30 class DtRecordSettingsBackupInterface;
84 virtual bool getCachedNodeFile(
const std::string& filePathIn,
85 const FilePathList& paths, std::string& cachedFilePathOut,
90 virtual bool getCachedImageFile(
const std::string& filePathIn,
91 const FilePathList& paths, std::string& cachedFilePathOut,
95 virtual void setCachingEnabled(
bool flag);
98 virtual bool acceleratedCachingEnabled()
const;
104 virtual void setCompressTextures(
bool compress);
107 virtual bool compressTexturesEnabled()
const;
110 virtual void releaseResources();
113 virtual void clearAccelerationCache();
116 virtual void setInstancingEnabled(
bool enabled);
119 virtual bool instancingEnabled()
const;
122 bool clearInstancesOnNewScene()
const;
125 void setClearInstancesOnNewScene(
bool clearInstances);
128 void clearInstancingCache();
134 void flushInstanceCache(
bool multipass,
bool flushNodes,
135 bool flushTextures,
bool flushImages);
139 unsigned int flushCycleCount();
142 virtual void ts_clearInstancingCache();
152 virtual void getSplitRecord(std::vector<makArchives::DtCacheSettingsRecord>& rec,
153 std::vector<std::string>& fileNames) {};
161 void loadDefaults(
bool loadOnlyFactorySettings =
false);
164 void saveAsDefaults();
167 void exportSettings(
const std::string& fileName);
170 void importSettings(
const std::string& fileName);
173 virtual ExcludedExtensions& excludedExtensions();
176 inline bool isExcludedExtension(
const std::string& ext)
const
178 return ts_isExcludedExtension(ext);
183 return mySettingsBackup;
188 return mySettingsBackup;
198 virtual void autoSaveDefaultsIfNeeded();
201 virtual bool ts_isExcludedExtension(
const std::string& ext)
const;
204 virtual void ts_flushInstancingCache(
bool multiPass,
205 bool flushNodes,
bool flushTextures,
bool flushImages);
209 virtual void addExcludedExtension(
const std::string &ext);
213 virtual void removeExcludedExtension(
const std::string &ext);
222 virtual bool save(
const std::string& origFilename,
223 const std::string& cachedFilename,
bool optimize);