#include <Actionfield.h>
Public Member Functions | |
Action () | |
~Action () | |
Action (const Action &a) | |
bool | canBeApplied (const PfPose &robotPose, const std::vector< Object * > &objects) |
Public Attributes | |
std::string | name |
Object * | manipulatedObject |
unsigned int | objectIdx |
bool | joinAction |
std::vector< Polygon > | impactAreas |
std::vector< PotentialfieldTransformation * > | transformations |
ActionType | actionType |
PfPose | motionParameters |
double | time |
Protected Member Functions | |
bool | poseInsideImpactArea (const PfPose &robPose, const PfPose &objPose) |
Definition at line 40 of file Actionfield.h.
Action::Action | ( | ) |
Action::~Action | ( | ) |
Destructor
Definition at line 24 of file Actionfield.cpp.
References impactAreas, and transformations.
Action::Action | ( | const Action & | a | ) |
Copy-Constructor
a | Another action |
Definition at line 36 of file Actionfield.cpp.
References actionType, impactAreas, joinAction, manipulatedObject, name, and transformations.
Checks if this Action can be applied
robotPose | The current pose of the robot | |
objects | A list of objects, containing a current version of the manipulated object |
Definition at line 51 of file Actionfield.cpp.
References actionType, PfPose::hasProbabilityDistribution, MEASURE_OBJECT, MEASURE_SELF, MOVE_SELF, objectIdx, poseInsideImpactArea(), and PfPose::probabilityDistribution.
Referenced by FutureWorldModelGenerator::executeSingleTransformation().
bool Action::poseInsideImpactArea | ( | const PfPose & | robPose, | |
const PfPose & | objPose | |||
) | [inline, protected] |
Checks if a single pose is inside any of the robot's impact areas
robPose | The robot pose | |
objPose | The pose of an object |
Definition at line 122 of file Actionfield.cpp.
References impactAreas, PfPose::pos, PfVec::rotate(), and PfPose::rotation.
Referenced by canBeApplied().
The type of the action
Definition at line 56 of file Actionfield.h.
Referenced by Action(), canBeApplied(), Actionfield::computeActionValue(), FutureWorldModelGenerator::executeSingleTransformation(), Parser::parseAction(), and FutureWorldModelGenerator::transformWorldState().
std::vector<Polygon> Action::impactAreas |
The impact areas
Definition at line 52 of file Actionfield.h.
Referenced by Action(), Parser::parseAction(), poseInsideImpactArea(), and ~Action().
bool Action::joinAction |
Flag, true if the robot joins the action
Definition at line 50 of file Actionfield.h.
Referenced by Action(), FutureWorldModelGenerator::executeSingleTransformation(), Parser::parseAction(), and FutureWorldModelGenerator::transformWorldState().
The manipulated object
Definition at line 46 of file Actionfield.h.
Referenced by Action(), Actionfield::addManipulatedObject(), and Parser::parseAction().
Motion parameters resulting from some transformations
Definition at line 58 of file Actionfield.h.
Referenced by FutureWorldModelGenerator::executeSingleTransformation().
std::string Action::name |
The name of the action
Definition at line 44 of file Actionfield.h.
Referenced by Action(), and Parser::parseActionfield().
unsigned int Action::objectIdx |
Index of the manipulated object in a dynamicObjects field (for internal use)
Definition at line 48 of file Actionfield.h.
Referenced by Actionfield::addManipulatedObject(), canBeApplied(), Actionfield::computeActionValue(), FutureWorldModelGenerator::executeSingleTransformation(), and FutureWorldModelGenerator::transformWorldState().
double Action::time |
The time this action takes
Definition at line 60 of file Actionfield.h.
Referenced by FutureWorldModelGenerator::transformWorldState().
std::vector<PotentialfieldTransformation*> Action::transformations |
The transformations
Definition at line 54 of file Actionfield.h.
Referenced by Action(), Parser::parseAction(), FutureWorldModelGenerator::transformWorldState(), and ~Action().