## Uses of Class
org.cpsolver.coursett.constraint.JenrlConstraint

- Packages that use JenrlConstraint
  Package | Description
  --- | ---
  org.cpsolver.coursett.criteria | University Course Timetabling: Criteria.
  org.cpsolver.coursett.criteria.additional | University Course Timetabling: Additional (Experimental) Criteria.
  org.cpsolver.coursett.model | University Course Timetabling: Model.

- - ### Uses of JenrlConstraint in org.cpsolver.coursett.criteria

    Methods in org.cpsolver.coursett.criteria with parameters of type JenrlConstraint
    Modifier and Type | Method and Description
    --- | ---
    `void` | StudentConflict.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `protected double` | StudentConflict.`jointEnrollment(JenrlConstraint jenrl)`
    `protected double` | StudentConflict.`jointEnrollment(JenrlConstraint jenrl, Placement p1, Placement p2)`

  - ### Uses of JenrlConstraint in org.cpsolver.coursett.criteria.additional

    Methods in org.cpsolver.coursett.criteria.additional with parameters of type JenrlConstraint
    Modifier and Type | Method and Description
    --- | ---
    `void` | ImportantStudentConflict.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `void` | InstructorStudentConflict.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `void` | QuadraticStudentConflict.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `void` | StudentMinimizeDaysOfWeek.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `void` | StudentMinimizeScheduleHoles.`incJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint jenrl, double studentWeight, Double conflictPriority, Student student)`
    `protected double` | ImportantStudentConflict.`jointEnrollment(JenrlConstraint jenrl)`
    `protected double` | InstructorStudentConflict.`jointEnrollment(JenrlConstraint jenrl)` Only count students that are instructors assigned to one of the two classes and enrolled in the other.
    `protected double` | QuadraticStudentConflict.`jointEnrollment(JenrlConstraint jenrl)`
    `protected double` | StudentMinimizeDaysOfWeek.`jointEnrollment(JenrlConstraint jenrl)`
    `protected double` | StudentMinimizeScheduleHoles.`jointEnrollment(JenrlConstraint jenrl)`
    `protected double` | StudentMinimizeDaysOfWeek.`jointEnrollment(JenrlConstraint jenrl, Placement p1, Placement p2)`
    `protected double` | StudentMinimizeScheduleHoles.`jointEnrollment(JenrlConstraint jenrl, Placement p1, Placement p2)`

  - ### Uses of JenrlConstraint in org.cpsolver.coursett.model

    Methods in org.cpsolver.coursett.model that return JenrlConstraint
    Modifier and Type | Method and Description
    --- | ---
    `JenrlConstraint` | Lecture.`jenrlConstraint(Lecture another)` All JENRL constraints of this lecture

    Methods in org.cpsolver.coursett.model that return types with arguments of type JenrlConstraint
    Modifier and Type | Method and Description
    --- | ---
    `Set<JenrlConstraint>` | Lecture.LectureContext.`activeJenrls()` Active jenrl constraints (active mean that there is at least one student between its classes)
    `Set<JenrlConstraint>` | Lecture.`activeJenrls(Assignment<Lecture,Placement> assignment)` Active jenrl constraints (active mean that there is at least one student between its classes)
    `List<JenrlConstraint>` | TimetableModel.`getJenrlConstraints()` The list of all jenrl constraints
    `List<JenrlConstraint>` | Lecture.`jenrlConstraints()` All JENRL constraints of this lecture

    Methods in org.cpsolver.coursett.model with parameters of type JenrlConstraint
    Modifier and Type | Method and Description
    --- | ---
    `void` | Lecture.`addActiveJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint constr)` Add active jenrl constraint (active mean that there is at least one student between its classes)
    `void` | Lecture.LectureContext.`addActiveJenrl(JenrlConstraint constr)` Add active jenrl constraint (active mean that there is at least one student between its classes)
    `void` | Lecture.`removeActiveJenrl(Assignment<Lecture,Placement> assignment, JenrlConstraint constr)` Remove active jenrl constraint (active mean that there is at least one student between its classes)
    `void` | Lecture.LectureContext.`removeActiveJenrl(JenrlConstraint constr)` Remove active jenrl constraint (active mean that there is at least one student between its classes)