12345678910111213141516171819202122232425262728293031323334353637 |
- #ifndef RAZER_PROFILE_EMULATION_H_
- #define RAZER_PROFILE_EMULATION_H_
- #include "razer_private.h"
- #define PROFEMU_NAME_MAX 32
- struct razer_mouse_profile_emu_data {
- /* Profile name string */
- razer_utf16_t name[PROFEMU_NAME_MAX + 1];
- /* Frequency selection for this emulated profile */
- enum razer_mouse_freq freq;
- /* DPI mappings (per axis) for this emulated profile */
- struct razer_mouse_dpimapping *dpimappings[3];
- unsigned int nr_dpimappings;
- /* Button mappings (per physical button) for this emulated profile */
- struct razer_button_function *butfuncs[11];
- unsigned int nr_butfuncs;
- };
- struct razer_mouse_profile_emu {
- struct razer_mouse *mouse;
- /* Emulated profiles */
- struct razer_mouse_profile profiles[RAZER_NR_EMULATED_PROFILES];
- struct razer_mouse_profile_emu_data data[RAZER_NR_EMULATED_PROFILES];
- struct razer_mouse_profile *active_profile;
- /* The hardware profile. This is what the driver uses. */
- struct razer_mouse_profile *hw_profile;
- };
- int razer_mouse_init_profile_emulation(struct razer_mouse *m);
- void razer_mouse_exit_profile_emulation(struct razer_mouse *m);
- #endif /* RAZER_PROFILE_EMULATION_H_ */
|