Class UnitySystemConfigurationSettings
Unity ScriptableObject implementation of system configuration settings.
Provides comprehensive configuration options for system information collection, timing, privacy controls, and game settings synchronization.
Supports automatic collection triggers, data scope filtering, platform-specific enablement, and advanced culture/display detection modes.
Implements ISystemConfigurationSettings interface while providing Unity Inspector-friendly serialized fields.
Namespace: Serenity.SystemConfiguration.Infrastructure.Settings
Assembly: Serenity.UnitySystemConfiguration.Infrastructure.dll
Syntax
public class UnitySystemConfigurationSettings : ScriptableObject, ISystemConfigurationSettings, IFoundationSettings
Constructors
UnitySystemConfigurationSettings()
Declaration
public UnitySystemConfigurationSettings()
Fields
CollectOnFocusChange
Declaration
public bool CollectOnFocusChange
Field Value
| Type | Description |
|---|---|
| bool | Enables system configuration collection when application focus changes (gain/lose focus). |
CollectOnResolutionChange
Declaration
public bool CollectOnResolutionChange
Field Value
| Type | Description |
|---|---|
| bool | Enables automatic collection when display resolution or refresh rate changes are detected. |
CollectOnStartup
Declaration
public bool CollectOnStartup
Field Value
| Type | Description |
|---|---|
| bool | Enables automatic system configuration collection during application startup. |
CultureListSource
Declaration
public CultureListSourceMode CultureListSource
Field Value
| Type | Description |
|---|---|
| CultureListSourceMode | Source method for populating culture selection lists (Localization system vs .NET Foundation). |
EnableEditorPersistence
Declaration
public bool EnableEditorPersistence
Field Value
| Type | Description |
|---|---|
| bool | Enables persistent storage of system configuration data in Unity Editor (for development/debugging). |
EnableOnPlatform
Declaration
public PlatformMask EnableOnPlatform
Field Value
| Type | Description |
|---|---|
| PlatformMask | Platform mask controlling which build targets have system configuration collection enabled. |
Guid
Declaration
public string Guid
Field Value
| Type | Description |
|---|---|
| string | Global unique identifier for this system configuration settings instance. |
Id
Declaration
public string Id
Field Value
| Type | Description |
|---|---|
| string | Unique identifier for this system configuration settings instance. |
IncludeCultureInfo
Declaration
public bool IncludeCultureInfo
Field Value
| Type | Description |
|---|---|
| bool | Includes culture, language, and regional information in system configuration snapshots. |
IncludeDisplayInfo
Declaration
public bool IncludeDisplayInfo
Field Value
| Type | Description |
|---|---|
| bool | Includes display information such as resolution, refresh rate, and multi-monitor setup. |
IncludeMachineName
Declaration
public bool IncludeMachineName
Field Value
| Type | Description |
|---|---|
| bool | Includes machine/device name in system configuration snapshots (privacy consideration). |
IncludeOsAndHardware
Declaration
public bool IncludeOsAndHardware
Field Value
| Type | Description |
|---|---|
| bool | Includes operating system and hardware specifications in system configuration snapshots. |
IncludeXRInfo
Declaration
public bool IncludeXRInfo
Field Value
| Type | Description |
|---|---|
| bool | Includes XR (Extended Reality) hardware and capability information when available. |
JsonFileName
Declaration
public string JsonFileName
Field Value
| Type | Description |
|---|---|
| string | Filename for persistent storage of system configuration snapshots when disk persistence is enabled. |
MinRefreshRateHz
Declaration
public int MinRefreshRateHz
Field Value
| Type | Description |
|---|---|
| int | Minimum refresh rate threshold in Hz; values below this are treated as invalid or unreliable. |
PersistLastSnapshotToDisk
Declaration
public bool PersistLastSnapshotToDisk
Field Value
| Type | Description |
|---|---|
| bool | Enables saving the most recent system configuration snapshot to disk for debugging purposes. |
PollingEnabled
Declaration
public bool PollingEnabled
Field Value
| Type | Description |
|---|---|
| bool | Enables periodic system configuration collection at regular intervals. |
PollingIntervalSeconds
Declaration
public float PollingIntervalSeconds
Field Value
| Type | Description |
|---|---|
| float | Interval in seconds between periodic system configuration collections when polling is enabled. |
PreferredCultureOverride
Declaration
public string PreferredCultureOverride
Field Value
| Type | Description |
|---|---|
| string | Culture code to use when UsePreferredCultureOverride is enabled (e.g., "en-US", "ja-JP"). |
PrimaryDisplayIndex
Declaration
public int PrimaryDisplayIndex
Field Value
| Type | Description |
|---|---|
| int | Index of the primary display in multi-monitor configurations (0-based). |
RayTracingMode
Declaration
public RayTracingDetectionMode RayTracingMode
Field Value
| Type | Description |
|---|---|
| RayTracingDetectionMode | Specifies the detection mode for ray tracing capability analysis. |
RefreshRateSource
Declaration
public RefreshRateSourceMode RefreshRateSource
Field Value
| Type | Description |
|---|---|
| RefreshRateSourceMode | Determines the source method for display refresh rate detection. |
SyncMap
Declaration
public UnitySnapshotKeyMap[] SyncMap
Field Value
| Type | Description |
|---|---|
| UnitySnapshotKeyMap[] | Mapping configuration for synchronizing system configuration values with specific game settings keys. |
SyncWithGameSettingsOnCollect
Declaration
public bool SyncWithGameSettingsOnCollect
Field Value
| Type | Description |
|---|---|
| bool | Enables automatic synchronization of system configuration data with game settings when snapshots are collected. |
UsePreferredCultureOverride
Declaration
public bool UsePreferredCultureOverride
Field Value
| Type | Description |
|---|---|
| bool | Enables manual culture override instead of using system-detected culture information. |
Verbosity
Declaration
public LogVerbosity Verbosity
Field Value
| Type | Description |
|---|---|
| LogVerbosity | Logging verbosity level for system configuration operations and diagnostics. |