Exemple #1
0
        public override ushort[,,] GetValue(OverrideValue value)
        {
            var vars = value.StringValue.Split(',');
            var dimX = ushort.Parse(vars[0]);
            var dimY = ushort.Parse(vars[1]);
            var dimZ = ushort.Parse(vars[2]);

            var arr = new ushort[dimX, dimY, dimZ];
            int x = 0, y = 0, z = 0;

            for (var i = 3; i < vars.Length; i++)
            {
                arr[x, y, z] = ushort.Parse(vars[i]);

                x++;
                if (x >= dimX)
                {
                    x = 0;
                    y++;
                }

                if (y >= dimY)
                {
                    y = 0;
                    z++;
                }
                if (z >= dimZ)
                {
                    break;
                }
            }

            return(arr);
        }
        public void ReadProfile(IProfile driverProfile)
        {
            OCSimulator.LogMessage("Sensor.ReadProfile", "Starting to read profile values");

            SimFromValue = Convert.ToDouble(driverProfile.GetValue(SensorName + OCSimulator.SIMFROMVALUE_PROFILENAME, OCSimulator.SimulatorDefaultFromValues[SensorName].ToString(CultureInfo.InvariantCulture)), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " SimFromValue: " + SimFromValue);

            SimToValue = Convert.ToDouble(driverProfile.GetValue(SensorName + OCSimulator.SIMTOVALUE_PROFILENAME, OCSimulator.SimulatorDefaultToValues[SensorName].ToString(CultureInfo.InvariantCulture)), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " SimToValue: " + SimToValue);

            IsImplemented = Convert.ToBoolean(driverProfile.GetValue(SensorName + OCSimulator.IS_IMPLEMENTED_PROFILENAME, OCSimulator.IS_IMPLEMENTED_DEFAULT), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " Is Implemented: " + IsImplemented.ToString());

            ShowNotReady = Convert.ToBoolean(driverProfile.GetValue(SensorName + OCSimulator.SHOW_NOT_READY_PROFILENAME, OCSimulator.SHOW_NOT_READY_DEFAULT), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " ShowNotReady: " + ShowNotReady.ToString());

            NotReadyDelay = Convert.ToDouble(driverProfile.GetValue(SensorName + OCSimulator.NOT_READY_DELAY_PROFILENAME, OCSimulator.NOT_READY_DELAY_DEFAULT), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " NotReadyDelay: " + NotReadyDelay.ToString());

            ValueCycleTime = Convert.ToDouble(driverProfile.GetValue(SensorName + OCSimulator.VALUE_CYCLE_TIME_PROFILE_NAME, OCSimulator.VALUE_CYCLE_TIME_DEFAULT), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " Value CycleTime: " + ValueCycleTime.ToString());

            Override = Convert.ToBoolean(driverProfile.GetValue(SensorName + OCSimulator.OVERRIDE_PROFILENAME, OCSimulator.OVERRIDE_DEFAULT), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " Override: " + Override.ToString());

            OverrideValue = Convert.ToDouble(driverProfile.GetValue(SensorName + OCSimulator.OVERRIDE_VALUE_PROFILENAME, OCSimulator.SimulatorDefaultFromValues[SensorName].ToString(CultureInfo.InvariantCulture)), CultureInfo.InvariantCulture);
            OCSimulator.LogMessage("Sensor.ReadProfile" + " OverrideValue: " + OverrideValue.ToString());

            OCSimulator.LogMessage("Sensor.ReadProfile", "Completed reading profile values");
        }
Exemple #3
0
        public override MeshData GetValue(OverrideValue value)
        {
            var vars = value.StringValue.Split(',');

            if (vars.IsNullOrEmpty())
            {
                return(MeshData.Default);
            }

            return(MeshData.Default);
        }
Exemple #4
0
 private void ModifyOverrides(List <Renderer> renderersIn, List <Renderer> smrlist, List <Renderer> rendererlist, OverrideValue overrideValue)
 {
     for (int i = 0; i < renderersIn.Count; i++)
     {
         int index = smrlist.IndexOf(renderersIn[i]);
         if (index >= 0)
         {
             shrinkSkinnedMeshOverride[index] = overrideValue;
         }
         index = rendererlist.IndexOf(renderersIn[i]);
         if (index >= 0)
         {
             hideMeshOverride[index] = overrideValue;
         }
     }
 }
Exemple #5
0
        public async Task <IActionResult> AddOverride(OverrideValueModel model)
        {
            try
            {
                if (string.IsNullOrEmpty(model.Value))
                {
                    return(JsonErrorValidationResult("Value is required", "#override_value"));
                }

                var overrideValue = new OverrideValue
                {
                    NetworkId = model.NetworkId,
                    Value     = model.Value
                };

                var keyValue = await _keyValuesRepository.GetKeyValueAsync(model.Key);

                if (keyValue.Override == null)
                {
                    keyValue.Override = new[] { overrideValue }
                }
                ;
                else
                {
                    var list = keyValue.Override.ToList();
                    list.Add(overrideValue);
                    keyValue.Override = list.ToArray();
                }

                await _keyValuesRepository.UpdateKeyValueAsync(new[] { keyValue });

                await AddToHistoryAsync(keyValue);

                return(JsonRequestResult("#overrideValues", Url.Action("List"), false, new { key = model.Key }));
            }
            catch (Exception ex)
            {
                _log.Error(ex, context: model);
                return(JsonRequestResult("#overrideValues", Url.Action("List"), false, new { key = String.Empty }));
            }
        }
        public void WriteProfile(IProfile driverProfile)
        {
            OCSimulator.LogMessage("Sensor.WriteProfile", "Starting to write profile values");

            OCSimulator.LogMessage("Sensor.WriteProfile" + " SimFromValue: " + SimFromValue);
            driverProfile.WriteValue(SensorName + OCSimulator.SIMFROMVALUE_PROFILENAME, SimFromValue.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " SimToValue: " + SimToValue);
            driverProfile.WriteValue(SensorName + OCSimulator.SIMTOVALUE_PROFILENAME, SimToValue.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " Is Implemented: " + IsImplemented);
            driverProfile.WriteValue(SensorName + OCSimulator.IS_IMPLEMENTED_PROFILENAME, IsImplemented.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " ShowNotReady: " + ShowNotReady);
            driverProfile.WriteValue(SensorName + OCSimulator.SHOW_NOT_READY_PROFILENAME, ShowNotReady.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " NotReadyDelay: " + NotReadyDelay);
            driverProfile.WriteValue(SensorName + OCSimulator.NOT_READY_DELAY_PROFILENAME, NotReadyDelay.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " Value Cycle Time: " + ValueCycleTime);
            driverProfile.WriteValue(SensorName + OCSimulator.VALUE_CYCLE_TIME_PROFILE_NAME, ValueCycleTime.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " Override: " + Override);
            driverProfile.WriteValue(SensorName + OCSimulator.OVERRIDE_PROFILENAME, Override.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " OverrideValue: " + OverrideValue);
            driverProfile.WriteValue(SensorName + OCSimulator.OVERRIDE_VALUE_PROFILENAME, OverrideValue.ToString(CultureInfo.InvariantCulture));

            OCSimulator.LogMessage("Sensor.WriteProfile" + " Completed writing profile values");
        }
Exemple #7
0
 public override TileMeshConfig.MeshSet GetValue(OverrideValue value) => new TileMeshConfig.MeshSet();
 public override TilesSetFilter GetValue(OverrideValue value) => new TilesSetFilter();
Exemple #9
0
        public string ShowMenu(int lastMenuId, int menuId, ref MenuItem currentMenu, bool raiseMenuEvent, bool canRaiseCommunicationEvent, bool canRaiseBillEvent, string selectedValue)
        {
            try
            {
                if (!string.IsNullOrEmpty(currentMenu.DisplayData))
                {
                    return(currentMenu.ShowBack ? currentMenu.DisplayData + "\n" + backLink : currentMenu.DisplayData);
                }
                else
                {
                    currentMenu = new MenuItem();
                }

                currentMenu = list.Where(m => m.MenuId == menuId).FirstOrDefault();

                List <MenuItem> menu = list.Where(m => m.ParentMenuId == menuId).ToList();

                StringBuilder result = new StringBuilder();
                foreach (MenuItem menuItem in menu)
                {
                    result.AppendLine(menuItem.Name);
                }
                //added implementation below for all the compulsory footer menu items
                //as is the '#:Home' menu for MonsterMix
                if (currentMenu != null && currentMenu.ParentMenuId != 0)
                {
                    List <MenuItem> footerMenu = list.Where(m => m.ParentMenuId == -1).ToList();
                    foreach (MenuItem footerMenuItem in footerMenu)
                    {
                        result.AppendLine(footerMenuItem.Name);
                    }
                }
                if (currentMenu != null && currentMenu.ShowBack)
                {
                    result.Append(backLink);
                }

                if (ShowMenuEvent != null && raiseMenuEvent)
                {
                    ShowMenuEvent(this, new ShowMenuEventArgs(list.ToArray(), currentMenu, menu.ToArray(), menuId, result.ToString().Replace("\\n", "\n").Replace("\\r", "\r")));
                }

                if (canRaiseCommunicationEvent)
                {
                    if (CommunicateMenuEvent != null)
                    {
                        var args = new CommunicateMenuEventArgs(currentMenu);
                        if (args.CanCommunicate)
                        {
                            CommunicateMenuEvent(this, new CommunicateMenuEventArgs(currentMenu));
                        }
                    }
                    if (currentMenu.IsSMS != null && currentMenu.IsSMS.HasValue && ThirdPartyCommunicationEvent != null)
                    {
                        if ((!string.IsNullOrEmpty(currentMenu.ThirdPartyCommunicationText)) &&
                            (!string.IsNullOrEmpty(currentMenu.ThirdPartyCommunicationRecipients)))
                        {
                            if (!string.IsNullOrEmpty(currentMenu.NotificationKey) && !string.IsNullOrEmpty(selectedValue))
                            {
                                if (currentMenu.NotificationKey == selectedValue)
                                {
                                    ThirdPartyCommunicationEvent(this, currentMenu);
                                }
                            }
                        }
                    }
                }

                if (canRaiseBillEvent && MenuOBSBillingEvent != null)
                {
                    var args = new OBSBillingEventArgs(currentMenu);
                    if (args.IsValid)
                    {
                        if (!string.IsNullOrEmpty(currentMenu.NotificationKey) && !string.IsNullOrEmpty(selectedValue))
                        {
                            if (currentMenu.NotificationKey == selectedValue)
                            {
                                MenuOBSBillingEvent(this, args);
                            }
                        }
                    }
                }

                if (menu.Count == 1)
                {
                    currentMenu = menu[0];
                }

                if (ResultsOverriden)
                {
                    return(OverrideValue.Replace("\\n", "\n").Replace("\\r", "\r"));
                }
                else
                {
                    return(result.ToString().Replace("\\n", "\n").Replace("\\r", "\r"));
                }
            }
            finally
            {
                ResultsOverriden = false;
                OverrideValue    = null;
            }
        }