Gx3748EventCaptureReadMemoryCount

Purpose

Returns the number of captured events in the specified event capture memory.

Syntax

Gx3748EventCaptureReadMemoryCount (nHandle, nMemory, pnCounter, pnStatus)

Parameters

Name
Type
Comments
nHandle
SHORT
Handle to a GX3748 board.
nMemory
SHORT
Specified memory number, memory number are as follows:
0.      GX3748_EVENT_CAPTURE_MEMORY0: memory number 0.
1.      GX3748_EVENT_CAPTURE_MEMORY1: memory number 1.
2.    GX3748_EVENT_CAPTURE_MEMORY2: memory number 2.
pnCounter
PSHORT
Returns the number of captured events in the specified event capture memory, value can be 0 to 12288. The counter will be cleared every time the user.
pnStatus
PSHORT
Returned status: 0 on success, negative number on failure.

Comments

The function returns the number of captured events in the specified event capture memory.

There are 3 independent event capture memories. Each memory can record input events from any of the channels’ groups by setting the memory source, Gx3748EventCaptureSetSource() API. The user can read any number of elements from any of the memories using the Gx3748EventCaptureReadMemory() API., as well as the current number of recorded elements by calling the Gx3748EventCaptureReadMemoryCount() API. Whenever the user changes the specified event capture memory input source (group and channel), the content of that memory and the recorded element counter will be cleared. Whenever the user changes the specified event capture memory mode Gx3748EventCaptureSetMode() API , the content of that memory and the recorded element counter will be cleared.

The user can read the specified event capture memory content only when the specified event capture memory is in HALT state. The time stamp counter is about 4.5 hours long, and longer captures will cause the time stamp counter to start from zero. The user can and should reset the time stamp counter using the Gx3748EventCaptureResetTimestampCounter() API, before starting any events. The user can also read back the value of the time stamp counter at any time by calling the Gx3748EventCaptureReadTimestampCounter() API.

Example

The following example sets event capture memory 0 mode to Transitions, state to HALT, and returns the memory mode, state, memory counter and content:

 

SHORT nHandle, nStatus;

SHORT nMode, nState, nCounter;

BYTE ucLogicLevel[256];

DOUBLE dTime [256];

DWORD dwSize;

 

Gx3748EventCaptureSetState (nHandle, GX3748_EVENT_CAPTURE_MEMORY0, GX3748_EVENT_CAPTURE_STATE_HALT, &nStatus);

Gx3748EventCaptureSetMode (nHandle, GX3748_EVENT_CAPTURE_MEMORY0, GX3748_EVENT_CAPTURE_MODE_TRANSITIONS, &nStatus);

Gx3748EventCaptureGetMode (nHandle, GX3748_EVENT_CAPTURE_MEMORY0, &nMode, &nStatus);

Gx3748EventCaptureGetState (nHandle, GX3748_EVENT_CAPTURE_MEMORY0, &nState, &nStatus);

Gx3748EventCaptureReadMemoryCount(nHandle, GX3748_EVENT_CAPTURE_MEMORY0, &nCounter, &nStatus);

if (nCounter)

{

dwSize= nCounter;

Gx3748EventCaptureReadMemory(nHandle, GX3748_EVENT_CAPTURE_MEMORY0, GX3748_EVENT_CAPTURE_TIME_UNITS_ USEC, ucLogicLevel, dTime, 0, &dwSize, &nStatus);

}

 

See Also

Gx3748EventCaptureClearMemory, Gx3748EventCaptureReadMemory, Gx3748EventCaptureReadTimestampCounter, Gx3748EventCaptureResetTimestampCounter, Gx3748EventCaptureSetMode,  Gx3748EventCaptureSetSampleRate, Gx3748EventCaptureSetSource, Gx3748EventCaptureSetState, Gx3748EventCaptureSoftwareTrigger, Gx3748EventCaptureSetHoldoffTime, GxFpgaGetErrorString