com.penalara.ghc.jsonghcfile.engineghcfile.OptimizationWeights Maven / Gradle / Ivy
Show all versions of engineGHCFile Show documentation
package com.penalara.ghc.jsonghcfile.engineghcfile;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/**
* OptimizationWeights
*
* This indicates the weights that the weighting options will have for the engine optimisation process. The engine shall apply default values for elements that have not been specified.
*
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"timetableGaps",
"nonPreferredPositions",
"sessions",
"teachers"
})
public class OptimizationWeights {
/**
* TimetableGaps
*
* It contains options related to timetable-gaps weights.
*
*/
@JsonProperty("timetableGaps")
@JsonPropertyDescription("It contains\u00a0options\u00a0related\u00a0to\u00a0timetable-gaps\u00a0weights.")
private TimetableGaps timetableGaps;
/**
* NonPreferredPositionsOptimization
*
* It contains options related to allocation in non-preferred sections.
*
*/
@JsonProperty("nonPreferredPositions")
@JsonPropertyDescription("It contains\u00a0options\u00a0related\u00a0to\u00a0allocation\u00a0in\u00a0non-preferred\u00a0sections.")
private NonPreferredPositionsOptimization nonPreferredPositions;
/**
* SessionsOptimization
*
* It contains options related to optimisable conditions for sessions.
*
*/
@JsonProperty("sessions")
@JsonPropertyDescription("It contains options related to optimisable conditions for sessions.")
private SessionsOptimization sessions;
/**
* TeachersOptimization
*
* It contains options related to optimisable conditions for teachers.
*
*/
@JsonProperty("teachers")
@JsonPropertyDescription("It contains options related to optimisable conditions for teachers.")
private TeachersOptimization teachers;
/**
* TimetableGaps
*
* It contains options related to timetable-gaps weights.
*
*/
@JsonProperty("timetableGaps")
public TimetableGaps getTimetableGaps() {
return timetableGaps;
}
/**
* TimetableGaps
*
* It contains options related to timetable-gaps weights.
*
*/
@JsonProperty("timetableGaps")
public void setTimetableGaps(TimetableGaps timetableGaps) {
this.timetableGaps = timetableGaps;
}
/**
* NonPreferredPositionsOptimization
*
* It contains options related to allocation in non-preferred sections.
*
*/
@JsonProperty("nonPreferredPositions")
public NonPreferredPositionsOptimization getNonPreferredPositions() {
return nonPreferredPositions;
}
/**
* NonPreferredPositionsOptimization
*
* It contains options related to allocation in non-preferred sections.
*
*/
@JsonProperty("nonPreferredPositions")
public void setNonPreferredPositions(NonPreferredPositionsOptimization nonPreferredPositions) {
this.nonPreferredPositions = nonPreferredPositions;
}
/**
* SessionsOptimization
*
* It contains options related to optimisable conditions for sessions.
*
*/
@JsonProperty("sessions")
public SessionsOptimization getSessions() {
return sessions;
}
/**
* SessionsOptimization
*
* It contains options related to optimisable conditions for sessions.
*
*/
@JsonProperty("sessions")
public void setSessions(SessionsOptimization sessions) {
this.sessions = sessions;
}
/**
* TeachersOptimization
*
* It contains options related to optimisable conditions for teachers.
*
*/
@JsonProperty("teachers")
public TeachersOptimization getTeachers() {
return teachers;
}
/**
* TeachersOptimization
*
* It contains options related to optimisable conditions for teachers.
*
*/
@JsonProperty("teachers")
public void setTeachers(TeachersOptimization teachers) {
this.teachers = teachers;
}
}