#include <iostream>
#include <time.h>
#include <numeric>
#include <boost/bind.hpp>
#include <boost/thread.hpp>
#include <boost/foreach.hpp>
#include <boost/lambda/lambda.hpp>
#include <boost/date_time.hpp>
#include <ros/ros.h>
#include <sensor_msgs/LaserScan.h>
#include <geometry_msgs/Twist.h>
#include "Wandering.h"
Go to the source code of this file.
Defines | |
#define | foreach BOOST_FOREACH |
Functions | |
int | countRanges (const sensor_msgs::LaserScan::Ptr &scan, int center, int range, double lessThan) |
decision_making::TaskResult | drive (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
decision_making::TaskResult | driveBackward (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
double | getAverage (int centerRange, int rangeSize, const sensor_msgs::LaserScan::Ptr &scan) |
int | main (int argc, char **argv) |
void | onLaserScan (const sensor_msgs::LaserScan::Ptr scan, EventQueue *q) |
bool | preemptiveWait (double ms, decision_making::EventQueue &queue) |
bool | preemptiveWait (double minMs, double maxMs, decision_making::EventQueue &queue) |
void | publishVelocity (double linear, double angular) |
decision_making::TaskResult | stopRobot (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
decision_making::TaskResult | turnLeft (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
decision_making::TaskResult | turnRandom (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
decision_making::TaskResult | turnRight (std::string, const decision_making::FSMCallContext &c, decision_making::EventQueue &e) |
Variables | |
ros::Subscriber | laserSub |
ros::NodeHandle * | node |
ros::Publisher | velocityPub |
#define foreach BOOST_FOREACH |
Definition at line 46 of file WanderingNode.cpp.
int countRanges | ( | const sensor_msgs::LaserScan::Ptr & | scan, |
int | center, | ||
int | range, | ||
double | lessThan | ||
) |
Definition at line 92 of file WanderingNode.cpp.
decision_making::TaskResult drive | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 167 of file WanderingNode.cpp.
decision_making::TaskResult driveBackward | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 177 of file WanderingNode.cpp.
double getAverage | ( | int | centerRange, |
int | rangeSize, | ||
const sensor_msgs::LaserScan::Ptr & | scan | ||
) |
Definition at line 85 of file WanderingNode.cpp.
int main | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 187 of file WanderingNode.cpp.
void onLaserScan | ( | const sensor_msgs::LaserScan::Ptr | scan, |
EventQueue * | q | ||
) |
Definition at line 98 of file WanderingNode.cpp.
bool preemptiveWait | ( | double | ms, |
decision_making::EventQueue & | queue | ||
) |
Preemptive wait
ms | Milliseconds to wait |
queue | EventQueue |
Definition at line 67 of file WanderingNode.cpp.
bool preemptiveWait | ( | double | minMs, |
double | maxMs, | ||
decision_making::EventQueue & | queue | ||
) |
Preemptive wait
ms | Milliseconds to wait |
queue | EventQueue |
Definition at line 80 of file WanderingNode.cpp.
void publishVelocity | ( | double | linear, |
double | angular | ||
) |
Definition at line 52 of file WanderingNode.cpp.
decision_making::TaskResult stopRobot | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 129 of file WanderingNode.cpp.
decision_making::TaskResult turnLeft | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 144 of file WanderingNode.cpp.
decision_making::TaskResult turnRandom | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 154 of file WanderingNode.cpp.
decision_making::TaskResult turnRight | ( | std::string | , |
const decision_making::FSMCallContext & | c, | ||
decision_making::EventQueue & | e | ||
) |
Definition at line 134 of file WanderingNode.cpp.
ros::Subscriber laserSub |
Definition at line 48 of file WanderingNode.cpp.
ros::NodeHandle* node |
Definition at line 50 of file WanderingNode.cpp.
ros::Publisher velocityPub |
Definition at line 49 of file WanderingNode.cpp.