1 /* 2 This file is part of g810-led. 3 4 g810-led is free software: you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation, version 3 of the License. 7 8 g810-led is distributed in the hope that it will be useful, 9 but WITHOUT ANY WARRANTY; without even the implied warranty of 10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 GNU General Public License for more details. 12 13 You should have received a copy of the GNU General Public License 14 along with g810-led. If not, see <https://www.gnu.org/licenses/>. 15 */ 16 17 #ifndef HELP_HELPER 18 #define HELP_HELPER 19 20 #include <iostream> 21 22 namespace help { 23 24 enum class KeyboardFeatures : uint16_t { 25 none = 0, 26 rgb = 1, 27 intensity = 2, 28 commit = 4, 29 logo1 = 8, 30 logo2 = 16, 31 numpad = 32, 32 multimedia = 64, 33 gkeys = 128, 34 setall = 256, 35 setgroup = 512, 36 setkey = 1024, 37 setregion = 2048, 38 setindicators = 4096, 39 poweronfx = 8192, 40 // "user-stored lighting" can be recalled with backlight+7 on the G Pro 41 userstoredlighting = 16384, 42 onboardmode = 32768, 43 // fx features 44 45 all = rgb | intensity | commit | logo1 | logo2 | numpad | multimedia | gkeys | 46 setall | setgroup | setkey | setregion | setindicators | poweronfx | userstoredlighting | onboardmode, 47 48 g213 = rgb | logo1 | numpad | multimedia | setall | setregion | setindicators | poweronfx | userstoredlighting, 49 g410 = rgb | commit | setall | setgroup | setkey | poweronfx | userstoredlighting, 50 g413 = intensity | setall | userstoredlighting, 51 g512 = rgb | commit | numpad | setall | setgroup | setkey | setindicators | poweronfx | userstoredlighting, 52 g513 = rgb | commit | numpad | setall | setgroup | setkey | setindicators | poweronfx | userstoredlighting, 53 g610 = intensity | commit | logo1 | numpad | multimedia | setall | setgroup | setkey | setindicators | poweronfx | userstoredlighting, 54 g810 = rgb | commit | logo1 | numpad | multimedia | setall | setgroup | setkey | setindicators | poweronfx, 55 g815 = rgb | commit | logo1 | numpad | multimedia | gkeys | setall | setgroup | setkey | setindicators | onboardmode, 56 g910 = rgb | commit | logo1 | logo2 | numpad | multimedia | gkeys | setall | setgroup | setkey | setindicators | poweronfx | userstoredlighting, 57 gpro = rgb | commit | logo1 | setall | setgroup | setkey | setindicators | poweronfx | userstoredlighting 58 }; 59 inline KeyboardFeatures operator|(KeyboardFeatures a, KeyboardFeatures b); 60 61 KeyboardFeatures getKeyboardFeatures(std::string cmdName); 62 63 void usage(char *arg0); 64 void keys(char *arg0); 65 void effects(char *arg0); 66 void samples(char *arg0); 67 68 } 69 70 #ifndef VERSION 71 #define VERSION "unspecified" 72 #endif 73 74 #endif 75