internal void AddDependency(Column baseColumn, Column computationColumn, bool isDirect) { Debug.Assert(baseColumn.ParentModel != null); Debug.Assert(computationColumn.ParentModel != null); AddDependency(_indirectDependencies, baseColumn, computationColumn); if (isDirect) { AddDependency(_directDependencies, baseColumn, computationColumn); baseColumn.TryMakeConcrete(); AddComputationColumn(_computationColumns, computationColumn.ParentModel, computationColumn); if (computationColumn.ParentModel.Depth < baseColumn.ParentModel.Depth) { AddComputationColumn(_aggregateColumns, baseColumn.ParentModel, computationColumn); } } }