private void ProcessEvent(object strFile)
        {
            try
            {
                PIPSEvent pips          = new PIPSEvent();
                int       offset        = 1;
                int       currentoffset = 0;
                var       stringFile    = getxmlContent(ref offset, (string)strFile);

                var AcsObject = DeserializeEvent(stringFile);

                byte[] file = System.IO.File.ReadAllBytes((string)strFile);
                offset       += stringFile.Length;
                currentoffset = offset;
                pips.Patch    = file.Skip(offset).Take(Int32.Parse(AcsObject.Patch.Length)).ToArray();

                offset += Int32.Parse(AcsObject.Full.Offset);
                pips.IR = file.Skip(offset).Take(Int32.Parse(AcsObject.Full.Length)).ToArray();
                var test = ByteToImage(pips.IR);

                offset        = Int32.Parse(AcsObject.Overview.Offset) + currentoffset;
                pips.Overview = file.Skip(offset).Take(Int32.Parse(AcsObject.Overview.Length)).ToArray();
                test          = ByteToImage(pips.Overview);
                if (eventoFTPWatcher != null)
                {
                    eventoFTPWatcher(pips, new EventArgs());
                }
            }
            catch (Exception ex)
            {
                //Form1.log.Error(ex);
            }
        }
Exemple #2
0
        public void evento(object sender, EventArgs e)
        {
            PIPSEvent pips = (PIPSEvent)sender;

            this.BeginInvoke(new MethodInvoker(delegate()
            {
                pbPatch.Image    = ByteToImage(pips.Patch);
                pbIR.Image       = ByteToImage(pips.IR);
                pbOverview.Image = ByteToImage(pips.Overview);
            }));
        }
 private void FindMatch(PIPSEvent exitEvent)
 {
 }
        private PIPSEvent SendToMantis(string overview_pat, string nombrepatch, string secondnombrepatch, int type)
        {
            PIPSEvent  pips = new PIPSEvent();
            string     overviewName, patchName = "";
            OverObject objetoimagen = null;

            try
            {
                overviewName = Path.GetFileName(overview_pat);
                //Form1.log.Debug("Inicia proceso: " + overviewName);
                patchName    = Path.GetFileName(nombrepatch);
                objetoimagen = utilities.ParseImageName(overviewName);
                Image image = Image.FromFile(overview_pat);

                pips.LPN       = objetoimagen.plate;
                pips.lane      = objetoimagen.lane;
                pips.timestamp = objetoimagen.datetime;
                try
                {
                    pips.latitude  = Double.Parse(objetoimagen.lattitude);
                    pips.longitude = Double.Parse(objetoimagen.longitude);
                }
                catch (Exception ex)
                {
                    //Form1.log.Error(ex);
                }

                //pips.bossid = -1;
                pips.idDevice  = objetoimagen.idCamera;
                pips.TollingId = type.ToString();
                pips.conf      = objetoimagen.conf;

                pips.IdCamera = objetoimagen.idCamera;
                //////////////////
                //Cropping      //
                //////////////////

                if (cropped.Equals("true"))
                {
                    image = ImageCropper.cropper(image, objetoimagen.lane);
                }

                pips.overview = utilities.ImageToBase64(image);
                image.Dispose();

                if (File.Exists(nombrepatch))
                {
                    pips.patch = utilities.ImageFileToBase64(nombrepatch);
                }
                else
                {
                    pips.patch = utilities.ImageFileToBase64(secondnombrepatch);
                }

                /////////////////////
                ///  Save Image    //
                /////////////////////

                queuePIPS.Enqueue(pips);

                objetoimagen.Dispose();
            }
            catch (Exception ex)
            {
                //Form1.log.Error("Error de proceso Mantis", ex);
            }
            return(pips);
        }