Macros like this are in common use in the kernel, X server, etc. and are slightly more readable than the |= and &= ~ expressions.
Signed-off-by: Peter Hutterer <[email protected]> --- src/wcmISDV4.c | 12 ++++++------ src/wcmValidateDevice.c | 3 +-- src/xf86WacomDefs.h | 2 ++ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/wcmISDV4.c b/src/wcmISDV4.c index e6a24d0..b63bc9f 100644 --- a/src/wcmISDV4.c +++ b/src/wcmISDV4.c @@ -727,20 +727,20 @@ int isdv4ProbeKeys(LocalDevicePtr local) memset(common->wcmKeys, 0, sizeof(common->wcmKeys)); /* default to penabled */ - common->wcmKeys[LONG(BTN_TOOL_PEN)] |= BIT(BTN_TOOL_PEN); - common->wcmKeys[LONG(BTN_TOOL_RUBBER)] |= BIT(BTN_TOOL_RUBBER); + SETBIT(common->wcmKeys, BTN_TOOL_PEN); + SETBIT(common->wcmKeys, BTN_TOOL_RUBBER); /* id < 0x008 are only penabled */ if (id > 0x007) - common->wcmKeys[LONG(BTN_TOOL_DOUBLETAP)] |= BIT(BTN_TOOL_DOUBLETAP); + SETBIT(common->wcmKeys, BTN_TOOL_DOUBLETAP); if (id > 0x0a) - common->wcmKeys[LONG(BTN_TOOL_TRIPLETAP)] |= BIT(BTN_TOOL_TRIPLETAP); + SETBIT(common->wcmKeys, BTN_TOOL_TRIPLETAP); /* no pen 2FGT */ if (id == 0x010) { - common->wcmKeys[LONG(BTN_TOOL_PEN)] &= ~BIT(BTN_TOOL_PEN); - common->wcmKeys[LONG(BTN_TOOL_RUBBER)] &= ~BIT(BTN_TOOL_RUBBER); + CLEARBIT(common->wcmKeys, BTN_TOOL_PEN); + CLEARBIT(common->wcmKeys, BTN_TOOL_RUBBER); } /* 0x9a and 0x9f are only detected by communicating diff --git a/src/wcmValidateDevice.c b/src/wcmValidateDevice.c index d4fd0b2..c7f7233 100644 --- a/src/wcmValidateDevice.c +++ b/src/wcmValidateDevice.c @@ -157,8 +157,7 @@ Bool wcmIsAValidType(LocalDevicePtr local, const char* type) else if (!strlen(dsource)) /* an user defined type */ { /* assume it is a valid type */ - common->wcmKeys[LONG(wcmType[j].tool)] - |= BIT(wcmType[j].tool); + SETBIT(common->wcmKeys, wcmType[j].tool); ret = TRUE; break; } diff --git a/src/xf86WacomDefs.h b/src/xf86WacomDefs.h index 4691a58..2f9e827 100644 --- a/src/xf86WacomDefs.h +++ b/src/xf86WacomDefs.h @@ -56,6 +56,8 @@ #define BITS_PER_LONG (sizeof(long) * 8) #define NBITS(x) ((((x)-1)/BITS_PER_LONG)+1) #define ISBITSET(x,y) ((x)[LONG(y)] & BIT(y)) +#define SETBIT(x,y) ((x)[LONG(y)] |= BIT(y)) +#define CLEARBIT(x,y) ((x)[LONG(y)] &= ~BIT(y)) #define OFF(x) ((x)%BITS_PER_LONG) #define LONG(x) ((x)/BITS_PER_LONG) -- 1.6.6.1 ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ Linuxwacom-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel
