CM3D2.SubScreen.Plugin.SubScreen.loadPresetXml C# (CSharp) Method

loadPresetXml() private method

private loadPresetXml ( ) : void
return void
        private void loadPresetXml()
        {
            if (!File.Exists(presetXmlFileName))
            {
                return;
            }
            var xdoc = XDocument.Load(presetXmlFileName);
            var presetNodes = xdoc.Descendants("preset");
            if (presetNodes.Count() == 0)
            {
                return;
            }
            presets = new Dictionary<string, SSPreset>();
            foreach (var presetNode in presetNodes)
            {
                SSPreset preset = new SSPreset();
                preset.dParams = new Dictionary<string, SSParam>();
                preset.name = presetNode.Attribute("name").Value;
                presets.Add(preset.name, preset);
                var paramNodes = presetNode.Descendants("param");
                foreach (var paramNode in paramNodes)
                {
                    SSParam param = new SSParam();
                    param.id = paramNode.Attribute("id").Value;
                    preset.dParams.Add(param.id, param);
                    bool? enabled = (bool?)paramNode.Attribute("value");
                    if (enabled.HasValue && (bool)enabled)
                    {
                        param.enabled = true;
                    }
                    var valueNodes = paramNode.Descendants("value");
                    if (valueNodes.Count() > 0)
                    {
                        param.dValues = new Dictionary<string, float>();
                        foreach (var valueNode in valueNodes)
                        {
                            param.dValues.Add(valueNode.Attribute("prop_Name").Value, (float)valueNode.Attribute("value"));
                        }
                    }
                }
            }
            var scenePresetNodes = xdoc.Descendants("scenePreset");
            if (scenePresetNodes.Count() == 0)
            {
                return;
            }
            scenePresets = new Dictionary<string, string>();
            foreach (var sceneNode in scenePresetNodes)
            {
                scenePresets.Add(
                    generateSceneKey(sceneNode.Attribute("level").Value, sceneNode.Attribute("bgName").Value, sceneNode.Attribute("yotogiName").Value)
                    , sceneNode.Value);
            }

        }