org.cpsolver.studentsct

## Class StudentSctBBTest

- java.lang.Object
- - org.cpsolver.ifs.model.Model<Request,Enrollment>
  - - org.cpsolver.studentsct.StudentSctBBTest

-     public class StudentSctBBTest
      extends Model<Request,Enrollment>

  Online student sectioning test (using `BranchBoundSelection` selection). This class is used by the online student sectioning mock-up page.
  Usage:

       StudentSctBBTest test = new StudentSctBBTest(student); //student already has all his/her requests defined

       Solution sectioningSolution = test.getSolution(); //solution contains only one student (the given one) with his/her schedule

       Vector sectioningMessages = test.getMessages(); //sectioning messages (to be printed in the GUI).

  Version:
    StudentSct 1.3 (Student Sectioning)
    Copyright (C) 2007 - 2014 Tomáš Müller
    muller@unitime.org
    http://muller.unitime.org
    This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
    This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
    You should have received a copy of the GNU Lesser General Public License along with this library; if not see http://www.gnu.org/licenses/.
  Author:
    Tomáš Müller

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `StudentSctBBTest.Message` Sectioning message

  - ### Field Summary

    - ### Fields inherited from class org.cpsolver.ifs.model.Model

      `sDoubleFormat, sPercentageFormat, sTimeFormat`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `StudentSctBBTest(Student student)` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `List<StudentSctBBTest.Message>` | `getMessages()` Return a list of messages (`StudentSctBBTest.Message` objects) from the sectioning of the given student
    `Solution<Request,Enrollment>` | `getSolution()` Compute and return the sectioning solution.
    `Student` | `getStudent()` Return the given student

    - ### Methods inherited from class org.cpsolver.ifs.model.Model

      `addConstraint, addCriterion, addGlobalConstraint, addModelListener, addVariable, afterAssigned, afterAssigned, afterUnassigned, afterUnassigned, assignedVariables, assignedVariables, beforeAssigned, beforeAssigned, beforeUnassigned, beforeUnassigned, bestUnassignedVariables, bestUnassignedVariables, clearAssignmentContexts, clearBest, conflictConstraints, conflictValues, conflictValues, constraints, countConstraints, countGlobalConstraints, countVariables, createAssignmentContexts, createInheritedAssignment, createReference, getBestPerturbations, getBestUnassignedVariables, getBestValue, getCriteria, getCriterion, getDefaultAssignment, getEmptyAssignment, getExtendedInfo, getExtendedInfo, getInfo, getInfo, getInfo, getInfo, getInfoProviders, getModelListeners, getPerc, getPercRev, getTotalValue, getTotalValue, getTotalValue, getTotalValue, globalConstraints, inConflict, inConflict, init, invalidateVariablesWithInitialValueCache, modelListenerOfType, nrAssignedVariables, nrAssignedVariables, nrUnassignedVariables, nrUnassignedVariables, perturbVariables, perturbVariables, perturbVariables, perturbVariables, perturbVariables, removeConstraint, removeCriterion, removeCriterion, removeGlobalConstraint, removeModelListener, removeReference, removeVariable, restoreBest, restoreBest, restoreBest, saveBest, saveBest, setBestValue, setDefaultAssignment, toString, toString, unassignedHardConstraints, unassignedVariables, unassignedVariables, variables, variablesWithInitialValue, weaken`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### StudentSctBBTest

          public StudentSctBBTest(Student student)

      Constructor
      Parameters:
        `student` - a student to be sectioned

  - ### Method Detail

    - #### getStudent

          public Student getStudent()

      Return the given student
      Returns:
        selected student

    - #### getSolution

          public Solution<Request,Enrollment> getSolution()

      Compute and return the sectioning solution. It contains only the given student with his/her schedule
      Returns:
        current solution

    - #### getMessages

          public List<StudentSctBBTest.Message> getMessages()

      Return a list of messages (`StudentSctBBTest.Message` objects) from the sectioning of the given student
      Returns:
        enrollment messages