예제 #1
1
 public bool init(string vpppath, CogRecordDisplay cogRecordDisplayin = null)
 {
     if (null == vpppath)
     {
         return false;
     }
     try
     {
         myJobManager = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath);
         myJob = myJobManager.Job(0);
         myJobIndependent = myJob.OwnedIndependent;
         myJobManager.UserQueueFlush();
         myJobManager.FailureQueueFlush();
         myJob.ImageQueueFlush();
         myJobIndependent.RealTimeQueueFlush();
         updateDisplaySource(cogRecordDisplayin);
     }
     catch { }
     return true;
 }
예제 #2
1
 public bool init0(string vpppath0, CogRecordDisplay cogRecordDisplayin0 = null)
 {
     updateDisplaySource0(cogRecordDisplayin0);
     if (null == vpppath0)
     {
         return false;
     }
     try
     {
         myJobManager0 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath0);
         myJob0 = myJobManager0.Job(0);
         myJobIndependent0 = myJob0.OwnedIndependent;
         myJobManager0.UserQueueFlush();
         myJobManager0.FailureQueueFlush();
         myJob0.ImageQueueFlush();
         myJobIndependent0.RealTimeQueueFlush();
     }
     catch
     {
         return false;
     }
     return true;
 }
예제 #3
0
        private void InitializeJobManager()
        {
            SampleTextBox.Text =
                "This sample demonstrates how to load a persisted QuickBuild application and access " +
                "the results provided in the posted items (a.k.a. as user result queue)." +
                System.Environment.NewLine + System.Environment.NewLine +

                "The sample uses mySavedQB.vpp, which consists of a single Job that executes a " +
                "Blob tool with default parameters using a frame grabber provided image.  " +
                @"The provided .vpp file is configured to use ""VPRO_ROOT\images\pmSample.idb"" as the " +
                "source of images." +
                System.Environment.NewLine + System.Environment.NewLine +
                "To use:  Click the Run button or the Run Continuous button.  " +
                "The number of blobs will be displayed in the count text box " +
                "and the Blob tool input image will be displayed in the image display control.";

            //Depersist the QuickBuild session
            myJobManager = (CogJobManager)CogSerializer.LoadObjectFromFile(
                Environment.GetEnvironmentVariable("VPRO_ROOT") +
                "\\Samples\\Programming\\QuickBuild\\mySavedQB.vpp");
            myJob            = myJobManager.Job(0);
            myIndependentJob = myJob.OwnedIndependent;

            //flush queues
            myJobManager.UserQueueFlush();
            myJobManager.FailureQueueFlush();
            myJob.ImageQueueFlush();
            myIndependentJob.RealTimeQueueFlush();

            // setup event handlers.  These are called when a result packet is available on
            // the User Result Queue or the Real-Time Queue, respectively.
            myJobManager.UserResultAvailable += new CogJobManager.CogUserResultAvailableEventHandler(myJobManager_UserResultAvailable);
        }
예제 #4
0
        /// <summary>
        /// This function is responsible for the initial setup of the app.
        /// It loads and prepares the saved QuickBuild app into a CogJobManager
        /// object, attaches event handlers to to interesting CogJobManager
        /// events, and sets up the CogDisplayStatusBar to reflect the status
        /// of the CogDisplay we are using.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void Form1_Load(object sender, EventArgs e)
        {
            // Depersist the CogJobManager saved via QuickBuild
            myJobManager = CogSerializer.LoadObjectFromFile(
                Environment.GetEnvironmentVariable("VPRO_ROOT") +
                "\\Samples\\Programming\\QuickBuild\\advancedAppOne.vpp") as CogJobManager;

            // Initialize Variables
            myJob            = myJobManager.Job(0);
            myIndependentJob = myJob.OwnedIndependent;

            // Flush queues
            myJobManager.UserQueueFlush();
            myJobManager.FailureQueueFlush();
            myJob.ImageQueueFlush();
            myIndependentJob.RealTimeQueueFlush();

            // Register handler for Stopped event
            myJobManager.Stopped +=
                new CogJobManager.CogJobManagerStoppedEventHandler(
                    myJobManager_Stopped);

            // Register handler for UserResultAvailable event
            myJobManager.UserResultAvailable +=
                new CogJobManager.CogUserResultAvailableEventHandler(
                    myJobManager_UserResultAvailable);

            // Connect the status bar
            this.cogDisplayStatusBar1.Display = this.cogRecordDisplay1;
        }
예제 #5
0
 public bool init(string vpppath, CogRecordDisplay cogRecordDisplayin = null)
 {
     if (null == vpppath)
     {
         return(false);
     }
     try
     {
         myJobManager     = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath);
         myJob            = myJobManager.Job(0);
         myJobIndependent = myJob.OwnedIndependent;
         myJobManager.UserQueueFlush();
         myJobManager.FailureQueueFlush();
         myJob.ImageQueueFlush();
         myJobIndependent.RealTimeQueueFlush();
         updateDisplaySource(cogRecordDisplayin);
     }
     catch { }
     return(true);
 }
예제 #6
0
        private void InitializeJobManager()
        {
            // Depersist the QuickBuild session
            // myJobManager = (CogJobManager)CogSerializer.LoadObjectFromFile(
            //    Environment.GetEnvironmentVariable("VPRO_ROOT") + "\\Samples\\Programming\\QuickBuild\\mySavedQB.vpp");

            myJobManager = (CogJobManager)CogSerializer.LoadObjectFromFile(path);
            cogJobManagerEdit1.Subject = myJobManager;

            myJob0           = myJobManager.Job(0);
            myIndependentJob = myJob0.OwnedIndependent;

            // Flush queues
            myJobManager.UserQueueFlush();
            myJobManager.FailureQueueFlush();
            myJob0.ImageQueueFlush();
            myIndependentJob.RealTimeQueueFlush();


            // Start the timer.
            timer1.Start();
        }
예제 #7
0
 public bool init1(string vpppath1, CogRecordDisplay cogRecordDisplayin1 = null)
 {
     updateDisplaySource1(cogRecordDisplayin1);
     if (null == vpppath1)
     {
         return false;
     }
     try
     {
         myJobManager1 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath1);
         myJob1 = myJobManager1.Job(0);
         myJobIndependent1 = myJob1.OwnedIndependent;
         myJobManager1.UserQueueFlush();
         myJobManager1.FailureQueueFlush();
         myJob1.ImageQueueFlush();
         myJobIndependent1.RealTimeQueueFlush();
     }
     catch
     {
         return false;
     }
     return true;
 }
예제 #8
0
 public bool init3(string vpppath3, CogRecordDisplay cogRecordDisplayin3 = null)
 {
     updateDisplaySource3(cogRecordDisplayin3);
     if (null == vpppath3)
     {
         return false;
     }
     try
     {
         myJobManager3 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath3);
         myJob3 = myJobManager3.Job(0);
         myJobIndependent3 = myJob3.OwnedIndependent;
         myJobManager3.UserQueueFlush();
         myJobManager3.FailureQueueFlush();
         myJob3.ImageQueueFlush();
         myJobIndependent3.RealTimeQueueFlush();
     }
     catch
     {
         return false;
     }
     return true;
 }
예제 #9
0
 public bool init2(string vpppath2, CogRecordDisplay cogRecordDisplayin2 = null)
 {
     updateDisplaySource2(cogRecordDisplayin2);
     if (null == vpppath2)
     {
         return false;
     }
     try
     {
         myJobManager2 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath2);
         myJob2 = myJobManager2.Job(0);
         myJobIndependent2 = myJob2.OwnedIndependent;
         myJobManager2.UserQueueFlush();
         myJobManager2.FailureQueueFlush();
         myJob2.ImageQueueFlush();
         myJobIndependent2.RealTimeQueueFlush();
     }
     catch
     {
         return false;
     }
     return true;
 }
예제 #10
0
 public bool init(string vpppath0,string vpppath1, string vpppath2, CogRecordDisplay cogRecordDisplayin0 = null, CogRecordDisplay cogRecordDisplayin1 = null, CogRecordDisplay cogRecordDisplayin2 = null)
 {
     bool initS1 = false;
     bool initS2 = false;
     bool initS3 = false;
     updateDisplaySource0(cogRecordDisplayin0);
     updateDisplaySource1(cogRecordDisplayin1);
     updateDisplaySource2(cogRecordDisplayin2);
     if (null == vpppath0)
     {
         return false;
     }
     try
     {
         myJobManager0 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath0);
         myJob0 = myJobManager0.Job(0);
         myJobIndependent0 = myJob0.OwnedIndependent;
         myJobManager0.UserQueueFlush();
         myJobManager0.FailureQueueFlush();
         myJob0.ImageQueueFlush();
         myJobIndependent0.RealTimeQueueFlush();
         // updateDisplaySource0(cogRecordDisplayin0);
         initS1 = true;
     }
     catch 
     { 
         initS1 = false;
     }
     if (null == vpppath1)
     {
         return false;
     }
     try
     {
         myJobManager1 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath1);
         myJob1 = myJobManager1.Job(0);
         myJobIndependent1 = myJob1.OwnedIndependent;
         myJobManager1.UserQueueFlush();
         myJobManager1.FailureQueueFlush();
         myJob1.ImageQueueFlush();
         myJobIndependent1.RealTimeQueueFlush();
         // updateDisplaySource1(cogRecordDisplayin1);
         initS2 = true;
     }
     catch 
     {
         initS2 = false;
     }
     if (null == vpppath2)
     {
         return false;
     }
     try
     {
         myJobManager2 = (CogJobManager)CogSerializer.LoadObjectFromFile(vpppath2);
         myJob2 = myJobManager2.Job(0);
         myJobIndependent2 = myJob2.OwnedIndependent;
         myJobManager2.UserQueueFlush();
         myJobManager2.FailureQueueFlush();
         myJob2.ImageQueueFlush();
         myJobIndependent2.RealTimeQueueFlush();
         // updateDisplaySource2(cogRecordDisplayin2);
         initS3 = true;
     }
     catch 
     {
         inits3 = false;
     }
     if(inits1 == true && inits2 == true && initS3 == true)
     {
         return true;
     }
     return false;
 }