logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Class SerializableWrapper

    A serializable wrapper for system configuration snapshots.

    Inheritance
    object
    SerializableWrapper
    Inherited Members
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    Namespace: Serenity.SystemConfiguration.Application.Helpers
    Assembly: Serenity.SystemConfiguration.Application.dll
    Syntax
    public class SerializableWrapper
    Remarks

    This class is designed to be serialized by the foundation and contains only basic types and arrays to ensure compatibility with various serialization formats (e.g., JSON, XML).

    Constructors

    SerializableWrapper(ISystemConfigurationSnapshot, ISystemConfigurationService, ISystemMonitorsProvider, int)

    Initializes a new instance of the SerializableWrapper class with the specified snapshot and optional parameters.

    Declaration
    public SerializableWrapper(ISystemConfigurationSnapshot snapshot, ISystemConfigurationService systemConfigurationService, ISystemMonitorsProvider monitorsProvider, int minRefreshRateHz)
    Parameters
    Type Name Description
    ISystemConfigurationSnapshot snapshot

    The system configuration snapshot to wrap.

    ISystemConfigurationService systemConfigurationService

    The system configuration service instance (optional, used for fallback settings).

    ISystemMonitorsProvider monitorsProvider

    The system monitors provider instance (optional, used to fetch OS monitor info).

    int minRefreshRateHz

    Minimum refresh rate in Hz to filter monitors (optional, default is 0 for no filter).

    Remarks

    The constructor extracts relevant information from the provided snapshot and populates the fields of this wrapper. It also attempts to fetch OS monitor information if a provider is supplied.

    Fields

    CollectedAtUtc

    Declaration
    public string CollectedAtUtc
    Field Value
    Type Description
    string

    Timestamp when the snapshot was collected, in ISO-8601 "u" format (e.g., "2023-10-05 14:30:00Z").

    CultureName

    Declaration
    public string CultureName
    Field Value
    Type Description
    string

    Culture name of the system (e.g., "en-US").

    DeviceModel

    Declaration
    public string DeviceModel
    Field Value
    Type Description
    string

    Device model (e.g., "MacBook Pro").

    DeviceName

    Declaration
    public string DeviceName
    Field Value
    Type Description
    string

    Device name (e.g., "John's MacBook").

    Displays

    Declaration
    public SerializableDisplayInfo[] Displays
    Field Value
    Type Description
    SerializableDisplayInfo[]

    Array of display information (if available, e.g., in Unity).

    GpuMemoryMB

    Declaration
    public int GpuMemoryMB
    Field Value
    Type Description
    int

    GPU memory in MB (e.g., 8192).

    GpuName

    Declaration
    public string GpuName
    Field Value
    Type Description
    string

    GPU name (e.g., "NVIDIA GeForce GTX 1080").

    GraphicsApi

    Declaration
    public string GraphicsApi
    Field Value
    Type Description
    string

    Graphics API used (e.g., "DirectX 12", "Vulkan").

    HdrpRtFlag

    Declaration
    public bool? HdrpRtFlag
    Field Value
    Type Description
    bool?

    Indicates whether the HDRP ray tracing flag is set (if applicable).

    IsHdrpActive

    Declaration
    public bool? IsHdrpActive
    Field Value
    Type Description
    bool?

    Indicates whether HDRP is active (if applicable).

    Language

    Declaration
    public string Language
    Field Value
    Type Description
    string

    Language of the system (e.g., "en").

    OperatingSystem

    Declaration
    public string OperatingSystem
    Field Value
    Type Description
    string

    Operating system information (e.g., "Windows 10", "macOS 11.2", "Linux Ubuntu 20.04").

    OsMonitors

    Declaration
    public SerializableOsMonitor[] OsMonitors
    Field Value
    Type Description
    SerializableOsMonitor[]

    Array of OS monitor information (if available via provider).

    PrimaryDisplayHeight

    Declaration
    public int PrimaryDisplayHeight
    Field Value
    Type Description
    int

    Primary display height in pixels.

    PrimaryDisplayRefreshRate

    Declaration
    public int PrimaryDisplayRefreshRate
    Field Value
    Type Description
    int

    Primary display refresh rate in Hz.

    PrimaryDisplayWidth

    Declaration
    public int PrimaryDisplayWidth
    Field Value
    Type Description
    int

    Primary display width in pixels.

    RegionDisplayName

    Declaration
    public string RegionDisplayName
    Field Value
    Type Description
    string

    Region display name of the system (e.g., "United States").

    SupportsComputeShaders

    Declaration
    public bool SupportsComputeShaders
    Field Value
    Type Description
    bool

    Indicates whether the system supports compute shaders.

    SupportsRayTracing

    Declaration
    public bool SupportsRayTracing
    Field Value
    Type Description
    bool

    Indicates whether the system supports ray tracing.

    SystemMemoryMB

    Declaration
    public int SystemMemoryMB
    Field Value
    Type Description
    int

    System memory in MB (e.g., 16384).

    TimeZoneId

    Declaration
    public string TimeZoneId
    Field Value
    Type Description
    string

    Time zone ID of the system (e.g., "Pacific Standard Time").

    UnityRtSupportFlag

    Declaration
    public bool? UnityRtSupportFlag
    Field Value
    Type Description
    bool?

    Indicates whether Unity's ray tracing support is enabled (if applicable).

    In this article
    © 2026 Serenity. All Rights Reserved