package androidx.constraintlayout.solver.widgets.analyzer; import c.d.b.a.a; import java.util.ArrayList; import java.util.List; public class DependencyNode implements Dependency { public boolean delegateToWidgetRun = false; public List dependencies = new ArrayList(); public int margin; public DimensionDependency marginDependency = null; public int marginFactor = 1; public boolean readyToSolve = false; public boolean resolved = false; public WidgetRun run; public List targets = new ArrayList(); public Type type = Type.UNKNOWN; public Dependency updateDelegate = null; public int value; public enum Type { UNKNOWN, HORIZONTAL_DIMENSION, VERTICAL_DIMENSION, LEFT, RIGHT, TOP, BOTTOM, BASELINE } public DependencyNode(WidgetRun widgetRun) { this.run = widgetRun; } public void addDependency(Dependency dependency) { this.dependencies.add(dependency); if (this.resolved) { dependency.update(dependency); } } public void clear() { this.targets.clear(); this.dependencies.clear(); this.resolved = false; this.value = 0; this.readyToSolve = false; this.delegateToWidgetRun = false; } public String name() { String debugName = this.run.widget.getDebugName(); Type type = this.type; StringBuilder P = a.P((type == Type.LEFT || type == Type.RIGHT) ? a.t(debugName, "_HORIZONTAL") : a.t(debugName, "_VERTICAL"), ":"); P.append(this.type.name()); return P.toString(); } public void resolve(int i) { if (!this.resolved) { this.resolved = true; this.value = i; for (Dependency dependency : this.dependencies) { dependency.update(dependency); } } } public String toString() { StringBuilder sb = new StringBuilder(); sb.append(this.run.widget.getDebugName()); sb.append(":"); sb.append(this.type); sb.append("("); sb.append(this.resolved ? Integer.valueOf(this.value) : "unresolved"); sb.append(") "); return sb.toString(); } @Override // androidx.constraintlayout.solver.widgets.analyzer.Dependency public void update(Dependency dependency) { for (DependencyNode dependencyNode : this.targets) { if (!dependencyNode.resolved) { return; } } this.readyToSolve = true; Dependency dependency2 = this.updateDelegate; if (dependency2 != null) { dependency2.update(this); } if (this.delegateToWidgetRun) { this.run.update(this); return; } DependencyNode dependencyNode2 = null; int i = 0; for (DependencyNode dependencyNode3 : this.targets) { if (!(dependencyNode3 instanceof DimensionDependency)) { i++; dependencyNode2 = dependencyNode3; } } if (dependencyNode2 != null && i == 1 && dependencyNode2.resolved) { DimensionDependency dimensionDependency = this.marginDependency; if (dimensionDependency != null) { if (dimensionDependency.resolved) { this.margin = this.marginFactor * dimensionDependency.value; } else { return; } } resolve(dependencyNode2.value + this.margin); } Dependency dependency3 = this.updateDelegate; if (dependency3 != null) { dependency3.update(this); } } }