/** * @file BNO08xCbParamVoid.hpp * @author Myles Parfeniuk */ #pragma once #include "BNO08xCbGeneric.hpp" /** * @class BNO08xCbParamRptID * * @brief Class to hold callback functions with void input parameters. */ class BNO08xCbParamVoid : public BNO08xCbGeneric { public: BNO08xCbParamVoid(std::function cb_fxn, uint8_t rpt_ID) : BNO08xCbGeneric(rpt_ID) , cb_fxn(cb_fxn) { } /** * @brief Invokes contained callback function. * * @param rpt_ID n/a, not used, kept to maintain same prototype as BNO08xCbParamRptID::invoke() * * @return void, nothing to return */ void invoke(uint8_t rpt_ID) override { cb_fxn(); } private: std::function cb_fxn; ///< Wrapped callback function passed at register_cb(). };