コード例 #1
0
        public static SerializedChord Deserialize(string str)
        {
            SerializedChord ret = null;
            var             ser = new XmlSerializer(typeof(SerializedChord));

            using (var tr = new StringReader(str))
            {
                ret = (SerializedChord)ser.Deserialize(tr);
            }
            return(ret);
        }
コード例 #2
0
        public SerializedChord Serialize()
        {
            var ret = new SerializedChord();

            ret.TickLength = TickLength;
            ret.TimeLength = TimeLength;

            ret.Notes.AddRange(Notes.Select(x => new SerializedChordNote()
            {
                Fret = x.NoteFretDown, String = x.NoteString, Channel = x.Channel
            }));
            ret.Modifiers.AddRange(Modifiers.Select(x => new SerializedChordModifier()
            {
                Type = (int)x.ModifierType
            }));
            ret.RootNoteConfig = RootNoteConfig.GetIfNotNull(x => x.Clone());
            GetTunedChordNames(null).ForEach(x =>
                                             ret.Names.Add(x));
            return(ret);
        }