11namespace tracktion {
inline namespace engine
18 case SettingID::audio_device_setup:
return "audio_device_setup";
19 case SettingID::audiosettings:
return "audiosettings";
20 case SettingID::addAntiDenormalNoise:
return "addAntiDenormalNoiseXXX";
21 case SettingID::autoFreeze:
return "autoFreeze";
22 case SettingID::autoTempoMatch:
return "AutoTempoMatch";
23 case SettingID::autoTempoDetect:
return "AutoTempoDetect";
24 case SettingID::automapVst:
return "AutomapVst";
25 case SettingID::automapNative:
return "AutomapNative";
26 case SettingID::automapGuids1:
return "AutomapGuids1";
27 case SettingID::automapGuids2:
return "AutomapGuids2";
28 case SettingID::cacheSizeSamples:
return "cacheSizeSamples";
29 case SettingID::clickTrackMidiNoteBig:
return "clickTrackMidiNoteBig";
30 case SettingID::clickTrackMidiNoteLittle:
return "clickTrackMidiNoteLittle";
31 case SettingID::clickTrackSampleSmall:
return "clickTrackSampleSmall";
32 case SettingID::clickTrackSampleBig:
return "clickTrackSampleBig";
33 case SettingID::crossfadeBlock:
return "crossfadeBlock";
34 case SettingID::compCrossfadeMs:
return "compCrossfadeMs";
35 case SettingID::countInMode:
return "countInMode";
36 case SettingID::customMidiControllers:
return "customMidiControllers";
37 case SettingID::deadMansPedal:
return "deadMansPedal";
38 case SettingID::cpu:
return "cpu";
39 case SettingID::defaultMidiOutDevice:
return "defaultMidiDevice";
40 case SettingID::defaultWaveOutDevice:
return "defaultWaveDevice";
41 case SettingID::defaultMidiInDevice:
return "defaultMidiInDevice";
42 case SettingID::defaultWaveInDevice:
return "defaultWaveInDevice";
43 case SettingID::externControlIn:
return "externControlIn";
44 case SettingID::externControlOut:
return "externControlOut";
45 case SettingID::externControlNum:
return "externControlNum";
46 case SettingID::externControlMain:
return "externControlMain";
47 case SettingID::externControlShowSelection:
return "externControlShowSelection";
48 case SettingID::externControlShowClipSlotSelection:
return "externControlShowClipSlotSelection";
49 case SettingID::externControlSelectionColour:
return "externControlSelectionColour";
50 case SettingID::externControlEnable:
return "externControlEnable";
51 case SettingID::externOscInputPort:
return "externOscInputPort";
52 case SettingID::externOscOutputPort:
return "externOscOutputPort";
53 case SettingID::externOscOutputAddr:
return "externOscOutputAddr";
54 case SettingID::filterControlMappingPresets:
return "FilterControlMappingPresets";
55 case SettingID::filterGui:
return "filterGui";
56 case SettingID::findExamples:
return "findExamples";
57 case SettingID::fitClipsToRegion:
return "fitClipsToRegion";
58 case SettingID::freezePoint:
return "freezePoint";
59 case SettingID::hasEnabledMidiDefaultDevs:
return "hasEnabledMidiDefaultDevs";
60 case SettingID::knownPluginList:
return "knownPluginList";
61 case SettingID::knownPluginList64:
return "knownPluginList64";
62 case SettingID::lameEncoder:
return "lameEncoder";
63 case SettingID::lastClickTrackLevel:
return "lastClickTrackLevel";
64 case SettingID::lastEditRender:
return "lastEditRender";
65 case SettingID::lowLatencyBuffer:
return "lowLatencyBuffer";
66 case SettingID::glideLength:
return "glideLength";
67 case SettingID::grooveTemplates:
return "GrooveTemplates";
68 case SettingID::MCUoneTouchRecord:
return "MCUoneTouchRecord";
69 case SettingID::midiin:
return "midiin";
70 case SettingID::midiout:
return "midiout";
71 case SettingID::midiEditorOctaves:
return "midiEditorOctaves";
72 case SettingID::midiProgramManager:
return "MidiProgramManager";
73 case SettingID::maxLatency:
return "maxLatency";
74 case SettingID::newMarker:
return "newMarker";
75 case SettingID::numThreadsForPluginScanning:
return "numThreadsForPluginScanning";
76 case SettingID::projectList:
return "projectList";
77 case SettingID::projects:
return "projects";
78 case SettingID::recentProjects:
return "recentProjects";
79 case SettingID::renameClipRenamesSource:
return "renameClipRenamesSource";
80 case SettingID::renameMode:
return "renameMode";
81 case SettingID::renderRecentFilesList:
return "renderRecentFilesList";
82 case SettingID::safeRecord:
return "safeRecord";
83 case SettingID::resetCursorOnPlay:
return "resetCursorOnPlay";
84 case SettingID::retrospectiveRecord:
return "retrospectiveRecord";
85 case SettingID::reWireEnabled:
return "ReWireEnabled";
86 case SettingID::simplifyAfterRecording:
return "simplifyAfterRecording";
87 case SettingID::sendControllerOffMessages:
return "sendControllerOffMessages";
88 case SettingID::tempDirectory:
return "tempDirectory";
89 case SettingID::snapCursor:
return "snapCursor";
90 case SettingID::trackExpansionMode:
return "trackExpansionMode";
91 case SettingID::use64Bit:
return "use64Bit";
92 case SettingID::xFade:
return "xFade";
93 case SettingID::xtCount:
return "xtCount";
94 case SettingID::xtIndices:
return "xtIndices";
95 case SettingID::virtualmididevices:
return "virtualmididevices";
96 case SettingID::virtualmidiin:
return "virtualmidiin";
97 case SettingID::midiScanIntervalSeconds:
return "midiScanIntervalSeconds";
98 case SettingID::useSeparateProcessForScanning:
return "useSeparateProcessForScanning";
99 case SettingID::useRealtime:
return "useRealtime";
100 case SettingID::wavein:
return "wavein";
101 case SettingID::waveout:
return "waveout";
102 case SettingID::windowsDoubleClick:
return "windowsDoubleClick";
104 case SettingID::renderFormat:
return "renderFormat";
105 case SettingID::trackRenderSampRate:
return "trackRenderSampRate";
106 case SettingID::trackRenderBits:
return "trackRenderBits";
107 case SettingID::bypassFilters:
return "bypassFilters";
108 case SettingID::markedRegion:
return "markedRegion";
109 case SettingID::editClipRenderSampRate:
return "editClipRenderSampRate";
110 case SettingID::editClipRenderBits:
return "editClipRenderBits";
111 case SettingID::editClipRenderDither:
return "editClipRenderDither";
112 case SettingID::editClipRealtime:
return "editClipRealtime";
113 case SettingID::editClipRenderStereo:
return "editClipRenderStereo";
114 case SettingID::editClipRenderNormalise:
return "editClipRenderNormalise";
115 case SettingID::editClipRenderRMS:
return "editClipRenderRMS";
116 case SettingID::editClipRenderRMSLevelDb:
return "editClipRenderRMSLevelDb";
117 case SettingID::editClipRenderPeakLevelDb:
return "editClipRenderPeakLevelDb";
118 case SettingID::editClipPassThroughFilters:
return "editClipPassThroughFilters";
119 case SettingID::exportFormat:
return "exportFormat";
120 case SettingID::renderOnlySelectedClips:
return "renderOnlySelectedClips";
121 case SettingID::renderOnlyMarked:
return "renderOnlyMarked";
122 case SettingID::renderNormalise:
return "renderNormalise";
123 case SettingID::renderRMS:
return "renderRMS";
124 case SettingID::renderRMSLevelDb:
return "renderRMSLevelDb";
125 case SettingID::renderPeakLevelDb:
return "renderPeakLevelDb";
126 case SettingID::renderTrimSilence:
return "renderTrimSilence";
127 case SettingID::renderSampRate:
return "renderSampRate";
128 case SettingID::renderStereo:
return "renderStereo";
129 case SettingID::renderBits:
return "renderBits";
130 case SettingID::renderDither:
return "renderDither";
131 case SettingID::quality:
return "quality";
132 case SettingID::addId3Info:
return "addId3Info";
133 case SettingID::realtime:
return "realtime";
134 case SettingID::passThroughFilters:
return "passThroughFilters";
135 case SettingID::invalid:
return "invalid";
136 case SettingID::addAcidMetadata:
return "addAcidMetadata";
142juce::File PropertyStorage::getAppCacheFolder()
144 return getAppPrefsFolder();
147juce::File PropertyStorage::getAppPrefsFolder()
151 if (! f.isDirectory())
164 if (propertiesFile ==
nullptr)
166 auto file = getAppPrefsFolder().
getChildFile (
"Settings.xml");
175 return *propertiesFile;
179void PropertyStorage::removeProperty (
SettingID setting)
181 getPropertiesFile().
removeValue (PropertyStorage::settingToString (setting));
186 return getPropertiesFile().
getValue (PropertyStorage::settingToString (setting), defaultValue);
191 getPropertiesFile().
setValue (PropertyStorage::settingToString (setting), value);
201 getPropertiesFile().
setValue (PropertyStorage::settingToString (setting), &xml);
207 getPropertiesFile().
removeValue (PropertyStorage::settingToString (setting) +
"_" + item);
212 return getPropertiesFile().
getValue (PropertyStorage::settingToString (setting) +
"_" + item, defaultValue);
217 getPropertiesFile().
setValue (PropertyStorage::settingToString (setting) +
"_" + item, value);
227 getPropertiesFile().
setValue (PropertyStorage::settingToString (setting) +
"_" + item, &xml);
240juce::File PropertyStorage::getDefaultLoadSaveDirectory (ProjectItem::Category)
File getChildFile(StringRef relativeOrAbsolutePath) const
userApplicationDataDirectory
static File JUCE_CALLTYPE getSpecialLocation(const SpecialLocationType type)
Result createDirectory() const
String getValue(StringRef keyName, const String &defaultReturnValue=String()) const noexcept
void setValue(StringRef keyName, const var &value)
void removeValue(StringRef keyName)
static String getFullUserName()
SettingID
A list of settings the engine will get and set.
StorageFormat storageFormat
int millisecondsBeforeSaving