LEMUR Packages: ompl_lemur or_lemur pr_bgl prpy_lemur
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Groups Pages
Classes | Public Types | Public Member Functions | List of all members
or_lemur::FamilyModule Class Reference

#include <module_family.h>

Inheritance diagram for or_lemur::FamilyModule:

Classes

struct  Family
 

Public Types

typedef boost::shared_ptr< Set > SetPtr
 
typedef std::pair< std::set
< SetPtr >, SetPtr > 
Relation
 
typedef boost::function< bool(const
std::vector< OpenRAVE::dReal >
&values)> 
Indicator
 

Public Member Functions

 FamilyModule (OpenRAVE::EnvironmentBasePtr penv)
 
std::string GetInstanceId ()
 
void SetCostPerIlc (double cost_per_ilc)
 
int main (const std::string &cmd)
 
void Destroy ()
 
std::string GetFamilyId ()
 
SetPtr GetCurrentSet ()
 
SetPtr GetSetFromExpression (std::string input)
 
SetPtr GetSet (std::string literal)
 
void Let (std::string literal, SetPtr set)
 
void Del (std::string literal)
 
std::string GetHeaderFromSet (SetPtr set)
 
SetPtr GetSetFromHeader (std::string set_header)
 
Family GetCurrentFamily (std::set< SetPtr > sets_ext=std::set< SetPtr >())
 
std::map< SetPtr, std::pair
< double, Indicator > > 
GetIndicators (const Family &family)
 
std::map< SetPtr, std::string > GetCanonicalNames (const Family &family)
 
bool CmdGetInstanceId (std::ostream &soutput, std::istream &sinput)
 
bool CmdGetRobotName (std::ostream &soutput, std::istream &sinput)
 
bool CmdSetCostPerIlc (std::ostream &soutput, std::istream &sinput)
 
bool CmdGetFamilyId (std::ostream &soutput, std::istream &sinput)
 
bool CmdLet (std::ostream &soutput, std::istream &sinput)
 
bool CmdNamesOf (std::ostream &soutput, std::istream &sinput)
 
bool CmdPrintCurrentFamily (std::ostream &soutput, std::istream &sinput)
 
bool CmdGetHeaderFromSet (std::ostream &soutput, std::istream &sinput)
 

Detailed Description

This is tied to a particular robot instance

the job of the family object is to maintain/deduplicate canonical names for linkdata objects, save/load to disk, etc

it's either loaded from disk, or it isnt!

this maintains pointers to sets sets persist if they're named, or if other people own pointers to them

a family is a set of sets bound to a particular robot (for now)

NOTE: The current set includes all robot self and environment inter-link collisions, with the following known differences:


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