Namespace Serenity.SystemConfiguration.Infrastructure.Services
Classes
UnitySystemConfigurationService
Main orchestrator service that manages system configuration collection and monitoring.
Determines WHEN to collect system information (startup, focus changes, resolution changes, polling) and delegates the WHAT to providers and WHERE to stores.
Implements multiple interfaces to maintain compatibility while providing comprehensive system configuration management.
Manages automatic collection on Unity lifecycle events and periodic polling based on configuration settings.
UnitySystemConfigurationServiceFactory
Unity-specific factory for creating system configuration service instances.
Creates and configures UnitySystemConfigurationService MonoBehaviour components with proper dependency injection.
Manages GameObject creation, service initialization, and optional game settings integration.
Provides clean instantiation pattern for Unity lifecycle-dependent services.
UnitySystemConfigurationSnapshot
Unity-specific implementation of system configuration snapshot.
Captures comprehensive system information including culture, hardware, display settings, and Unity-specific capabilities.
Provides immutable snapshot data for system configuration analysis and game settings adaptation.
UnitySystemMonitorsProviderFactory
Unity-specific factory for creating platform-appropriate system monitors providers.
Uses compile-time directives to select the optimal implementation based on target platform.
- Windows: Uses WindowsSystemMonitorsProvider with comprehensive Win32 API integration
- Linux: Uses LinuxSystemMonitorsProvider with XRandR/Wayland/sysfs backends
- Other platforms: Falls back to NullSystemMonitorsProvider using Unity's Screen API
Ensures clean platform abstraction for system monitoring capabilities.