static Data.Automation GetAutomation(Data.Section.InType intype) { Data.Automation auto = null; switch (intype) { case Data.Section.InType.FadeIn: auto = Data.Automation.LinearFadeIn; break; case Data.Section.InType.KickIn: auto = Data.Automation.InstantUnMute; break; } return(auto); }
static Data.Automation GetAutomation(Data.Section.OutType outtype) { Data.Automation auto = null; switch (outtype) { case Data.Section.OutType.FadeOut: auto = Data.Automation.LinearFadeOut; break; case Data.Section.OutType.Mute: auto = Data.Automation.InstantMute; break; case Data.Section.OutType.LeaveIt: auto = Data.Automation.InstantUnMute; break; } return(auto); }
/// <summary> /// json 형식으로 되어있는 오토메이션 정보 해석 /// </summary> /// <param name="json"></param> /// <returns></returns> public static Data.Automation ParseAutomationFromJSON(JSONObject json) { var auto = new Data.Automation(); var param = json.GetField("param").str; auto.targetParam = parseEnum <Data.Automation.TargetParam>(param); json.GetField("data", (pointarr) => { var list = pointarr.list; var count = list.Count; for (int i = 0; i < count; i++) { var p = list[i]; var t = p.GetField("t").f; var v = p.GetField("v").f; auto.AddPoint(t, v); } }); return(auto); }