18 #ifndef HLIDAC_PES_INSTANCES_READER_H
19 #define HLIDAC_PES_INSTANCES_READER_H
47 std::vector<RoboticLine> dataset()
const {
return mLines; }
48 std::vector<PrecalculatedMapping> precalculatedMappings()
const {
return mMapping; }
130 void checkCollision(
const std::pair<ActivityMode*, ActivityMode*>& col)
const;
void fillInterRobotOperations(PrecalculatedMapping &mapping, const RoboticLine &line)
It fills the searching maps related to the robot synchronizations and spatial compatibility.
void fillCollisionZones(PrecalculatedMapping &mapping, const RoboticLine &line)
It fills the maps for fast searching of colliding movements or locations.
void checkOperation(InterRobotOperation *op) const
Checks that each time lag or spatial compatibility pair is defined for two different robots...
An instance of this class checks a dataset instance.
Instance of this class includes all the data structures and methods related to a robot.
Collection of movements between two static activities.
void fillActivitiesRelations(PrecalculatedMapping &mapping, const RoboticLine &line)
Maps related to activities relations (precedences) are filled.
The class is intended to be used by users for the dataset parsing and checking.
void checkStaticActivity(StaticActivity *sa) const
It checks the activity duration and whether the input power of power saving modes is defined...
std::string mDatasetName
Name of the dataset.
std::string mDatasetDescription
Description of the dataset.
The structures and methods suitable for fast searching in the data structure of the robotic cell...
void checkDynamicActivity(DynamicActivity *da) const
Verifies the activity duration and convexity of energy functions.
void checkCollision(const std::pair< ActivityMode *, ActivityMode * > &col) const
Checks that the collision is defined for two different robots.
Collection of locations in which a robot operation (or waiting) can be performed. ...
void checkInstance() const
The method verifies the correctness of the instance. If incorrect, then an exception is thrown...
void checkRobotGraph(Robot *r) const
It checks that there is a hamiltonian circuit in the robot graph.
std::vector< PrecalculatedMapping > mMapping
Precalculated mappings suitable for fast searching in the data structures of robotic cells...
const RoboticLine & mLine
A reference to a robotic cell that will be tested for inconsistencies.
The inter-robot operation corresponding to the workpiece/weldment handling.
std::vector< RoboticLine > mLines
Robotic cells read from the dataset.
void completeFillingOfMapping()
A wrapper method calling all the related filling methods.
void fillDiscretizedEnergyFunctions(PrecalculatedMapping &mapping, const RoboticLine &line)
Energy functions are piece-wise linearized, and vectors of coordinates are written to the mapping...
The robotic cell corresponds to an instance of this class.
The structure contains the maps for fast searching in the robotic cell.
void readInstances()
It processes the dataset specified in Settings::DATASET_FILE.
The file contains various classes devoted to abstract representation of the robotic cell...
InstanceChecker(const RoboticLine &line)
Constructs an instance checker.