APM:Libraries
Classes | Macros
functor.h File Reference
#include <type_traits>
Include dependency graph for functor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Functor< RetType, Args >
 

Macros

#define FUNCTOR_TYPEDEF(name, rettype, ...)   typedef Functor<rettype, ## __VA_ARGS__> name
 
#define FUNCTOR_DECLARE(name, rettype, ...)   Functor<rettype, ## __VA_ARGS__> name
 
#define FUNCTOR_BIND(obj, func, rettype, ...)   Functor<rettype, ## __VA_ARGS__>::bind<std::remove_reference<decltype(*obj)>::type, func>(obj)
 
#define FUNCTOR_BIND_MEMBER(func, rettype, ...)   Functor<rettype, ## __VA_ARGS__>::bind<std::remove_reference<decltype(*this)>::type, func>(this)
 

Macro Definition Documentation

◆ FUNCTOR_BIND

#define FUNCTOR_BIND (   obj,
  func,
  rettype,
  ... 
)    Functor<rettype, ## __VA_ARGS__>::bind<std::remove_reference<decltype(*obj)>::type, func>(obj)

Definition at line 28 of file functor.h.

Referenced by AP_Baro_SITL::AP_Baro_SITL(), and AP_Compass_SITL::AP_Compass_SITL().

◆ FUNCTOR_BIND_MEMBER

#define FUNCTOR_BIND_MEMBER (   func,
  rettype,
  ... 
)    Functor<rettype, ## __VA_ARGS__>::bind<std::remove_reference<decltype(*this)>::type, func>(this)

Definition at line 31 of file functor.h.

Referenced by AP_Baro_BMP085::_init(), AP_Baro_BMP280::_init(), AP_Baro_LPS2XH::_init(), AP_RangeFinder_MaxsonarI2CXL::_init(), AP_Baro_MS56XX::_init(), AP_Baro_KellerLD::_init(), Soft_I2C::_start(), ChibiOS::UARTDriver::begin(), F4Light::UARTDriver::begin(), ChibiOS::I2CBus::dma_init(), NavioLED_I2C::hw_init(), ToshibaLED_I2C::hw_init(), Display_SSD1306_I2C::hw_init(), Display_SH1106_I2C::hw_init(), F4Light::I2CDevice::i2c_read(), F4Light::I2CDevice::i2c_write(), AP_IRLock_I2C::init(), TSYS01::init(), F4Light::DSM_parser::init(), AP_Baro_FBM320::init(), AP_Baro_DPS280::init(), AP_ADC_ADS1115::init(), F4Light::PPM_parser::init(), AP_Baro_ICM20789::init(), AP_Compass_LSM303D::init(), AP_Compass_LSM9DS1::init(), AP_RangeFinder_VL53L0X::init(), Linux::Scheduler::init(), AP_RangeFinder_LightWareI2C::init(), AnalogIn_ADS1115::init(), AP_RangeFinder_TeraRangerI2C::init(), AP_Compass_MAG3110::init(), AP_DEVO_Telem::init(), AP_SmartRTL::init(), AP_Airspeed_MS4525::init(), OreoLED_PX4::init(), AP_Airspeed_SDP3X::init(), AP_RangeFinder_PulsedLightLRF::init(), AP_Compass_BMM150::init(), AP_Airspeed_MS5525::init(), AP_Compass_AK8963::init(), AP_BattMonitor_SMBus::init(), AP_Compass_IST8310::init(), AP_Compass_QMC5883L::init(), AP_Compass_LIS3MDL::init(), AP_Compass_MMC3416::init(), AP_Compass_AK09916::init(), F4Light::AnalogIn::init(), AP_Frsky_Telem::init(), AP_InertialSensor_SITL::init_sensor(), Linux::Perf::Perf(), Linux::PollerThread::PollerThread(), GCS_MAVLINK::send_queued_parameters(), F4Light::SPIDevice::send_strobe(), F4Light::SPIDevice::setup_dma_transfer(), AP_Camera::setup_feedback_callback(), ChibiOS::RCOutput::setup_group_DMA(), F4Light::SPIDevice::setup_isr_transfer(), AP_OpticalFlow_PX4Flow::setup_sensor(), AP_OpticalFlow_Pixart::setup_sensor(), ChibiOS::SPIBus::SPIBus(), AP_InertialSensor_LSM9DS0::start(), AP_InertialSensor_LSM9DS1::start(), AP_InertialSensor_L3G4200D::start(), AP_InertialSensor_BMI160::start(), AP_InertialSensor_RST::start(), AP_InertialSensor_Invensense::start(), TestPeriodicThread1::TestPeriodicThread1(), TestThread2::TestThread2(), F4Light::I2CDevice::transfer(), CompassLearn::update(), AP_Button::update(), and F4Light::SPIDevice::wait_for().

◆ FUNCTOR_DECLARE

#define FUNCTOR_DECLARE (   name,
  rettype,
  ... 
)    Functor<rettype, ## __VA_ARGS__> name

Definition at line 25 of file functor.h.

◆ FUNCTOR_TYPEDEF

#define FUNCTOR_TYPEDEF (   name,
  rettype,
  ... 
)    typedef Functor<rettype, ## __VA_ARGS__> name

Definition at line 22 of file functor.h.