X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/7c913512a4c9f36e11e07ea707002fab1608d324..40c53d1b49569facfd71e30ef56d26df790621c4:/interface/longlong.h diff --git a/interface/longlong.h b/interface/longlong.h index 4202cf5314..fc970ea8e6 100644 --- a/interface/longlong.h +++ b/interface/longlong.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: longlong.h -// Purpose: documentation for wxLongLong class +// Purpose: interface of wxLongLong // Author: wxWidgets team // RCS-ID: $Id$ // Licence: wxWindows license @@ -30,10 +30,10 @@ If a native (i.e. supported directly by the compiler) 64 bit integer type was found to exist, @e wxLongLong_t macro will be defined to correspond to it. Also, in this case only, two additional macros will be defined: - wxLongLongFmtSpec for printing 64 bit integers + wxLongLongFmtSpec() for printing 64 bit integers using the standard @c printf() function (but see also wxLongLong::ToString for a more portable solution) and - wxLL for defining 64 bit integer compile-time constants. + wxLL() for defining 64 bit integer compile-time constants. @library{wxbase} @category{data} @@ -53,7 +53,7 @@ public: or modifying it in place (the second one). Not in wxULongLong. */ wxLongLong Abs(); - wxLongLong Abs(); + const wxLongLong& Abs(); //@} /** @@ -66,39 +66,39 @@ public: /** Returns the high 32 bits of 64 bit integer. */ - long GetHi(); + long GetHi() const; /** Returns the low 32 bits of 64 bit integer. */ - unsigned long GetLo(); + unsigned long GetLo() const; /** Convert to native long long (only for compilers supporting it) */ - wxLongLong_t GetValue(); + wxLongLong_t GetValue() const; /** Returns the value as @c double. */ - double ToDouble(); + double ToDouble() const; /** Truncate wxLongLong to long. If the conversion loses data (i.e. the wxLongLong value is outside the range of built-in long type), an assert will be triggered in debug mode. */ - long ToLong(); + long ToLong() const; /** Returns the string representation of a wxLongLong. */ - wxString ToString(); + wxString ToString() const; /** Adds 2 wxLongLongs together and returns the result. */ - wxLongLong operator+(const wxLongLong& ll); + wxLongLong operator+(const wxLongLong& ll) const; //@{ /** @@ -116,7 +116,7 @@ public: /** Subtracts 2 wxLongLongs and returns the result. */ - wxLongLong operator-(const wxLongLong& ll); + wxLongLong operator-(const wxLongLong& ll) const; //@{ /** @@ -133,55 +133,70 @@ public: /** Assignment operator from unsigned long long. The sign bit will be copied too. - - This function is new since wxWidgets version 2.7.0 + + @wxsince{2.7.0} */ - wxLongLong& operator operator=(const wxULongLong & ll); + wxLongLong& operator operator=(const wxULongLong& ll); }; + // ============================================================================ // Global functions/macros // ============================================================================ +/** @ingroup group_funcmacro_misc */ +//@{ + /** This macro is defined to contain the @c printf() format specifier using which 64 bit integer numbers (i.e. those of type @c wxLongLong_t) can be printed. Example of using it: + @code #ifdef wxLongLong_t - wxLongLong_t ll = wxLL(0x1234567890abcdef); - printf("Long long = %" wxLongLongFmtSpec "x\n", ll); - #endif + wxLongLong_t ll = wxLL(0x1234567890abcdef); + printf("Long long = %" wxLongLongFmtSpec "x\n", ll); + #endif @endcode - @sa wxLL -*/ + @see wxLL() + @header{wx/longlong.h} +*/ +#define wxLongLongFmtSpec /** - This macro is defined for the platforms with a native 64 bit integer type and - allows to define unsigned 64 bit compile time constants: + This macro is defined for the platforms with a native 64 bit integer type + and allow the use of 64 bit compile time constants: + @code #ifdef wxLongLong_t - unsigned wxLongLong_t ll = wxULL(0x1234567890abcdef); - #endif + wxLongLong_t ll = wxLL(0x1234567890abcdef); + #endif @endcode - @sa wxLL, wxLongLong + @see wxULL(), wxLongLong + + @header{wx/longlong.h} */ -#define wxLongLong_t wxULL(number) /* implementation is private */ +wxLongLong_t wxLL(number); /** - This macro is defined for the platforms with a native 64 bit integer type and - allows to define 64 bit compile time constants: + This macro is defined for the platforms with a native 64 bit integer type + and allow the use of 64 bit compile time constants: + @code #ifdef wxLongLong_t - wxLongLong_t ll = wxLL(0x1234567890abcdef); - #endif + unsigned wxLongLong_t ll = wxULL(0x1234567890abcdef); + #endif @endcode - @sa wxULL, wxLongLong + @see wxLL(), wxLongLong + + @header{wx/longlong.h} */ -#define wxLongLong_t wxLL(number) /* implementation is private */ +wxLongLong_t wxULL(number); + +//@}