> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XSystemAnalyticsInfo

> XSystemAnalyticsInfo

# XSystemAnalyticsInfo

Represents information about the current device.

## Syntax

```cpp theme={null}
typedef struct XSystemAnalyticsInfo {  
    XVersion osVersion;  
    XVersion hostingOsVersion;  
    char family[64];  
    char form[64];  
} XSystemAnalyticsInfo  
```

### Members

*osVersion*\
Type: [XVersion](/reference/system/xgameruntimetypes/structs/xversion)

The version of the operating system on which the game is running. For XBOX devices, this value represents the version of the title OS. For desktop devices, this value represents the version of the system OS.

*hostingOsVersion*\
Type: [XVersion](/reference/system/xgameruntimetypes/structs/xversion)

The version of the operating system from which the game was launched. For XBOX devices, this value represents the version of the system OS. For desktop devices, this value is typically the same as the value of *osVersion*.

*family*\
Type: char\[64]

The general description of the device family. Examples: "XBOX" and "Windows".

*form*\
Type: char\[64]

The specific type of hardware in the device family. Example: "XBOX One X DevKit".

## Remarks

This structure is returned when [XSystemGetAnalyticsInfo](/reference/system/xsystem/functions/xsystemgetanalyticsinfo) is called. The structure provides the current device's operating system versions, device family, and device form.

The following example illustrates how to retrieve the version information for the operating system in which a game is running, by invoking **XSystemGetAnalyticsInfo** and concatenating the results returned in the *osVersion* member of **XSystemAnalyticsInfo**.

```cpp theme={null}
// Get the version of the operating system in which the game is running.
std::string Game::GetGameOSVersion()
{
    // Call XSystemGetAnalyticsInfo()
    XSystemAnalyticsInfo info = XSystemGetAnalyticsInfo();

    // Return a formatted string from the osVersion member of XSystemAnalyticsInfo.
    return std::to_string(info.osVersion.major) + "." +
        std::to_string(info.osVersion.minor) + "." +
        std::to_string(info.osVersion.build) + "." +
        std::to_string(info.osVersion.revision);

}
```

## Requirements

**Header:** XSystem.h

**Supported platforms:** Windows, XBOX One family consoles and XBOX Series consoles

## See also

[XSystem](/reference/system/xsystem/xsystem_members)\
[XSystemGetAnalyticsInfo](/reference/system/xsystem/functions/xsystemgetanalyticsinfo)\
[XVersion](/reference/system/xgameruntimetypes/structs/xversion)


## Related topics

- [XSystemGetAnalyticsInfo](/reference/system/xsystem/functions/xsystemgetanalyticsinfo.md)
- [XSystem](/reference/system/xsystem/xsystem_members.md)
- [XVersion](/reference/system/xgameruntimetypes/structs/xversion.md)
- [Real-time Analytics Core Concepts](/services/playfab/data-analytics/ingest-data/real-time-analytics-core-concepts.md)
- [XSystemGetConsoleId](/reference/system/xsystem/functions/xsystemgetconsoleid.md)
