APM:Libraries
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
AP_IRLock_I2C Class Reference

#include <AP_IRLock_I2C.h>

Inheritance diagram for AP_IRLock_I2C:
[legend]
Collaboration diagram for AP_IRLock_I2C:
[legend]

Classes

struct  frame
 

Public Member Functions

void init (int8_t bus) override
 
bool update () override
 
- Public Member Functions inherited from IRLock
bool healthy () const
 
uint32_t last_update_ms () const
 
size_t num_targets () const
 
bool get_angle_to_target_rad (float &x_angle_rad, float &y_angle_rad) const
 
bool get_unit_vector_body (Vector3f &ret) const
 

Private Member Functions

bool timer (void)
 
bool sync_frame_start (void)
 
bool read_block (struct frame &irframe)
 
void read_frames (void)
 
void pixel_to_1M_plane (float pix_x, float pix_y, float &ret_x, float &ret_y)
 

Private Attributes

AP_HAL::OwnPtr< AP_HAL::Devicedev
 
AP_HAL::Semaphoresem
 
uint32_t _last_read_ms
 

Additional Inherited Members

- Protected Attributes inherited from IRLock
struct IRLock::AP_IRLock_Flags _flags
 
uint32_t _last_update_ms
 
irlock_target_info _target_info
 

Detailed Description

Definition at line 9 of file AP_IRLock_I2C.h.

Member Function Documentation

◆ init()

void AP_IRLock_I2C::init ( int8_t  bus)
overridevirtual

Implements IRLock.

Definition at line 35 of file AP_IRLock_I2C.cpp.

Referenced by AC_PrecLand_IRLock::init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pixel_to_1M_plane()

void AP_IRLock_I2C::pixel_to_1M_plane ( float  pix_x,
float  pix_y,
float &  ret_x,
float &  ret_y 
)
private

Definition at line 86 of file AP_IRLock_I2C.cpp.

Referenced by read_frames().

Here is the caller graph for this function:

◆ read_block()

bool AP_IRLock_I2C::read_block ( struct frame irframe)
private

Definition at line 97 of file AP_IRLock_I2C.cpp.

Referenced by read_frames().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read_frames()

void AP_IRLock_I2C::read_frames ( void  )
private

Definition at line 115 of file AP_IRLock_I2C.cpp.

Referenced by init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sync_frame_start()

bool AP_IRLock_I2C::sync_frame_start ( void  )
private

Definition at line 58 of file AP_IRLock_I2C.cpp.

Referenced by read_frames().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ timer()

bool AP_IRLock_I2C::timer ( void  )
private

◆ update()

bool AP_IRLock_I2C::update ( void  )
overridevirtual

Implements IRLock.

Definition at line 158 of file AP_IRLock_I2C.cpp.

Referenced by AC_PrecLand_IRLock::update().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ _last_read_ms

uint32_t AP_IRLock_I2C::_last_read_ms
private

Definition at line 39 of file AP_IRLock_I2C.h.

Referenced by read_block(), sync_frame_start(), and update().

◆ dev

AP_HAL::OwnPtr<AP_HAL::Device> AP_IRLock_I2C::dev
private

Definition at line 19 of file AP_IRLock_I2C.h.

Referenced by init(), read_block(), sync_frame_start(), and update().

◆ sem

AP_HAL::Semaphore* AP_IRLock_I2C::sem
private

Definition at line 38 of file AP_IRLock_I2C.h.

Referenced by init(), read_frames(), and update().


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