Fawkes API
Fawkes Development Version
|
Removes laser data which is represented by a set of boxes. More...
#include <box_filter.h>
Public Member Functions | |
LaserBoxFilterDataFilter (const std::string &filter_name, unsigned int in_data_size, std::vector< LaserDataFilter::Buffer * > &in, fawkes::tf::Transformer *tf_listener, fawkes::Configuration *config, fawkes::Logger *logger, fawkes::BlackBoard *blackboard) | |
Constructor. More... | |
virtual void | filter () |
Filter the incoming data. More... | |
![]() | |
LaserDataFilter (const std::string &filter_name, unsigned int in_data_size, const std::vector< Buffer * > &in, unsigned int out_size) | |
Constructor. More... | |
virtual | ~LaserDataFilter () |
Virtual empty destructor. More... | |
virtual std::vector< Buffer * > & | get_out_vector () |
Get filtered data array. More... | |
virtual void | set_out_vector (std::vector< Buffer * > &out) |
Set filtered data array. More... | |
virtual unsigned int | get_out_data_size () |
Get size of filtered data array. More... | |
void | set_array_ownership (bool own_in, bool own_out) |
Set input/output array ownership. More... | |
bool | owns_in () const |
Check if input arrays are owned by filter. More... | |
bool | owns_out () const |
Check if output arrays are owned by filter. More... | |
![]() | |
LoggingAspect () | |
Constructor. More... | |
virtual | ~LoggingAspect () |
Virtual empty Destructor. More... | |
void | init_LoggingAspect (Logger *logger) |
Set the logger. More... | |
![]() | |
const std::list< const char * > & | get_aspects () const |
Get list of aspect names attached to a aspected thread. More... | |
Additional Inherited Members | |
![]() | |
virtual void | set_out_data_size (unsigned int data_size) |
Resize output arrays. More... | |
void | reset_outbuf (Buffer *b) |
Resets all readings in outbuf to NaN. More... | |
void | copy_to_outbuf (Buffer *outbuf, const Buffer *inbuf) |
Copies the readings from inbuf to outbuf. More... | |
![]() | |
void | add_aspect (const char *name) |
Add an aspect to a thread. More... | |
![]() | |
std::string | filter_name |
Name of the specific filter instance. More... | |
unsigned int | out_data_size |
Number of entries in output arrays. More... | |
unsigned int | in_data_size |
Number of entries in input arrays. More... | |
std::vector< Buffer * > | in |
Vector of input arrays. More... | |
std::vector< Buffer * > | out |
Vector of output arrays. More... | |
![]() | |
Logger * | logger |
This is the Logger member used to access the logger. More... | |
Removes laser data which is represented by a set of boxes.
These boxes can be defined by an interface.
Definition at line 39 of file box_filter.h.
LaserBoxFilterDataFilter::LaserBoxFilterDataFilter | ( | const std::string & | filter_name, |
unsigned int | in_data_size, | ||
std::vector< LaserDataFilter::Buffer * > & | in, | ||
fawkes::tf::Transformer * | tf_listener, | ||
fawkes::Configuration * | config, | ||
fawkes::Logger * | logger, | ||
fawkes::BlackBoard * | blackboard | ||
) |
Constructor.
filter_name | name of this filter |
in_data_size | number of entries input value arrays |
in | vector of input arrays |
tf_listener | to access the tf::Transformer aspect |
config | to access the Configuration aspect |
logger | to access the Logger aspect |
blackboard | to open the LaserBoxFilterInterface for writing |
Definition at line 50 of file box_filter.cpp.
References fawkes::Configuration::get_string(), fawkes::LoggingAspect::logger, and fawkes::BlackBoard::open_for_writing().
|
virtual |
Filter the incoming data.
Function shall filter the data in the "in" member vector and write output to the "out" member vector.
Implements LaserDataFilter.
Definition at line 122 of file box_filter.cpp.
References LaserDataFilter::in, fawkes::Logger::log_warn(), fawkes::tf::Transformer::lookup_transform(), fawkes::Interface::msgq_empty(), fawkes::Interface::msgq_first(), fawkes::Interface::msgq_first_is(), fawkes::Interface::msgq_pop(), fawkes::LaserBoxFilterInterface::num_boxes(), LaserDataFilter::out, LaserDataFilter::out_data_size, fawkes::LaserBoxFilterInterface::CreateNewBoxFilterMessage::p1(), fawkes::LaserBoxFilterInterface::CreateNewBoxFilterMessage::p2(), fawkes::LaserBoxFilterInterface::CreateNewBoxFilterMessage::p3(), fawkes::LaserBoxFilterInterface::CreateNewBoxFilterMessage::p4(), fawkes::polar2cart2d(), fawkes::LaserBoxFilterInterface::set_num_boxes(), and fawkes::Interface::write().