static private IEnumerable <ConductorOrder> InternalOrder_FlickerValue <T>(ConductedValue <T> item, T first, T second) { item.SetValue(first); yield return(item.Order_Break()); item.SetValue(second); }
static private IEnumerable <ConductorOrder> InternalOrder_FlickerValue <T>(ConductedValue <T> item, T value) { T old_value = item.GetValue(); item.SetValue(value); yield return(item.Order_Break()); item.SetValue(old_value); }
static public void SetOrder <T>(this ConductedValue <T> item, IEnumerable <ConductorOrder> orders) { item.SetOrder(new ConductorOrder_Sequential(orders)); }
static public void SetOrder <T>(this ConductedValue <T> item, Operation <IEnumerable <ConductorOrder>, ConductedValue <T> > operation) { item.SetOrder(new ConductorOrder_Sequential(operation(item))); }
static public ConductorOrder Order_SetValue <T>(this ConductedValue <T> item, Operation <T> operation) { return(new ConductorOrder_Do(() => item.SetValue(operation()))); }
static public ConductorOrder Order_FlickerValue <T>(this ConductedValue <T> item, T value) { return(new ConductorOrder_Sequential(InternalOrder_FlickerValue(item, value))); }
static public ConductorOrder Order_FlickerValue <T>(this ConductedValue <T> item, T first, T second) { return(new ConductorOrder_Sequential(InternalOrder_FlickerValue(item, first, second))); }
static public ConductorOrder Order_SetValue <T>(this ConductedValue <T> item, T value) { return(item.Order_SetValue(() => value)); }
static public ConductorOrder Order_Break <T>(this ConductedValue <T> item) { return(new ConductorOrder_Break()); }
static public ConductorOrder Order_WaitFor <T>(this ConductedValue <T> item, TemporalEvent temporal_event) { return(new ConductorOrder_WaitFor(temporal_event)); }
static public ConductorOrder Order_WaitFor <T>(this ConductedValue <T> item, Duration duration) { return(new ConductorOrder_WaitFor(duration)); }
static public ConductorOrder Order_WaitFor <T>(this ConductedValue <T> item, Duration duration, TimeSource time_source) { return(new ConductorOrder_WaitFor(duration, time_source)); }
static public ConductorOrder Order_WaitFor <T>(this ConductedValue <T> item, TemporalDuration temporal_duration) { return(new ConductorOrder_WaitFor(temporal_duration)); }