solver  1.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
InstancesReader Class Reference

The class is intended to be used by users for the dataset parsing and checking. More...

#include <InstancesReader.h>

+ Collaboration diagram for InstancesReader:

Public Member Functions

void readInstances ()
 It processes the dataset specified in Settings::DATASET_FILE.
 
std::vector< RoboticLinedataset () const
 
std::vector< PrecalculatedMappingprecalculatedMappings () const
 
std::string datasetName () const
 
std::string datasetDescription () const
 

Private Member Functions

void completeFillingOfMapping ()
 A wrapper method calling all the related filling methods.
 
void fillActivitiesRelations (PrecalculatedMapping &mapping, const RoboticLine &line)
 Maps related to activities relations (precedences) are filled. More...
 
void fillDiscretizedEnergyFunctions (PrecalculatedMapping &mapping, const RoboticLine &line)
 Energy functions are piece-wise linearized, and vectors of coordinates are written to the mapping. More...
 
void fillInterRobotOperations (PrecalculatedMapping &mapping, const RoboticLine &line)
 It fills the searching maps related to the robot synchronizations and spatial compatibility. More...
 
void fillCollisionZones (PrecalculatedMapping &mapping, const RoboticLine &line)
 It fills the maps for fast searching of colliding movements or locations. More...
 

Private Attributes

std::vector< RoboticLinemLines
 Robotic cells read from the dataset.
 
std::vector< PrecalculatedMappingmMapping
 Precalculated mappings suitable for fast searching in the data structures of robotic cells.
 
std::string mDatasetName
 Name of the dataset.
 
std::string mDatasetDescription
 Description of the dataset.
 

Detailed Description

The class is intended to be used by users for the dataset parsing and checking.

An instance of the InstancesReader class is responsible for the full process of the dataset processing, i.e. parsing, filling the data structures of robotic cells, checking the correctness of instances, and finally creating the mappings for fast searching by a key. However, a part of the work is carried out by XmlReader and InstanceChecker classes that help with XML parsing and instance checking, respectively.

See also
XmlReader, InstanceChecker

Definition at line 42 of file InstancesReader.h.

Member Function Documentation

void InstancesReader::fillActivitiesRelations ( PrecalculatedMapping mapping,
const RoboticLine line 
)
private

Maps related to activities relations (precedences) are filled.

Parameters
mappingA reference to the structure with precalculated mappings and data.
lineRobotic cell for which the mapping will be updated.

Definition at line 59 of file InstancesReader.cpp.

void InstancesReader::fillCollisionZones ( PrecalculatedMapping mapping,
const RoboticLine line 
)
private

It fills the maps for fast searching of colliding movements or locations.

Parameters
mappingA reference to the structure with precalculated mappings and data.
lineRobotic cell for which the mapping will be updated.

Definition at line 215 of file InstancesReader.cpp.

void InstancesReader::fillDiscretizedEnergyFunctions ( PrecalculatedMapping mapping,
const RoboticLine line 
)
private

Energy functions are piece-wise linearized, and vectors of coordinates are written to the mapping.

Parameters
mappingA reference to the structure with precalculated mappings and data.
lineRobotic cell for which the mapping will be updated.
Remarks
The functions are piece-wise linearized in a smart way, it means that the function segments are not equidistant but their lengths are carefully selected with respect to the second derivations and function errors.

Definition at line 92 of file InstancesReader.cpp.

void InstancesReader::fillInterRobotOperations ( PrecalculatedMapping mapping,
const RoboticLine line 
)
private

It fills the searching maps related to the robot synchronizations and spatial compatibility.

Parameters
mappingA reference to the structure with precalculated mappings and data.
lineRobotic cell for which the mapping will be updated.

Definition at line 155 of file InstancesReader.cpp.


The documentation for this class was generated from the following files: