diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2018-02-15 09:06:13 +0100 | 
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2018-02-15 10:23:11 +0100 | 
| commit | 0a92bc147f91f3ecacdf66d995f01f9577107a86 (patch) | |
| tree | d748f1b081cd37eb2b4a6cd6b5254433ba8b8dab /tracker-wii | |
| parent | d8327db8025e56500ebb0bef2ab45aa8963a36ca (diff) | |
clean up "static" and "constexpr" types
- use `static constexpr inline' to avoid requiring
  explicit declarations in object code
- use `const Foo* const' to maybe put into readonly
  binary segment (at least for ELF DSOs)
- `constexpr' in function scope has storage, avoid
  `static'
- don't use `constexpr' where there's no advantage,
  like arrays
We'd like to avoid overhead of atomic initialization
for each function call. No idea how `static constexpr'
requiring storage in the standard plays with atomic
initialization requirement. Hearsay points that
`constexpr' without `static' in block scope behaves
more to our liking. It's all hazy though.
I'm not 100% sure if `static inline constexpr' has any
storage. Hopefully none, like a #define, and stuff
bigger than registers gets coalesced within the same
module, with small stuff being immediates.
Diffstat (limited to 'tracker-wii')
| -rw-r--r-- | tracker-wii/wiiyourself/wiimote.cpp | 4 | ||||
| -rw-r--r-- | tracker-wii/wiiyourself/wiimote.h | 15 | 
2 files changed, 6 insertions, 13 deletions
diff --git a/tracker-wii/wiiyourself/wiimote.cpp b/tracker-wii/wiiyourself/wiimote.cpp index 956c4fc6..e1e49101 100644 --- a/tracker-wii/wiiyourself/wiimote.cpp +++ b/tracker-wii/wiiyourself/wiimote.cpp @@ -114,13 +114,13 @@ const unsigned wiimote::FreqLookup [TOTAL_FREQUENCIES] =  								{    0, 4200, 3920, 3640, 3360,  								  3130,	2940, 2760, 2610, 2470 }; -const TCHAR*   wiimote::ButtonNameFromBit		 [TOTAL_BUTTON_BITS] = +const TCHAR* const wiimote::ButtonNameFromBit		 [TOTAL_BUTTON_BITS] =  								{ _T("Left") , _T("Right"), _T("Down"), _T("Up"),  								  _T("Plus") , _T("??")   , _T("??")  , _T("??") ,  								  _T("Two")  , _T("One")  , _T("B")   , _T("A") ,  								  _T("Minus"), _T("??")   , _T("??")  , _T("Home") }; -const TCHAR*   wiimote::ClassicButtonNameFromBit [TOTAL_BUTTON_BITS] = +const TCHAR* const wiimote::ClassicButtonNameFromBit [TOTAL_BUTTON_BITS] =  								{ _T("??")   , _T("TrigR")  , _T("Plus") , _T("Home"),  								  _T("Minus"), _T("TrigL") , _T("Down") , _T("Right") ,  								  _T("Up")   , _T("Left")   , _T("ZR")   , _T("X") , diff --git a/tracker-wii/wiiyourself/wiimote.h b/tracker-wii/wiiyourself/wiimote.h index 1db2c098..3588b7c7 100644 --- a/tracker-wii/wiiyourself/wiimote.h +++ b/tracker-wii/wiiyourself/wiimote.h @@ -8,12 +8,7 @@  //  //  wiimote.h  (tab = 4 spaces) -#ifdef _MSC_VER // VC -# pragma once -#endif - -#ifndef _WIIMOTE_H -# define _WIIMOTE_H +#pragma once  #define WIN32_LEAN_AND_MEAN  #include <windows.h> @@ -165,7 +160,7 @@ class wiimote : public wiimote_state  												 const wiimote_state &new_state) {};  		// get the button name from its bit index (some bits are unused) -		static const TCHAR*		   ButtonNameFromBit [TOTAL_BUTTON_BITS]; +                static const TCHAR* const	   ButtonNameFromBit [TOTAL_BUTTON_BITS];  		static const TCHAR*		GetButtonNameFromBit (unsigned index)  			{  			_ASSERT(index < TOTAL_BUTTON_BITS); @@ -175,8 +170,8 @@ class wiimote : public wiimote_state  			}  		// same for the Classic Controller -		static const TCHAR*		   ClassicButtonNameFromBit [TOTAL_BUTTON_BITS]; -		static const TCHAR*		GetClassicButtonNameFromBit (unsigned index) +                static const TCHAR* const   ClassicButtonNameFromBit [TOTAL_BUTTON_BITS]; +                static const TCHAR*         GetClassicButtonNameFromBit (unsigned index)  			{  			_ASSERT(index < TOTAL_BUTTON_BITS);  			if(index >= TOTAL_BUTTON_BITS) @@ -491,5 +486,3 @@ volatile int	 MotionPlusDetectCount;		  // waiting for the result  			unsigned		ExtTriggerFlags;// extension changes "  			} Recording;  	}; - -#endif // _WIIMOTE_H
\ No newline at end of file  | 
