public static bool DependsOn(this IVisitorVariables var, IVisitorVariables other) { if (var.Equals(other)) { return(false); } return(other.ProvidedVariables.Any(p => var.DependendtVariables.Contains(p))); }
public static void AddOrReplace(this IList <IVisitorVariables> vars, IVisitorVariables value, double blend = 0) { var currentIndex = vars.IndexOf(value); if (currentIndex > -1) { vars[currentIndex] = blend > 0 ? new CompositeVariable(vars[currentIndex], value, blend) : value; return; } vars.Add(value); }
public CompositeVariable(IVisitorVariables var1, IVisitorVariables var2, double var2Prob) { Var1 = var1; Var2 = var2; Var2Prob = var2Prob; }