Classes | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Types | Private Attributes | Static Private Attributes | List of all members
Robot Class Reference

Classes

class  Edge
 
class  Graph
 
class  GraphVis
 
class  Node
 
class  Task
 

Public Member Functions

void CachePlan (const ast::point_t &start, const ast::point_t &goal, Graph *graph)
 
void Dock ()
 
void Dock ()
 
void Enable (Stg::Model *model, bool &sub, bool on)
 
void EnableFiducial (bool on)
 
void EnableLaser (bool on)
 
void EnableSonar (bool on)
 
bool Full ()
 
bool Full ()
 
bool Hungry ()
 
bool Hungry ()
 
GraphLookupPlan (const ast::point_t &start, const ast::point_t &goal)
 
bool ObstacleAvoid ()
 
bool ObstacleAvoid ()
 
void Plan (Pose sp)
 
uint64_t Pt64 (const ast::point_t &pt)
 
 Robot (ModelPosition *pos, Model *source, Model *sink)
 
 Robot (ModelPosition *pos, Model *fuel, Model *pool)
 
void SetGoal (Model *goal)
 
void SetTask (unsigned int t)
 
void UnDock ()
 
void UnDock ()
 
int Update (void)
 
void Work ()
 
void Work ()
 

Static Public Member Functions

static int FiducialUpdate (ModelFiducial *mod, Robot *robot)
 
static int FlagDecr (Model *mod, Robot *robot)
 
static int FlagIncr (Model *mod, Robot *robot)
 
static int LaserUpdate (ModelRanger *laser, Robot *robot)
 
static int PositionUpdate (ModelPosition *pos, Robot *robot)
 
static int UpdateCallback (ModelRanger *laser, Robot *robot)
 

Public Attributes

Stg::ModelPositionposition
 
Stg::ModelRangerranger
 

Static Public Attributes

static std::map< std::pair< uint64_t, uint64_t >, Graph * > plancache
 
static std::vector< Tasktasks
 

Private Types

enum  { MODE_WORK =0, MODE_DOCK, MODE_UNDOCK, MODE_QUEUE }
 

Private Attributes

bool at_dest
 
int avoidcount
 
Pose cached_goal_pose
 
bool charger_ahoy
 
double charger_bearing
 
double charger_heading
 
double charger_range
 
radians_t docked_angle
 
ModelFiducialfiducial
 
bool fiducial_sub
 
bool force_recharge
 
Modelfuel_zone
 
Modelgoal
 
Graphgraphp
 
GraphVis graphvis
 
ModelRangerlaser
 
bool laser_sub
 
nav_mode_t mode
 
enum Robot:: { ... }  mode
 
unsigned int node_interval
 
unsigned int node_interval_countdown
 
Modelpool_zone
 
ModelPositionpos
 
int randcount
 
ModelRangerranger
 
Modelsink
 
ModelRangersonar
 
bool sonar_sub
 
Modelsource
 
unsigned int task
 
long int wait_started_at
 
int work_get
 
int work_put
 

Static Private Attributes

static uint8_t * map_data
 
static const unsigned int map_height
 
static Modelmap_model
 
static const unsigned int map_width
 
static pthread_mutex_t planner_mutex = PTHREAD_MUTEX_INITIALIZER
 

Detailed Description

Definition at line 43 of file fasr.cc.

Member Enumeration Documentation

anonymous enum
private
Enumerator
MODE_WORK 
MODE_DOCK 
MODE_UNDOCK 
MODE_QUEUE 

Definition at line 213 of file fasr2.cc.

Constructor & Destructor Documentation

Robot::Robot ( ModelPosition pos,
Model source,
Model sink 
)
inline

Definition at line 63 of file fasr.cc.

Robot::Robot ( ModelPosition pos,
Model fuel,
Model pool 
)
inline

Definition at line 245 of file fasr2.cc.

Member Function Documentation

void Robot::CachePlan ( const ast::point_t start,
const ast::point_t goal,
Graph graph 
)
inline

Definition at line 380 of file fasr2.cc.

void Robot::Dock ( )
inline

Definition at line 115 of file fasr.cc.

void Robot::Dock ( )
inline

Definition at line 481 of file fasr2.cc.

void Robot::Enable ( Stg::Model model,
bool &  sub,
bool  on 
)
inline

Definition at line 338 of file fasr2.cc.

void Robot::EnableFiducial ( bool  on)
inline

Definition at line 363 of file fasr2.cc.

void Robot::EnableLaser ( bool  on)
inline

Definition at line 358 of file fasr2.cc.

void Robot::EnableSonar ( bool  on)
inline

Definition at line 353 of file fasr2.cc.

static int Robot::FiducialUpdate ( ModelFiducial mod,
Robot robot 
)
inlinestatic

Definition at line 424 of file fasr.cc.

static int Robot::FlagDecr ( Model mod,
Robot robot 
)
inlinestatic

Definition at line 941 of file fasr2.cc.

static int Robot::FlagIncr ( Model mod,
Robot robot 
)
inlinestatic

Definition at line 935 of file fasr2.cc.

bool Robot::Full ( )
inline

Definition at line 373 of file fasr.cc.

bool Robot::Full ( )
inline

Definition at line 754 of file fasr2.cc.

bool Robot::Hungry ( )
inline

Definition at line 368 of file fasr.cc.

bool Robot::Hungry ( )
inline

Definition at line 749 of file fasr2.cc.

static int Robot::LaserUpdate ( ModelRanger laser,
Robot robot 
)
inlinestatic

Definition at line 336 of file fasr.cc.

Graph* Robot::LookupPlan ( const ast::point_t start,
const ast::point_t goal 
)
inline

Definition at line 386 of file fasr2.cc.

bool Robot::ObstacleAvoid ( )
inline

Definition at line 202 of file fasr.cc.

bool Robot::ObstacleAvoid ( )
inline

Definition at line 605 of file fasr2.cc.

void Robot::Plan ( Pose  sp)
inline

Definition at line 393 of file fasr2.cc.

static int Robot::PositionUpdate ( ModelPosition pos,
Robot robot 
)
inlinestatic

Definition at line 378 of file fasr.cc.

uint64_t Robot::Pt64 ( const ast::point_t pt)
inline

Definition at line 371 of file fasr2.cc.

void Robot::SetGoal ( Model goal)
inline

Definition at line 688 of file fasr2.cc.

void Robot::SetTask ( unsigned int  t)
inline

Definition at line 536 of file fasr2.cc.

void Robot::UnDock ( )
inline

Definition at line 173 of file fasr.cc.

void Robot::UnDock ( )
inline

Definition at line 542 of file fasr2.cc.

int Robot::Update ( void  )
inline

Definition at line 765 of file fasr2.cc.

static int Robot::UpdateCallback ( ModelRanger laser,
Robot robot 
)
inlinestatic

Definition at line 760 of file fasr2.cc.

void Robot::Work ( )
inline

Definition at line 282 of file fasr.cc.

void Robot::Work ( )
inline

Definition at line 698 of file fasr2.cc.

Member Data Documentation

bool Robot::at_dest
private

Definition at line 60 of file fasr.cc.

int Robot::avoidcount
private

Definition at line 53 of file fasr.cc.

Pose Robot::cached_goal_pose
private

Definition at line 225 of file fasr2.cc.

bool Robot::charger_ahoy
private

Definition at line 55 of file fasr.cc.

double Robot::charger_bearing
private

Definition at line 56 of file fasr.cc.

double Robot::charger_heading
private

Definition at line 58 of file fasr.cc.

double Robot::charger_range
private

Definition at line 57 of file fasr.cc.

radians_t Robot::docked_angle
private

Definition at line 220 of file fasr2.cc.

ModelFiducial * Robot::fiducial
private

Definition at line 49 of file fasr.cc.

bool Robot::fiducial_sub
private

Definition at line 237 of file fasr2.cc.

bool Robot::force_recharge
private

Definition at line 241 of file fasr2.cc.

Model* Robot::fuel_zone
private

Definition at line 204 of file fasr2.cc.

Model* Robot::goal
private

Definition at line 224 of file fasr2.cc.

Graph* Robot::graphp
private

Definition at line 227 of file fasr2.cc.

GraphVis Robot::graphvis
private

Definition at line 228 of file fasr2.cc.

ModelRanger * Robot::laser
private

Definition at line 47 of file fasr.cc.

bool Robot::laser_sub
private

Definition at line 238 of file fasr2.cc.

uint8_t * Robot::map_data
staticprivate

Definition at line 234 of file fasr2.cc.

const unsigned int Robot::map_height
staticprivate

Definition at line 233 of file fasr2.cc.

Model * Robot::map_model
staticprivate

Definition at line 235 of file fasr2.cc.

const unsigned int Robot::map_width
staticprivate

Definition at line 232 of file fasr2.cc.

nav_mode_t Robot::mode
private

Definition at line 59 of file fasr.cc.

enum { ... } Robot::mode
unsigned int Robot::node_interval
private

Definition at line 229 of file fasr2.cc.

unsigned int Robot::node_interval_countdown
private

Definition at line 230 of file fasr2.cc.

std::map< std::pair< uint64_t, uint64_t >, Robot::Graph * > Robot::plancache
static

Definition at line 368 of file fasr2.cc.

pthread_mutex_t Robot::planner_mutex = PTHREAD_MUTEX_INITIALIZER
staticprivate

Definition at line 222 of file fasr2.cc.

Model* Robot::pool_zone
private

Definition at line 205 of file fasr2.cc.

ModelPosition * Robot::pos
private

Definition at line 46 of file fasr.cc.

Stg::ModelPosition* Robot::position

Definition at line 23 of file stest.cc.

int Robot::randcount
private

Definition at line 53 of file fasr.cc.

Stg::ModelRanger* Robot::ranger

Definition at line 24 of file stest.cc.

ModelRanger* Robot::ranger
private

Definition at line 48 of file fasr.cc.

Model * Robot::sink
private

Definition at line 52 of file fasr.cc.

ModelRanger* Robot::sonar
private

Definition at line 199 of file fasr2.cc.

bool Robot::sonar_sub
private

Definition at line 239 of file fasr2.cc.

Model* Robot::source
private

Definition at line 52 of file fasr.cc.

unsigned int Robot::task
private

Definition at line 202 of file fasr2.cc.

std::vector< Robot::Task > Robot::tasks
static

Definition at line 55 of file fasr2.cc.

long int Robot::wait_started_at
private

Definition at line 195 of file fasr2.cc.

int Robot::work_get
private

Definition at line 54 of file fasr.cc.

int Robot::work_put
private

Definition at line 54 of file fasr.cc.


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


stage
Author(s): Richard Vaughan , Brian Gerkey , Reed Hedges , Andrew Howard , Toby Collett , Pooya Karimian , Jeremy Asher , Alex Couture-Beil , Geoff Biggs , Rich Mattes , Abbas Sadat
autogenerated on Mon Jun 10 2019 15:06:11