Khangai Robot Play - Naive  01
THe naive play of the Khangai Robot
PositionSensor Class Reference

#include <position_sensor.h>

Collaboration diagram for PositionSensor:

Public Member Functions

 PositionSensor (PositionSensor &&)=default
 
 PositionSensor (const PositionSensor &)=default
 
PositionSensoroperator= (PositionSensor &&)=default
 
PositionSensoroperator= (const PositionSensor &)=default
 
 ~PositionSensor ()
 
int init (uint32_t dt_millis)
 
void add_Sensor (Sensor< float > *sen)
 
void remove_Sensor (Sensor< float > *sen)
 
Vec3< float > read_Position (Vec3< float > ori, Vec3< float > base_state, const State_Vars *sv, uint32_t dt_millis)
 
void update_State (Vec3< float > state)
 

Static Public Member Functions

static PositionSensorget_Instance ()
 

Private Member Functions

 PositionSensor ()
 
void process_LidarData (Vec3< float > ori, float(&lidar)[2], const State_Vars *sv)
 
Vec2< float > rotate_EncData (Vec3< float > ori, Vec2< float > enc)
 

Private Attributes

Sensor< float > * p_sensors_ [MAX_POSITION_SENSORS]
 
uint8_t sensor_count_
 
Kalman_Filter enc_fuser_
 
Kalman_Filter xlidar_enc_fuser_
 
Kalman_Filter ylidar_enc_fuser_
 

Constructor & Destructor Documentation

◆ PositionSensor() [1/3]

PositionSensor::PositionSensor ( PositionSensor &&  )
default

◆ PositionSensor() [2/3]

PositionSensor::PositionSensor ( const PositionSensor )
default

◆ ~PositionSensor()

PositionSensor::~PositionSensor ( )
inline

◆ PositionSensor() [3/3]

PositionSensor::PositionSensor ( )
inlineprivate

Member Function Documentation

◆ add_Sensor()

void PositionSensor::add_Sensor ( Sensor< float > *  sen)
inline
Here is the caller graph for this function:

◆ get_Instance()

PositionSensor & PositionSensor::get_Instance ( )
static
Here is the caller graph for this function:

◆ init()

int PositionSensor::init ( uint32_t  dt_millis)
Here is the call graph for this function:

◆ operator=() [1/2]

PositionSensor& PositionSensor::operator= ( PositionSensor &&  )
default

◆ operator=() [2/2]

PositionSensor& PositionSensor::operator= ( const PositionSensor )
default

◆ process_LidarData()

void PositionSensor::process_LidarData ( Vec3< float >  ori,
float(&)  lidar[2],
const State_Vars sv 
)
private
Here is the call graph for this function:

◆ read_Position()

Vec3< float > PositionSensor::read_Position ( Vec3< float >  ori,
Vec3< float >  base_state,
const State_Vars sv,
uint32_t  dt_millis 
)
Here is the caller graph for this function:

◆ remove_Sensor()

void PositionSensor::remove_Sensor ( Sensor< float > *  sen)
inline
Here is the caller graph for this function:

◆ rotate_EncData()

Vec2< float > PositionSensor::rotate_EncData ( Vec3< float >  ori,
Vec2< float >  enc 
)
private
Here is the call graph for this function:

◆ update_State()

void PositionSensor::update_State ( Vec3< float >  state)
Here is the caller graph for this function:

Member Data Documentation

◆ enc_fuser_

Kalman_Filter PositionSensor::enc_fuser_
private

◆ p_sensors_

Sensor<float>* PositionSensor::p_sensors_[MAX_POSITION_SENSORS]
private

◆ sensor_count_

uint8_t PositionSensor::sensor_count_
private

◆ xlidar_enc_fuser_

Kalman_Filter PositionSensor::xlidar_enc_fuser_
private

◆ ylidar_enc_fuser_

Kalman_Filter PositionSensor::ylidar_enc_fuser_
private

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