18 #ifndef HLIDAC_PES_SOLUTION_CHECKER_H
19 #define HLIDAC_PES_SOLUTION_CHECKER_H
The base class incorporating common properties of robot operations and movements. ...
The structure representing a solution found by an algorithm.
void checkDynamicActivities()
Checks durations of dynamic activities.
void checkCriterion()
Checks the calculation of the criterion.
std::vector< std::string > mErrorMsg
Error messages describing the reasons why the solution is invalid.
SolutionChecker(const RoboticLine &l, const PrecalculatedMapping &m, const Solution &sol)
Initialization of the solution checker.
void checkStaticActivities()
Checks durations of static activities.
An instance of this class is devoted to the solution checking.
The structures and methods suitable for fast searching in the data structure of the robotic cell...
std::vector< std::string > errorMessages() const
It returns error message(s) describing why the solution is invalid.
Various auxiliary functions used across the program.
bool checkAll()
It calls the private member methods to verify the solution.
void checkGlobalConstraints()
Verifies that time lags and spatial compatibility are not violated.
PrecalculatedMapping mMapping
Precalculated mapping constructed for the robotic cell.
std::array< uint32_t, 2 > extractModes(Activity *a1, Activity *a2) const
Auxiliary method that extracts selected modes (location/movement identifications) for activities a1 a...
void checkCollisionZones()
Verifies that a collision does not occur in the solution.
void checkScheduleContinuity()
Checks whether each robot path is closed and hamiltonian (each static activity is visited just once)...
Solution mSolution
The solution to be checked.
void checkProductionCycleTime()
Checks whether the robot, i.e. production, cycle time is met.
A representation of the solution that is algorithm independent.
The robotic cell corresponds to an instance of this class.
The structure contains the maps for fast searching in the robotic cell.
RoboticLine mLine
The data structure of the robotic cell for which the solution is verified.
The file contains various classes devoted to abstract representation of the robotic cell...