コード例 #1
0
ファイル: SetupForm.cs プロジェクト: phr0z/HyperionScreenCap
        private void AddTaskCofigRow(HyperionTaskConfiguration taskConfiguration)
        {
            String id = taskConfiguration.Id;

            String captureSource;

            switch (taskConfiguration.CaptureMethod)
            {
            case CaptureMethod.DX11:
                captureSource = $"DX11 Adap:{taskConfiguration.Dx11AdapterIndex} Mon:{taskConfiguration.Dx11MonitorIndex}";
                break;

            case CaptureMethod.DX9:
                captureSource = $"DX9 Mon: {taskConfiguration.Dx9MonitorIndex}";
                break;

            default:
                throw new NotImplementedException($"The capture method {taskConfiguration.CaptureMethod} is not supported");
            }

            StringBuilder hyperionServers = new StringBuilder();

            foreach (HyperionServer server in taskConfiguration.HyperionServers)
            {
                hyperionServers.Append($"{server.Host}:{server.Port}, ");
            }
            if (hyperionServers.Length > 0)
            {
                hyperionServers.Length = hyperionServers.Length - 2;
            }
            dgTaskConfig.Rows.Add(id, captureSource, hyperionServers);
        }
コード例 #2
0
 public ServerPropertiesForm(HyperionTaskConfiguration taskConfiguration)
 {
     this._defaultServerConfiguration = HyperionServer.BuildUsingDefaultSettings();
     this.TaskConfiguration           = taskConfiguration;
     InitializeComponent();
     this.Text = $"{this.Text} - {taskConfiguration.Id}";
     InitFormFields();
 }
コード例 #3
0
        private String GetHyperionServersColumnValue(HyperionTaskConfiguration taskConfiguration)
        {
            var servers = new List <String>();

            foreach (HyperionServer server in taskConfiguration.HyperionServers)
            {
                servers.Add($"{server.Host}:{server.Port}");
            }
            return(string.Join(", ", servers));
        }
コード例 #4
0
ファイル: SetupForm.cs プロジェクト: phr0z/HyperionScreenCap
        private void btnAddTaskConfig_Click(object sender, EventArgs e)
        {
            ServerPropertiesForm editPropFrm = new ServerPropertiesForm(HyperionTaskConfiguration.BuildUsingDefaultSettings());

            editPropFrm.ShowDialog();
            if (editPropFrm.SaveRequested)
            {
                _taskConfigurations.Add(editPropFrm.TaskConfiguration);
                PopulateTaskConfigRows();
            }
        }
コード例 #5
0
        public ServerPropertiesForm(HyperionTaskConfiguration taskConfiguration)
        {
            this._defaultServerConfiguration = HyperionServer.BuildUsingDefaultFbsSettings();
            this.TaskConfiguration           = taskConfiguration;
            InitializeComponent();
            this.Text = $"{this.Text} - {taskConfiguration.Id}";
            var protocolColumn = (DataGridViewComboBoxColumn)this.dgHyperionAddress.Columns.GetFirstColumn(DataGridViewElementStates.Visible);

            protocolColumn.DataSource = Enum.GetValues(typeof(HyperionServerProtocol));
            protocolColumn.ValueType  = typeof(HyperionServerProtocol);
            InitFormFields();
        }
コード例 #6
0
 public static void MigrateLegacySettings()
 {
     if (Settings.Default.migrateLegacyHyperionConfiguration)
     {
         LOG.Info("[Settings Migration] Migrating legacy hyperion configuration to JSON string");
         List <HyperionTaskConfiguration> configurations = new List <HyperionTaskConfiguration>();
         configurations.Add(HyperionTaskConfiguration.BuildUsingLegacySettings());
         Settings.Default.hyperionTaskConfigurations         = JsonConvert.SerializeObject(configurations);
         Settings.Default.migrateLegacyHyperionConfiguration = false;
         Settings.Default.Save();
         LOG.Info("[Settings Migration] Saved legacy hyperion configuration as JSON string");
     }
 }
コード例 #7
0
        private String GetCaptureSourceColumnValue(HyperionTaskConfiguration taskConfiguration)
        {
            switch (taskConfiguration.CaptureMethod)
            {
            case CaptureMethod.DX11:
                return($"DX11 Adap:{taskConfiguration.Dx11AdapterIndex} Mon:{taskConfiguration.Dx11MonitorIndex}");

            case CaptureMethod.DX9:
                return($"DX9 Mon: {taskConfiguration.Dx9MonitorIndex}");

            default:
                throw new NotImplementedException($"The capture method {taskConfiguration.CaptureMethod} is not supported");
            }
        }
コード例 #8
0
 public static void MigrateLegacySettings()
 {
     if (Settings.Default.migrateLegacyHyperionConfiguration)
     {
         LOG.Info("[Settings Migration] Migrating legacy hyperion configuration to JSON string");
         List <HyperionTaskConfiguration> configurations = new List <HyperionTaskConfiguration>();
         configurations.Add(HyperionTaskConfiguration.BuildUsingLegacySettings());
         Settings.Default.hyperionTaskConfigurations         = JsonConvert.SerializeObject(configurations);
         Settings.Default.migrateLegacyHyperionConfiguration = false;
         Settings.Default.migrateFromBefore2_7 = false;
         Settings.Default.Save();
         LOG.Info("[Settings Migration] Saved legacy hyperion configuration as JSON string");
     }
     else if (Settings.Default.migrateFromBefore2_7)
     {
         LOG.Info("[Settings Migration] Migrating settings from before version 2.7");
         var configurations = JsonConvert.DeserializeObject <List <HyperionTaskConfiguration> >(Settings.Default.hyperionTaskConfigurations);
         foreach (HyperionTaskConfiguration configuration in configurations)
         {
             configuration.Enabled = true;
             foreach (HyperionServer server in configuration.HyperionServers)
             {
                 server.Protocol = HyperionServerProtocol.PROTOCOL_BUFFERS;
                 if (server.Priority < HyperionServer.MIN_PRIORITY)
                 {
                     server.Priority = HyperionServer.MIN_PRIORITY;
                 }
                 if (server.Priority > HyperionServer.MAX_PRIORITY)
                 {
                     server.Priority = HyperionServer.MAX_PRIORITY;
                 }
             }
         }
         Settings.Default.hyperionTaskConfigurations = JsonConvert.SerializeObject(configurations);
         Settings.Default.migrateFromBefore2_7       = false;
         Settings.Default.Save();
         LOG.Info("[Settings Migration] Settings from befor version 2.7 were migrated successfully");
     }
 }
コード例 #9
0
 public HyperionTask(HyperionTaskConfiguration configuration, NotificationUtils notificationUtils)
 {
     this._configuration     = configuration;
     this._notificationUtils = notificationUtils;
     this._hyperionClients   = new List <HyperionClient>();
 }