Class SerializableWrapper
A serializable wrapper for system configuration snapshots.
Inherited Members
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). |