ICogAcqFifo GetFifoState Method Cognex VisionPro
Returns the instantaneous state of the fifo.

Namespace: Cognex.VisionPro
Assembly: Cognex.VisionPro.Core (in Cognex.VisionPro.Core.dll) Version: 65.1.0.0
Syntax

void GetFifoState(
	out int numPending,
	out int numReady,
	out bool busy
)

Parameters

numPending
Type: System Int32 

The number of acquisitions in the pending state. This is the number of acquisitions requested by StartAcquire  for which acquisition has not started. To achieve frame rate acquisition in manual trigger mode, the FIFO must always have one or more pending acquisitions.

numReady
Type: System Int32 

The number of acquisition requests ready to be completed.

busy
Type: System Boolean 

True if the oldest outstanding acquisition is waiting for a trigger signal or is acquiring an image. For master/slave acquisitions, it becomes true only after the master and all slaves are ready for acquisition.

Remarks

Returns the current state of the acquisition FIFO.

Examples

using Cognex.VisionPro;

private CogFrameGrabbers myFrameGrabbers;
private ICogFrameGrabber myFrameGrabber;
private ICogAcqFifo myAcqFifo;

        private void AcquireDisplay () {
            const string VIDEO_FORMAT = "Sony XC75 640x480";
            int    acqTicket, completeTicket, triggerNumber, numPending, numReady;
            bool busy;

            myFrameGrabbers = new CogFrameGrabbers();
            myFrameGrabber = myFrameGrabbers[0];
            myAcqFifo = myFrameGrabber.CreateAcqFifo(VIDEO_FORMAT, Cognex.VisionPro.CogAcqFifoPixelFormatConstants.Format8Grey, 0, false);

            acqTicket = myAcqFifo.StartAcquire();

            do {
                myAcqFifo.GetFifoState(out numPending, out numReady, out busy);

                if (numReady > 0)
                    cogDisplay1.Image = myAcqFifo.CompleteAcquire(acqTicket, out completeTicket, out triggerNumber);
            } while (numReady <= 0);
        }
Imports Cognex.VisionPro

Private myFrameGrabbers As CogFrameGrabbers
Private myFrameGrabber As Cognex.VisionPro.ICogFrameGrabber
Private myAcqFifo As Cognex.VisionPro.ICogAcqFifo

Private Sub AcquireDisplay()
    Const VIDEO_FORMAT = "Sony XC75 640x480"
    Dim acqTicket As Integer
    Dim numPending As Integer : Dim numReady As Integer : Dim busy As Boolean
    Dim completeTicket As Integer : Dim triggerNum As Integer

    myFrameGrabbers = New CogFrameGrabbers
    myFrameGrabber = myFrameGrabbers.Item(0)
    myAcqFifo = myFrameGrabber.CreateAcqFifo(VIDEO_FORMAT, CogAcqFifoPixelFormatConstants.Format8Grey, 0, False)

    acqTicket = myAcqFifo.StartAcquire()
    Do
        myAcqFifo.GetFifoState(numPending, numReady, busy)
    Loop Until numReady > 0

    CogDisplay1.Image = myAcqFifo.CompleteAcquire(acqTicket, completeTicket, triggerNum)
End Sub
See Also