/// <summary> /// Constructor for entries suppression. /// </summary> /// <param name="plan"></param> /// <param name="entries"></param> /// <param name="highestPriority"></param> public PlanOperation(Plan plan, IEnumerable <ISkillLevel> skillsToRemove, IEnumerable <PlanEntry> allEntriesToRemove, IEnumerable <PlanEntry> removablePrerequisites) { m_plan = plan; m_type = (skillsToRemove.IsEmpty() ? PlanOperations.None : PlanOperations.Suppression); m_skillsToRemove.AddRange(skillsToRemove); m_allEntriesToRemove.AddRange(allEntriesToRemove); m_removablePrerequisites.AddRange(removablePrerequisites); }
/// <summary> /// Constructor for entries addition. /// </summary> /// <param name="plan"></param> /// <param name="entries"></param> /// <param name="lowestPrerequisitesPriority"></param> public PlanOperation(Plan plan, IEnumerable <ISkillLevel> skillsToAdd, IEnumerable <PlanEntry> allEntriesToAdd, int lowestPrerequisitesPriority) { m_plan = plan; m_type = (skillsToAdd.IsEmpty() ? PlanOperations.None : PlanOperations.Addition); m_skillsToAdd.AddRange(skillsToAdd); m_allEntriesToAdd.AddRange(allEntriesToAdd); m_highestPriorityForAddition = lowestPrerequisitesPriority; }