# wxPlatformInfo Class Reference
[Application and System configuration]

`#include <wx/platinfo.h>`

## Detailed Description

This class holds informations about the operating system, the toolkit and the basic architecture of the machine where the application is currently running.

This class does not only have getters for the informations above, it also has setters. This allows you to e.g. save the current platform informations in a data file (maybe in string form) so that when you later load it, you can easily retrieve (see the static getters for string->enum conversion functions) and store inside a wxPlatformInfo instance (using its setters) the signature of the system which generated it.

In general however you only need to use the static Get() function and then access the various informations for the current platform:

            wxLogMessage("This application is running under %s.",
                         wxPlatformInfo::Get().GetOperatingSystemIdName());

##

Library: wxBase

Category: Application and System configuration

See also:
  wxGetOsVersion(), wxIsPlatformLittleEndian(), wxIsPlatform64Bit(), wxAppTraits, Network, User and OS

## Public Member Functions
| wxPlatformInfo ()
| Initializes the instance with the values corresponding to the currently running platform.
| wxPlatformInfo (wxPortId pid=wxPORT_UNKNOWN, int tkMajor=-1, int tkMinor=-1, wxOperatingSystemId id=wxOS_UNKNOWN, int osMajor=-1, int osMinor=-1, wxArchitecture arch=wxARCH_INVALID, wxEndianness endian=wxENDIAN_INVALID)
| Initializes the object using given values.
bool | CheckOSVersion (int major, int minor) const
| Returns true if the OS version is at least `major.minor`.
bool | CheckToolkitVersion (int major, int minor) const
| Returns true if the toolkit version is at least `major.minor`.
bool | IsOk () const
| Returns true if this instance is fully initialized with valid values.
bool | IsUsingUniversalWidgets () const
| Returns true if this wxPlatformInfo describes wxUniversal build.
bool | operator!= (const wxPlatformInfo &t) const
| Inequality operator.
bool | operator== (const wxPlatformInfo &t) const
| Equality operator.
Getters
wxArchitecture | GetArchitecture () const
| Returns the architecture ID of this wxPlatformInfo instance.
wxEndianness | GetEndianness () const
| Returns the endianness ID of this wxPlatformInfo instance.
int | GetOSMajorVersion () const
| Returns the run-time major version of the OS associated with this wxPlatformInfo instance.
int | GetOSMinorVersion () const
| Returns the run-time minor version of the OS associated with this wxPlatformInfo instance.
wxOperatingSystemId | GetOperatingSystemId () const
| Returns the operating system ID of this wxPlatformInfo instance.
wxString | GetOperatingSystemDescription () const
| Returns the description of the operating system of this wxPlatformInfo instance.
wxPortId | GetPortId () const
| Returns the wxWidgets port ID associated with this wxPlatformInfo instance.
wxLinuxDistributionInfo | GetLinuxDistributionInfo () const
| Returns the Linux distribution info associated with this wxPlatformInfo instance.
wxString | GetDesktopEnvironment () const
| Returns the desktop environment associated with this wxPlatformInfo instance.
int | GetToolkitMajorVersion () const
| Returns the run-time major version of the toolkit associated with this wxPlatformInfo instance.
int | GetToolkitMinorVersion () const
| Returns the run-time minor version of the toolkit associated with this wxPlatformInfo instance.
String-form getters
wxString | GetArchName () const
| Returns the name for the architecture of this wxPlatformInfo instance.
wxString | GetEndiannessName () const
| Returns the name for the endianness of this wxPlatformInfo instance.
wxString | GetOperatingSystemFamilyName () const
| Returns the operating system family name of the OS associated with this wxPlatformInfo instance.
wxString | GetOperatingSystemIdName () const
| Returns the operating system name of the OS associated with this wxPlatformInfo instance.
wxString | GetPortIdName () const
| Returns the name of the wxWidgets port ID associated with this wxPlatformInfo instance.
wxString | GetPortIdShortName () const
| Returns the short name of the wxWidgets port ID associated with this wxPlatformInfo instance.
Setters
void | SetArchitecture (wxArchitecture n)
| Sets the architecture enum value associated with this wxPlatformInfo instance.
void | SetEndianness (wxEndianness n)
| Sets the endianness enum value associated with this wxPlatformInfo instance.
void | SetOSVersion (int major, int minor)
| Sets the version of the operating system associated with this wxPlatformInfo instance.
void | SetOperatingSystemId (wxOperatingSystemId n)
| Sets the operating system associated with this wxPlatformInfo instance.
void | SetPortId (wxPortId n)
| Sets the wxWidgets port ID associated with this wxPlatformInfo instance.
void | SetToolkitVersion (int major, int minor)
| Sets the version of the toolkit associated with this wxPlatformInfo instance.
void | SetOperatingSystemDescription (const wxString &desc)
| Sets the operating system description associated with this wxPlatformInfo instance.
void | SetDesktopEnvironment (const wxString &de)
| Sets the desktop environment associated with this wxPlatformInfo instance.
void | SetLinuxDistributionInfo (const wxLinuxDistributionInfo &di)
| Sets the linux distribution info associated with this wxPlatformInfo instance.
## Static Public Member Functions
static const wxPlatformInfo & | Get ()
| Returns the global wxPlatformInfo object, initialized with the values for the currently running platform.
Static enum getters
These getters allow for easy string-to-enumeration-value conversion.
static wxArchitecture | GetArch (const wxString &arch)
| Converts the given string to a wxArchitecture enum value or to `wxARCH_INVALID` if the given string is not a valid architecture string (i.e.
static wxEndianness | GetEndianness (const wxString &end)
| Converts the given string to a wxEndianness enum value or to `wxENDIAN_INVALID` if the given string is not a valid endianness string (i.e.
static wxOperatingSystemId | GetOperatingSystemId (const wxString &name)
| Converts the given string to a wxOperatingSystemId enum value or to `wxOS_UNKNOWN` if the given string is not a valid operating system name.
static wxPortId | GetPortId (const wxString &portname)
| Converts the given string to a wxWidgets port ID value or to `wxPORT_UNKNOWN` if the given string does not match any of the wxWidgets canonical name ports ("wxGTK", "wxMSW", etc) nor any of the short wxWidgets name ports ("gtk", "msw", etc).
Static string-form getters
These getters allow for easy enumeration-value-to-string conversion.
static wxString | GetArchName (wxArchitecture arch)
| Returns the name for the given wxArchitecture enumeration value.
static wxString | GetEndiannessName (wxEndianness end)
| Returns name for the given wxEndianness enumeration value.
static wxString | GetOperatingSystemFamilyName (wxOperatingSystemId os)
| Returns the operating system family name for the given wxOperatingSystemId enumeration value: `Unix` for `wxOS_UNIX`, `Macintosh` for `wxOS_MAC`, `Windows` for `wxOS_WINDOWS`, `DOS` for `wxOS_DOS`, `OS/2` for `wxOS_OS2`.
static wxString | GetOperatingSystemIdName (wxOperatingSystemId os)
| Returns the name for the given operating system ID value.
static wxString | GetPortIdName (wxPortId port, bool usingUniversal)
| Returns the name of the given wxWidgets port ID value.
static wxString | GetPortIdShortName (wxPortId port, bool usingUniversal)
| Returns the short name of the given wxWidgets port ID value.
static wxString | GetOperatingSystemDirectory ()
| Returns the operating system directory.

List of all members.

## Constructor & Destructor Documentation

wxPlatformInfo::wxPlatformInfo | ( |  | ) |

Initializes the instance with the values corresponding to the currently running platform.

This is a fast operation because it only requires to copy the values internally cached for the currently running platform.

See also:
  Get()

wxPlatformInfo::wxPlatformInfo | ( | wxPortId | pid = `wxPORT_UNKNOWN`,
|  | int | tkMajor = `-1`,
|  | int | tkMinor = `-1`,
|  | wxOperatingSystemId | id = `wxOS_UNKNOWN`,
|  | int | osMajor = `-1`,
|  | int | osMinor = `-1`,
|  | wxArchitecture | arch = `wxARCH_INVALID`,
|  | wxEndianness | endian = `wxENDIAN_INVALID` |
| ) |  |  |

Initializes the object using given values.

## Member Function Documentation

bool wxPlatformInfo::CheckOSVersion | ( | int | major,
|  | int | minor |
| ) |  |  | const

Returns true if the OS version is at least `major.minor`.

See also:
  GetOSMajorVersion(), GetOSMinorVersion(), CheckToolkitVersion()

bool wxPlatformInfo::CheckToolkitVersion | ( | int | major,
|  | int | minor |
| ) |  |  | const

Returns true if the toolkit version is at least `major.minor`.

See also:
  GetToolkitMajorVersion(), GetToolkitMinorVersion(), CheckOSVersion()

static const wxPlatformInfo& wxPlatformInfo::Get | ( |  | ) | `[static]`

Returns the global wxPlatformInfo object, initialized with the values for the currently running platform.

static wxArchitecture wxPlatformInfo::GetArch | ( | const wxString & | arch | ) | `[static]`

Converts the given string to a wxArchitecture enum value or to `wxARCH_INVALID` if the given string is not a valid architecture string (i.e.

does not contain nor `32` nor `64` strings).

wxArchitecture wxPlatformInfo::GetArchitecture | ( |  | ) | const

Returns the architecture ID of this wxPlatformInfo instance.

wxString wxPlatformInfo::GetArchName | ( |  | ) | const

Returns the name for the architecture of this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetArchName | ( | wxArchitecture | arch | ) | `[static]`

Returns the name for the given wxArchitecture enumeration value.

wxString wxPlatformInfo::GetDesktopEnvironment | ( |  | ) | const

Returns the desktop environment associated with this wxPlatformInfo instance.

See wxAppTraits::GetDesktopEnvironment() for more info.

wxEndianness wxPlatformInfo::GetEndianness | ( |  | ) | const

Returns the endianness ID of this wxPlatformInfo instance.

static wxEndianness wxPlatformInfo::GetEndianness | ( | const wxString & | end | ) | `[static]`

Converts the given string to a wxEndianness enum value or to `wxENDIAN_INVALID` if the given string is not a valid endianness string (i.e.

does not contain nor little nor big strings).

wxString wxPlatformInfo::GetEndiannessName | ( |  | ) | const

Returns the name for the endianness of this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetEndiannessName | ( | wxEndianness | end | ) | `[static]`

Returns name for the given wxEndianness enumeration value.

wxLinuxDistributionInfo wxPlatformInfo::GetLinuxDistributionInfo | ( |  | ) | const

Returns the Linux distribution info associated with this wxPlatformInfo instance.

See wxGetLinuxDistributionInfo() for more info.

wxString wxPlatformInfo::GetOperatingSystemDescription | ( |  | ) | const

Returns the description of the operating system of this wxPlatformInfo instance.

See wxGetOSDescription() for more info.

static wxString wxPlatformInfo::GetOperatingSystemDirectory | ( |  | ) | `[static]`

Returns the operating system directory.

See wxGetOSDirectory() for more info.

wxString wxPlatformInfo::GetOperatingSystemFamilyName | ( |  | ) | const

Returns the operating system family name of the OS associated with this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetOperatingSystemFamilyName | ( | wxOperatingSystemId | os | ) | `[static]`

Returns the operating system family name for the given wxOperatingSystemId enumeration value: `Unix` for `wxOS_UNIX`, `Macintosh` for `wxOS_MAC`, `Windows` for `wxOS_WINDOWS`, `DOS` for `wxOS_DOS`, `OS/2` for `wxOS_OS2`.

wxOperatingSystemId wxPlatformInfo::GetOperatingSystemId | ( |  | ) | const

Returns the operating system ID of this wxPlatformInfo instance.

See wxGetOsVersion() for more info.

static wxOperatingSystemId wxPlatformInfo::GetOperatingSystemId | ( | const wxString & | name | ) | `[static]`

Converts the given string to a wxOperatingSystemId enum value or to `wxOS_UNKNOWN` if the given string is not a valid operating system name.

wxString wxPlatformInfo::GetOperatingSystemIdName | ( |  | ) | const

Returns the operating system name of the OS associated with this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetOperatingSystemIdName | ( | wxOperatingSystemId | os | ) | `[static]`

Returns the name for the given operating system ID value.

This can be a long name (e.g. `Microsoft Windows NT`); use GetOperatingSystemFamilyName() to retrieve a short, generic name.

int wxPlatformInfo::GetOSMajorVersion | ( |  | ) | const

Returns the run-time major version of the OS associated with this wxPlatformInfo instance.

See also:
  wxGetOsVersion(), CheckOSVersion()

int wxPlatformInfo::GetOSMinorVersion | ( |  | ) | const

Returns the run-time minor version of the OS associated with this wxPlatformInfo instance.

See also:
  wxGetOsVersion(), CheckOSVersion()

wxPortId wxPlatformInfo::GetPortId | ( |  | ) | const

Returns the wxWidgets port ID associated with this wxPlatformInfo instance.

static wxPortId wxPlatformInfo::GetPortId | ( | const wxString & | portname | ) | `[static]`

Converts the given string to a wxWidgets port ID value or to `wxPORT_UNKNOWN` if the given string does not match any of the wxWidgets canonical name ports ("wxGTK", "wxMSW", etc) nor any of the short wxWidgets name ports ("gtk", "msw", etc).

wxString wxPlatformInfo::GetPortIdName | ( |  | ) | const

Returns the name of the wxWidgets port ID associated with this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetPortIdName | ( | wxPortId | port,
|  | bool | usingUniversal |
| ) |  |  | `[static]`

Returns the name of the given wxWidgets port ID value.

The usingUniversal argument specifies whether the port is in its native or wxUniversal variant.

The returned string always starts with the "wx" prefix and is a mixed-case string.

wxString wxPlatformInfo::GetPortIdShortName | ( |  | ) | const

Returns the short name of the wxWidgets port ID associated with this wxPlatformInfo instance.

static wxString wxPlatformInfo::GetPortIdShortName | ( | wxPortId | port,
|  | bool | usingUniversal |
| ) |  |  | `[static]`

Returns the short name of the given wxWidgets port ID value.

The usingUniversal argument specifies whether the port is in its native or wxUniversal variant.

The returned string does not start with the "wx" prefix and is always lower case.

int wxPlatformInfo::GetToolkitMajorVersion | ( |  | ) | const

Returns the run-time major version of the toolkit associated with this wxPlatformInfo instance.

Note that if GetPortId() returns `wxPORT_BASE`, then this value is zero (unless externally modified with SetToolkitVersion()); that is, no native toolkit is in use. See wxAppTraits::GetToolkitVersion() for more info.

See also:
  CheckToolkitVersion()

int wxPlatformInfo::GetToolkitMinorVersion | ( |  | ) | const

Returns the run-time minor version of the toolkit associated with this wxPlatformInfo instance.

Note that if GetPortId() returns `wxPORT_BASE`, then this value is zero (unless externally modified with SetToolkitVersion()); that is, no native toolkit is in use. See wxAppTraits::GetToolkitVersion() for more info.

See also:
  CheckToolkitVersion()

bool wxPlatformInfo::IsOk | ( |  | ) | const

Returns true if this instance is fully initialized with valid values.

bool wxPlatformInfo::IsUsingUniversalWidgets | ( |  | ) | const

Returns true if this wxPlatformInfo describes wxUniversal build.

bool wxPlatformInfo::operator!= | ( | const wxPlatformInfo & | t | ) | const

Inequality operator.

Tests all class' internal variables.

bool wxPlatformInfo::operator== | ( | const wxPlatformInfo & | t | ) | const

Equality operator.

Tests all class' internal variables.

void wxPlatformInfo::SetArchitecture | ( | wxArchitecture | n | ) |

Sets the architecture enum value associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetDesktopEnvironment | ( | const wxString & | de | ) |

Sets the desktop environment associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetEndianness | ( | wxEndianness | n | ) |

Sets the endianness enum value associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetLinuxDistributionInfo | ( | const wxLinuxDistributionInfo & | di | ) |

Sets the linux distribution info associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetOperatingSystemDescription | ( | const wxString & | desc | ) |

Sets the operating system description associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetOperatingSystemId | ( | wxOperatingSystemId | n | ) |

Sets the operating system associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetOSVersion | ( | int | major,
|  | int | minor |
| ) |  |  |

Sets the version of the operating system associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetPortId | ( | wxPortId | n | ) |

Sets the wxWidgets port ID associated with this wxPlatformInfo instance.

void wxPlatformInfo::SetToolkitVersion | ( | int | major,
|  | int | minor |
| ) |  |  |

Sets the version of the toolkit associated with this wxPlatformInfo instance.

|  | [ top ]