Move wxCTZ() documentation to the appropriate place

The documentation comment belongs to interface/wx/math.h, not the header
under include.

Also change the argument type to wxUint32 as the non-gcc version only
works for 32 bit values.
This commit is contained in:
Vadim Zeitlin
2018-11-05 19:19:18 +01:00
parent b00a24af60
commit 1c68979fb4
3 changed files with 17 additions and 11 deletions

View File

@@ -150,6 +150,9 @@ inline int wxRound(double x)
inline double wxDegToRad(double deg) { return (deg * M_PI) / 180.0; } inline double wxDegToRad(double deg) { return (deg * M_PI) / 180.0; }
inline double wxRadToDeg(double rad) { return (rad * 180.0) / M_PI; } inline double wxRadToDeg(double rad) { return (rad * 180.0) / M_PI; }
// Count trailing zeros.
WXDLLIMPEXP_BASE unsigned int wxCTZ(wxUint32 x);
#endif /* __cplusplus */ #endif /* __cplusplus */
@@ -181,14 +184,4 @@ inline double wxRadToDeg(double rad) { return (rad * 180.0) / M_PI; }
/* Compute the greatest common divisor of two positive integers */ /* Compute the greatest common divisor of two positive integers */
WXDLLIMPEXP_BASE unsigned int wxGCD(unsigned int u, unsigned int v); WXDLLIMPEXP_BASE unsigned int wxGCD(unsigned int u, unsigned int v);
#ifdef __cplusplus
/* Count trailing zeros
Returns the number of trailing zeros in unsigned input x.
@since 3.1.2
*/
WXDLLIMPEXP_BASE unsigned int wxCTZ(unsigned x);
#endif
#endif /* _WX_MATH_H_ */ #endif /* _WX_MATH_H_ */

View File

@@ -75,6 +75,19 @@ double wxDegToRad(double deg);
*/ */
double wxRadToDeg(double rad); double wxRadToDeg(double rad);
/**
Count the number of trailing zeros.
This function returns the number of trailing zeros in the binary notation
of its argument @a x. E.g. for @a x equal to 4, or 0b100, the return value
is 2.
@param x Strictly positive, i.e. non-zero, 32 bit number.
@since 3.1.2
*/
unsigned int wxCTZ(wxUint32 x);
/** /**
Small wrapper around round(). Small wrapper around round().
*/ */

View File

@@ -1021,7 +1021,7 @@ unsigned int wxGCD(unsigned int u, unsigned int v)
// wxCTZ // wxCTZ
// Count trailing zeros. Use optimised builtin where available. // Count trailing zeros. Use optimised builtin where available.
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
unsigned int wxCTZ(unsigned x) unsigned int wxCTZ(wxUint32 x)
{ {
wxCHECK_MSG(x > 0, 0, "Undefined for x == 0."); wxCHECK_MSG(x > 0, 0, "Undefined for x == 0.");
#ifdef __GNUC__ #ifdef __GNUC__