g2o
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
g2o::BaseRobot Class Reference

#include <simulator.h>

Inheritance diagram for g2o::BaseRobot:
Inheritance graph
[legend]
Collaboration diagram for g2o::BaseRobot:
Collaboration graph
[legend]

Public Member Functions

 BaseRobot (World *world_, const std::string &name_)
 
void setWorld (World *world_)
 
Worldworld () const
 
const std::string & name () const
 
OptimizableGraphgraph () const
 
bool addSensor (BaseSensor *sensor)
 
const std::set< BaseSensor * > sensors ()
 
virtual void sense ()
 

Protected Attributes

World_world
 
std::set< BaseSensor * > _sensors
 
std::string _name
 

Detailed Description

Definition at line 83 of file simulator.h.

Constructor & Destructor Documentation

◆ BaseRobot()

g2o::BaseRobot::BaseRobot ( World world_,
const std::string &  name_ 
)
inline

Definition at line 85 of file simulator.h.

85 {
86 _world = world_;
87 _name = name_;
88 }
World * _world
Definition simulator.h:98
std::string _name
Definition simulator.h:100

Member Function Documentation

◆ addSensor()

bool g2o::BaseRobot::addSensor ( BaseSensor sensor)

Definition at line 51 of file simulator.cpp.

51 {
52 assert(graph());
53 std::pair<std::set<BaseSensor*>::iterator, bool> result =
54 _sensors.insert(sensor);
55 if (result.second) {
56 sensor->setRobot(this);
57 sensor->addParameters();
58 }
59 return result.second;
60}
OptimizableGraph * graph() const
Definition simulator.cpp:46
std::set< BaseSensor * > _sensors
Definition simulator.h:99

References _sensors, g2o::BaseSensor::addParameters(), graph(), and g2o::BaseSensor::setRobot().

◆ graph()

OptimizableGraph * g2o::BaseRobot::graph ( ) const

Definition at line 46 of file simulator.cpp.

46 {
47 if (_world) return _world->graph();
48 return 0;
49}
OptimizableGraph * graph()
Definition simulator.h:110

References _world, and g2o::World::graph().

Referenced by addSensor(), g2o::BaseSensor::graph(), LineSensor::LineSensor(), Robot::move(), PlaneSensor::PlaneSensor(), LineSensor::sense(), and PlaneSensor::sense().

◆ name()

const std::string & g2o::BaseRobot::name ( ) const
inline

Definition at line 91 of file simulator.h.

91{ return _name; }

◆ sense()

void g2o::BaseRobot::sense ( )
virtual

Definition at line 62 of file simulator.cpp.

62 {
63 for (std::set<BaseSensor*>::iterator it = _sensors.begin();
64 it != _sensors.end(); ++it) {
65 BaseSensor* s = *it;
66 s->sense();
67 }
68}

References _sensors, and g2o::BaseSensor::sense().

Referenced by Simulator::sense().

◆ sensors()

const std::set< BaseSensor * > g2o::BaseRobot::sensors ( )
inline

Definition at line 94 of file simulator.h.

94{ return _sensors; }

◆ setWorld()

void g2o::BaseRobot::setWorld ( World world_)
inline

Definition at line 89 of file simulator.h.

89{ _world = world_; }

Referenced by g2o::World::addRobot().

◆ world()

World * g2o::BaseRobot::world ( ) const
inline

Definition at line 90 of file simulator.h.

90{ return _world; }

Referenced by g2o::Robot< RobotPoseObject >::move(), and g2o::BaseSensor::world().

Member Data Documentation

◆ _name

std::string g2o::BaseRobot::_name
protected

Definition at line 100 of file simulator.h.

◆ _sensors

std::set<BaseSensor*> g2o::BaseRobot::_sensors
protected

Definition at line 99 of file simulator.h.

Referenced by addSensor(), main(), sense(), and Robot::sense().

◆ _world

World* g2o::BaseRobot::_world
protected

Definition at line 98 of file simulator.h.

Referenced by graph().


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