Privacy
An open-source, flexible 3D physical simulation framework
mars::sim::RayGridSensor Class Reference

#include <RayGridSensor.h>

Public Member Functions

 RayGridSensor (interfaces::ControlCenter *control, const unsigned long id, const std::string &name)
 
 ~RayGridSensor (void)
 
virtual int getMonsterData (char *data) const
 
virtual int getSensorData (interfaces::sReal **data) const
 
virtual void receiveData (const data_broker::DataInfo &info, const data_broker::DataPackage &package, int callbackParam)
 The DataBroker will call this method to notify the receiver of whenever the condition for which the receiver registered occur. More...
 
virtual void update (std::vector< interfaces::draw_item > *drawItems)
 This is the update function that updates the position of the vertices of all draw_item structs contained in drawItems. More...
 
virtual void setMatrixSpacing (interfaces::sReal rowSpacing, interfaces::sReal columnSpacing)
 
virtual void setMatrixDimensions (int numRows, int numCols)
 
virtual void setLaserDistanceRange (interfaces::sReal min, interfaces::sReal max)
 
virtual unsigned long getNodeID () const
 
virtual const utils::Quaternion getRotation () const
 
virtual const utils::Vector getPosition () const
 
- Public Member Functions inherited from mars::interfaces::SensorInterface
 SensorInterface (ControlCenter *center)
 
virtual ~SensorInterface ()
 
- Public Member Functions inherited from mars::interfaces::BaseGridIntersectionSensor
 BaseGridIntersectionSensor (unsigned long id, std::string name, int cols, int rows, double stepX, double stepY, double maxDistance=std::numeric_limits< double >::infinity())
 
virtual ~BaseGridIntersectionSensor ()
 
- Public Member Functions inherited from mars::interfaces::BaseNodeSensor
 BaseNodeSensor (unsigned long id, std::string name)
 
virtual ~BaseNodeSensor ()
 
utils::Quaternion getOrientation () const
 
unsigned long getAttachedNode ()
 
- Public Member Functions inherited from mars::interfaces::BaseSensor
 BaseSensor ()
 
virtual ~BaseSensor ()
 
 BaseSensor (unsigned long id, std::string name)
 
unsigned long getID () const
 
const std::string getName () const
 
virtual int getAsciiData (char *data) const
 
void getCoreExchange (core_objects_exchange *obj) const
 
virtual configmaps::ConfigMap createConfig () const
 
- Public Member Functions inherited from mars::interfaces::BaseArraySensor< double >
 BaseArraySensor (int cols, int rows, int channels=1)
 
virtual ~BaseArraySensor ()
 
const std::vector< double > getData () const
 
const int & getCols () const
 
const int & getRows () const
 
const int & getChannels () const
 
double & operator[] (const int &index)
 
virtual void resize (int cols, int rows, int channels=1)
 
- Public Member Functions inherited from mars::data_broker::ReceiverInterface
 ReceiverInterface ()
 
virtual ~ReceiverInterface ()
 
- Public Member Functions inherited from mars::interfaces::DrawInterface
virtual ~DrawInterface ()
 

Private Member Functions

void updateSensorPositions ()
 
void updateDrawItems ()
 

Private Attributes

unsigned long node_id
 
utils::Vector pos
 
utils::Quaternion rot
 
interfaces::drawStruct draw
 
long positionIndices [3]
 
long rotationIndices [4]
 

Additional Inherited Members

- Static Public Member Functions inherited from mars::interfaces::BaseSensor
static BaseConfigparseConfig (ControlCenter *control, configmaps::ConfigMap *config)
 
- Public Attributes inherited from mars::interfaces::BaseGridIntersectionSensor
double stepX
 
double stepY
 
double maxDistance
 
- Public Attributes inherited from mars::interfaces::BaseSensor
unsigned long id
 
std::string name
 
unsigned long updateRate
 
- Protected Attributes inherited from mars::interfaces::SensorInterface
ControlCentercontrol
 
- Protected Attributes inherited from mars::interfaces::BaseNodeSensor
unsigned long attached_node
 
bool calcAcceletaion
 
bool calcSpeed
 
bool calcPosition
 
bool calcRotationSpeed
 
bool calcOrientation
 
utils::Vector acceleration
 
utils::Vector speed
 
utils::Vector position
 
utils::Vector rotationSpeed
 
utils::Quaternion orientation
 
- Protected Attributes inherited from mars::interfaces::BaseArraySensor< double >
int cols
 
int rows
 
int channels
 
std::vector< double > data
 

Detailed Description

Definition at line 44 of file RayGridSensor.h.

Constructor & Destructor Documentation

◆ RayGridSensor()

mars::sim::RayGridSensor::RayGridSensor ( interfaces::ControlCenter control,
const unsigned long  id,
const std::string &  name 
)

Definition at line 46 of file RayGridSensor.cpp.

◆ ~RayGridSensor()

mars::sim::RayGridSensor::~RayGridSensor ( void  )

Definition at line 90 of file RayGridSensor.cpp.

Member Function Documentation

◆ getMonsterData()

int mars::sim::RayGridSensor::getMonsterData ( char *  data) const
virtual

Definition at line 103 of file RayGridSensor.cpp.

◆ getNodeID()

unsigned long mars::sim::RayGridSensor::getNodeID ( void  ) const
virtual

Definition at line 273 of file RayGridSensor.cpp.

◆ getPosition()

const Vector mars::sim::RayGridSensor::getPosition ( void  ) const
virtual

Definition at line 287 of file RayGridSensor.cpp.

◆ getRotation()

const Quaternion mars::sim::RayGridSensor::getRotation ( void  ) const
virtual

Definition at line 280 of file RayGridSensor.cpp.

◆ getSensorData()

int mars::sim::RayGridSensor::getSensorData ( interfaces::sReal **  data) const
virtual

Reimplemented from mars::interfaces::BaseSensor.

Definition at line 119 of file RayGridSensor.cpp.

◆ receiveData()

void mars::sim::RayGridSensor::receiveData ( const data_broker::DataInfo info,
const data_broker::DataPackage dataPackage,
int  callbackParam 
)
virtual

The DataBroker will call this method to notify the receiver of whenever the condition for which the receiver registered occur.

Parameters
infoInformation about the DataPackage.
dataPackageThe DataPackage containing all the data.
callbackParamThe int the receiver passed during registration. The default (the receiver didn't provide a callbackParam) is 0. This can be used to easily distinguish different registrations.

Implements mars::data_broker::ReceiverInterface.

Definition at line 131 of file RayGridSensor.cpp.

◆ setLaserDistanceRange()

void mars::sim::RayGridSensor::setLaserDistanceRange ( interfaces::sReal  min,
interfaces::sReal  max 
)
virtual

Definition at line 245 of file RayGridSensor.cpp.

◆ setMatrixDimensions()

void mars::sim::RayGridSensor::setMatrixDimensions ( int  numRows,
int  numCols 
)
virtual

Definition at line 257 of file RayGridSensor.cpp.

◆ setMatrixSpacing()

void mars::sim::RayGridSensor::setMatrixSpacing ( interfaces::sReal  rowSpacing,
interfaces::sReal  columnSpacing 
)
virtual

Definition at line 232 of file RayGridSensor.cpp.

◆ update()

void mars::sim::RayGridSensor::update ( std::vector< interfaces::draw_item > *  drawItems)
virtual

This is the update function that updates the position of the vertices of all draw_item structs contained in drawItems.

Implements mars::interfaces::DrawInterface.

Definition at line 206 of file RayGridSensor.cpp.

◆ updateDrawItems()

void mars::sim::RayGridSensor::updateDrawItems ( )
private

Definition at line 179 of file RayGridSensor.cpp.

◆ updateSensorPositions()

void mars::sim::RayGridSensor::updateSensorPositions ( )
private

Definition at line 153 of file RayGridSensor.cpp.

Member Data Documentation

◆ draw

interfaces::drawStruct mars::sim::RayGridSensor::draw
private

Definition at line 77 of file RayGridSensor.h.

◆ node_id

unsigned long mars::sim::RayGridSensor::node_id
private

Definition at line 74 of file RayGridSensor.h.

◆ pos

utils::Vector mars::sim::RayGridSensor::pos
private

Definition at line 75 of file RayGridSensor.h.

◆ positionIndices

long mars::sim::RayGridSensor::positionIndices[3]
private

Definition at line 78 of file RayGridSensor.h.

◆ rot

utils::Quaternion mars::sim::RayGridSensor::rot
private

Definition at line 76 of file RayGridSensor.h.

◆ rotationIndices

long mars::sim::RayGridSensor::rotationIndices[4]
private

Definition at line 79 of file RayGridSensor.h.


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