18#define X_AXIS_ENABLE 1
19#define Y_AXIS_ENABLE 2
20#define Z_AXIS_ENABLE 4
21#define DIRECTION_ENABLE(AXES) (1 << AXES)
46 std::array<FFB_Effect,EffectsCalculator::max_effects>&
effects;
47 void new_effect(FFB_CreateNewEffect_Feature_Data_t* effect);
53 void set_ramp(FFB_SetRamp_Data_t* report);
std::array< FFB_Effect, EffectsCalculator::max_effects > & effects
reportFFB_status_t reportFFBStatus
void set_effect_operation(FFB_EffOp_Data_t *report)
void set_constant_effect(FFB_SetConstantForce_Data_t *effect)
uint16_t hidGet(uint8_t report_id, hid_report_type_t report_type, uint8_t *buffer, uint16_t reqlen) override
FFB_BlockLoad_Feature_Data_t blockLoad_report
void setDirectionEnableMask(uint8_t mask)
void free_effect(uint16_t id)
std::shared_ptr< EffectsCalculator > effects_calc
uint8_t directionEnableMask
void set_gain(uint8_t gain)
void sendStatusReport(uint8_t effect)
void set_condition(FFB_SetCondition_Data_t *cond)
FFB_PIDPool_Feature_Data_t pool_report
void set_envelope(FFB_SetEnvelope_Data_t *report)
void ffb_control(uint8_t cmd)
static bool HID_SendReport(uint8_t *report, uint16_t len)
void new_effect(FFB_CreateNewEffect_Feature_Data_t *effect)
void hidOut(uint8_t report_id, hid_report_type_t report_type, const uint8_t *buffer, uint16_t bufsize) override
HidFFB(std::shared_ptr< EffectsCalculator > ec, uint8_t axisCount)
void set_ramp(FFB_SetRamp_Data_t *report)
void set_effect(FFB_SetEffect_t *effect)
void set_filters(FFB_Effect *effect)
void set_periodic(FFB_SetPeriodic_Data_t *report)
hid_report_type_t
HID Request Report Type.