public void BDReadСобытие(ClassZapicBD100 classZapicBD100, bool bad, bool test)
        {
            if (FlagSaveBD)
            {
                if (wayDataBD.Split('.')[1] == "db" || wayDataBD.Split('.')[1] == "db3")
                {
                    if (!test)
                    {
                        DataAccesBDData.Path = wayDataBD;
                        int x = 0;
                        if (bad)
                        {
                            x = 1;
                        }
                        int[] nll = new int[12];
                        for (int i = 0; i < 12; i++)
                        {
                            nll[i] = Convert.ToInt32(classZapicBD100.Nl[i]);
                        }

                        DataAccesBDData.AddDataTablSob100(classZapicBD100.nameRanBD, classZapicBD100.nameFileBD, classZapicBD100.nameBAAKBD, classZapicBD100.timeBD, classZapicBD100.Amp, classZapicBD100.nameklasterBD, classZapicBD100.Amp, classZapicBD100.TmaxACh,
                                                          classZapicBD100.TfACh, classZapicBD100.TeACh, classZapicBD100.TpmA, classZapicBD100.TA14Ch, classZapicBD100.TA34Ch, classZapicBD100.QCh, classZapicBD100.SBCh, classZapicBD100.SCh, classZapicBD100.Nl, classZapicBD100.sig, x);
                    }
                }
                else
                {
                }
            }
        }
        /// <summary>
        /// записываем данных о событии из очереди в в бд
        /// </summary>
        public override void WriteInFileIzOcherediBD()
        {
            ClassZapicBD100 BDData = new ClassZapicBD100();

            try
            {
                OcherediNaZapicBD.TryDequeue(out BDData);
                if (BDData != null)
                {
                    //TODO (string nameFile, string nameBAAK, string time, string nameRan, int Amp, string nameklaster, int Nl, Double sig, int nD, int TimeFirst, int TimeAmp)
                    BDReadСобытие(BDData, false, false); //пишем в бд


                    КолПакетовОчер2++;
                }
            }
            catch (InvalidOperationException)
            {
            }
            catch (NullReferenceException ee)
            {
                Debug.WriteLine("Error 590");
            }
            catch (Exception e)
            {
                CтатусБААК12 = "Ошибка. Отключена " + e;
                InDe(false);
            }
        }
        /// <summary>
        /// записываем данные из очереди в файл и в бд
        /// </summary>
        public override void WriteInFileIzOcheredi()//работа с данными из очереди
        {
            try
            {
                bool?ed = OcherediNaZapic.TryDequeue(out dataYu);
                if (ed == true)
                {
                    if (dataYu.ListData != null)
                    {
                        byte[] d = new byte[dataYu.ListData.Count];
                        int    x = 0;
                        foreach (Byte b in dataYu.ListData)
                        {
                            d[x] = b;
                            x++;
                        }
                        if (data_w != null)
                        {
                            data_w.Write(d);
                        }


                        Double[]        sigm            = new double[12];
                        ClassZapicBD100 classZapicBD100 = new ClassZapicBD100();
                        Obrabotka(dataYu.ListData, out int[] Ampl, out double[] NL, (int)DataLenght, out int dN, out bool neutron, ref classZapicBD100);  //парсинг данных

                        // if (neu)
                        {
                            OcherediNaZapicBD.Enqueue(classZapicBD100);
                        }

                        КолПакетовОчер++;
                        // DataBAAKList1 = null;
                        d = null;
                    }
                }
            }
            catch (InvalidOperationException)
            {
            }
            catch (NullReferenceException)
            {
            }
            catch (Exception e)
            {
                CтатусБААК12 = "Ошибка. Отключена " + e;
                InDe(false);
            }
        }
        private void Obrabotka(List <Byte> buf00, out int[] Amp, out double[] Nul, int dl, out int dn, out bool neutron, ref ClassZapicBD100 classZapicBD100)
        {
            int[,] data = new int[12, 1024 * dl];

            Nul = new double[12];

            dn      = 0;
            neutron = false;
            bool bad = false;

            Amp = new int[12];

            int[] coutN1 = new int[12];
            int[] timeS  = new int[12];



            try
            {
                ParserBAAK12.ParseBinFileBAAK12.ParseBinFileBAAK200(buf00.ToArray(), dl, out data, out classZapicBD100.timeBD);
                if (grafOtob)
                {
                    //  Dispatcher.CurrentDispatcher.Invoke(DispatcherPriority.Normal, new Action(() =>
                    //  {
                    Application.Current.Dispatcher.Invoke((Action) delegate { MyGrafic.AddPointRaz(data, "Кластер" + namKl, masnul); });
                    //  }));
                }
                if (windowChart != null)
                {
                    // Dispatcher.CurrentDispatcher.Invoke(DispatcherPriority.Normal, new Action(() =>
                    // {
                    Application.Current.Dispatcher.Invoke((Action) delegate
                    {
                        windowChart.AddPointRaz(data);
                    });
                    //  }));
                }
                // To Do
                ParserBAAK12.ParseBinFileBAAK12.MaxAmpAndNul(data, ref classZapicBD100.sig, ref Amp, ref Nul, ref bad, false, 0.6, 5);

                ObrabotcaURAN.Obrabotca.AmpAndTime(data, Nul, out classZapicBD100.TmaxACh, out classZapicBD100.Amp);



                classZapicBD100.TfACh = ObrabotcaURAN.Obrabotca.FirstTme(classZapicBD100.TmaxACh, classZapicBD100.Amp, data, Nul, ref classZapicBD100.TpmA, out classZapicBD100.TA34Ch, out classZapicBD100.TA14Ch);



                classZapicBD100.SCh  = ObrabotcaURAN.Obrabotca.ColSigVatias(data, Nul);
                classZapicBD100.SBCh = ObrabotcaURAN.Obrabotca.ColBin(data, Nul);

                for (int i = 0; i < 12; i++)
                {
                    int x = 0;
                    for (int j = 350; j < 1024; j++)
                    {
                        // Debug.WriteLine(data1[i, j].ToString());
                        //Debug.WriteLine(data1[i, j].ToString() +"-"+ Nul[i].ToString());
                        // data1S[i, j] = Convert.ToDouble(data1[i, j]) - Nul[i];
                        int AN = data[i, j] - Convert.ToInt32(Nul[i]);
                        if (AN > 5)
                        {
                            classZapicBD100.SumD[i] += AN;
                        }
                    }
                }
            }
            catch (Exception)
            {
            }
        }