13 #include <boost/signals.hpp>
14 #include <boost/unordered_set.hpp>
21 class DtCacheSettingsRecord;
27 class DtRecordSettingsBackupInterface;
83 virtual bool getCachedNodeFile(
const std::string& filePathIn,
84 const FilePathList& paths, std::string& cachedFilePathOut,
89 virtual bool getCachedImageFile(
const std::string& filePathIn,
90 const FilePathList& paths, std::string& cachedFilePathOut,
94 virtual void setCachingEnabled(
bool flag);
97 virtual bool acceleratedCachingEnabled()
const;
103 virtual void setCompressTextures(
bool compress);
106 virtual bool compressTexturesEnabled()
const;
109 virtual void releaseResources();
112 virtual void clearAccelerationCache();
115 virtual void setInstancingEnabled(
bool enabled);
118 virtual bool instancingEnabled()
const;
121 bool clearInstancesOnNewScene()
const;
124 void setClearInstancesOnNewScene(
bool clearInstances);
127 void clearInstancingCache();
133 void flushInstanceCache(
bool multipass,
bool flushNodes,
134 bool flushTextures,
bool flushImages);
138 unsigned int flushCycleCount();
141 virtual void ts_clearInstancingCache();
151 virtual void getSplitRecord(std::vector<makArchives::DtCacheSettingsRecord>& rec,
152 std::vector<std::string>& fileNames) {};
160 void loadDefaults(
bool loadOnlyFactorySettings =
false);
163 void saveAsDefaults();
166 void exportSettings(
const std::string& fileName);
169 void importSettings(
const std::string& fileName);
172 virtual ExcludedExtensions& excludedExtensions();
175 inline bool isExcludedExtension(
const std::string& ext)
const
177 return ts_isExcludedExtension(ext);
182 return mySettingsBackup;
187 return mySettingsBackup;
197 virtual void autoSaveDefaultsIfNeeded();
200 virtual bool ts_isExcludedExtension(
const std::string& ext)
const;
203 virtual void ts_flushInstancingCache(
bool multiPass,
204 bool flushNodes,
bool flushTextures,
bool flushImages);
208 virtual void addExcludedExtension(
const std::string &ext);
212 virtual void removeExcludedExtension(
const std::string &ext);
221 virtual bool save(
const std::string& origFilename,
222 const std::string& cachedFilename,
bool optimize);