Esempio n. 1
0
 public void Load()
 {
     Console.SetValue("Debugging_Level",
                      new ConsoleVarable()
     {
         ValidCheck  = CheckConsoleInput,
         Value       = "0",
         TabFunction = GetTabCompletionValues,
         HelpInfo    = DefaultLanguage.Strings.GetString("Debugging_Level_Help"),
     });
     Console.ProcessFile(Filename);
     Program.ProgramEnding += Save;
 }
Esempio n. 2
0
        public static string GetPage(HttpListenerContext context)
        {
            string ACTION = "";
            int    id;

            if (context.Request.QueryString.Count != 0)
            {
                foreach (string key in context.Request.QueryString.AllKeys)
                {
                    switch (key)
                    {
                    case "stops":
                        if (int.TryParse(context.Request.QueryString[key], out id))
                        {
                            if (Console.GetOnOff(string.Format(Variables.V_camera_stream_enabled, id)).Value)
                            {
                                ConsoleResponse cr = Console.SetValue(string.Format(Variables.V_camera_stream_enabled, id), "false");
                                if (cr.State == ConsoleCommandState.Sucess)
                                {
                                    ACTION += "Sucess! Camera " + id + " disabled.<br/>";
                                }
                                else
                                {
                                    ACTION += "Failure while disabling camera " + id + ": " + cr.Value + "<br/>";
                                }
                            }
                        }

                        break;

                    case "starts":
                        if (int.TryParse(context.Request.QueryString[key], out id))
                        {
                            if (!Console.GetOnOff(string.Format(Variables.V_camera_stream_enabled, id)).Value)
                            {
                                ConsoleResponse cr = Console.SetValue(string.Format(Variables.V_camera_stream_enabled, id), "true");
                                if (cr.State == ConsoleCommandState.Sucess)
                                {
                                    ACTION += "Sucess! Camera " + id + " enabled.<br/>";
                                }
                                else
                                {
                                    ACTION += "Failure while enabling camera " + id + ": " + cr.Value + "<br/>";
                                }
                            }
                        }
                        break;
                    }
                }
            }

            string camerafor = "";

            // Count is protected from having non numurical values so if this fails look elsewhere
            int count = int.Parse(Console.GetValue(Variables.V_camera_count).Value);

            for (int i = 0; i < count; i++)
            {
                camerafor += TemplateProcessor.Process(Environment.CurrentDirectory + "\\HTTP\\templates\\control.camerafor.template", new Dictionary <string, Func <string> >()
                {
                    { "URI", () => { return(context.Request.Url.LocalPath); } },
                    { "STATUS", () => { return(Console.GetValue(string.Format(Variables.V_camera_stream_enabled, i)).Value); } },
                    { "ID", () => { return(i.ToString()); } },
                });
            }


            return(TemplateProcessor.Process(Environment.CurrentDirectory + "\\HTTP\\templates\\control.template", new Dictionary <string, Func <string> >()
            {
                { "URI", () => { return context.Request.Url.LocalPath; } },
                { "ACTION", () => { return ACTION; } },
                { "control.camerafor.template", () => { return camerafor; } },
            }));
        }
Esempio n. 3
0
        private void StartStream()
        {
            string filename = string.Format(Console.GetValue(Variables.V_camera_save_path).Value, ID) +
                              DateTime.Now.ToString(Console.GetValue(string.Format(Variables.V_camera_save_format, ID)).Value);

            Debugging.DebugLog(Debugging.DebugLevel.Info, "Starting Camera " + ID);
            //We need to make sure the stream task is started also so we can pull the data from it
            ConsoleResponseBoolean variable = Console.GetOnOff(string.Format(Variables.V_camera_stream_enabled, ID));

            if (variable.State == ConsoleCommandState.Failure)
            {
                throw new LogicException(string.Format("{0} is not a boolean variable!", Variables.V_camera_stream_enabled));
            }
            if (!variable.Value)
            {
                Console.SetValue(string.Format(Variables.V_camera_stream_enabled, ID), "True");
            }


            try { stream?.Close(); } catch { };

            File.Delete(filename);
            stream = File.OpenWrite(filename);

            Program.CameraManager.GetGamera(ID)
            .StreamTask.Repeater.AddStream(
                new StreamClient(stream, (data, offset, length) => {
                try { stream.Write(data, offset, length);

                      /*      string s = ASCIIEncoding.ASCII.GetString(data, 0, data.Length);
                       *    var sb = new StringBuilder();
                       *    int i = 0;
                       *
                       *    sb.Append(" Capture Pattern: ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append("         Version: ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append("     Header Type: ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append("Granule Position: ")
                       *         .Append(BitConverter.ToUInt64(new byte[] { data[6],  data[7],  data[8], data[9], data[10], data[11], data[12], data[13] }, 0)).Append("\n");
                       *
                       *    sb.Append("Granule Position: ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append("Bitstream Number: ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append(" Page Seq Number: ")
                       *        .Append(data[i++].ToString("X2")).Append(" ") // 18
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *    sb.Append("        Checksum: ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append(" ")
                       *        .Append(data[i++].ToString("X2")).Append("\n");
                       *
                       *
                       *    sb.Append("\n");
                       *    Console.Write(sb.ToString());*/

                      return(true); } catch { }
                return(false);
            })
                );

            NextSegment = DateTime.Now.AddMinutes(30);
            NextFlush   = DateTime.Now.AddMinutes(1);
        }