20 #if !defined(__BIDEF__)
24 #define MINWRKSIZE 0x1000000
25 #define PAGE_SIZE 0x1000
30 #define BiTypeR2 CISYS_TYPE_R2 // RoadRunner
31 #define BiTypeR64 CISYS_TYPE_R64 // R64
32 #define BiTypeGn2 CISYS_TYPE_GN2 // GN2
33 #define BiTypeAny 0xFFFFFFFF // First board seen in the system
43 #define BiBrdInqModel CiBrdInqModel // Return Board Model
44 #define BiBrdInqIDReg CiBrdInqIDReg // ID switch on the board
46 #define BiBrdInqSpeed CiBrdInqSpeed // Board receivers speed
47 #define BiBrdInqLUT CiBrdInqLUT // type of LUT mounted to the board
49 #define BiBrdInqScanType CiBrdInqScanType // Scan type
50 #define BiBrdInqColorDecoder CiBrdInqColorDecoder // NTSC/PAL decoder
51 #define BiBrdInqAnalogType CiBrdInqAnalogType // analog video input board
52 #define BiBrdInqNumCams CiBrdInqNumCams // Number of cameras the board is setup for
55 #define BiCamInqXSize CiCamInqXSize // Width of image in pixels
56 #define BiCamInqYSize0 CiCamInqYSize0 // Height of image in lines
57 #define BiCamInqFormat CiCamInqFormat // Image format
58 #define BiCamInqBitsPerPix CiCamInqPixBitDepth // Depth of pixel in bits, as acquired to host
59 #define BiCamInqBytesPerPix CiCamInqBytesPerPix // Depth of pixel in bytes, as acquired to host
60 #define BiCamInqAqTimeout CiCamInqAqTimeout // Number of mS to wait before Acq. command
61 #define BiCamInqFrameSize0 CiCamInqFrameSize0 // Total size of image in bytes, as acq. to host
62 #define BiCamInqFrameWidth CiCamInqFrameWidth // Width of image in bytes, as acq. to host
63 #define BiCamInqBytesPerPixDisplay CiCamInqBytesPerPixDisplay // Depth of pixel in bytes, as acq. to display
64 #define BiCamInqBitsPerPixDisplay CiCamInqPixBitDepthDisplay // Depth of pixel in bits, as acq. to display
65 #define BiCamInqDisplayFrameSize0 CiCamInqDisplayFrameSize0 // Total size of image in bytes, as acq. to display
66 #define BiCamInqDisplayFrameWidth CiCamInqDisplayFrameWidth // Width of image in bytes, as acq. to display
68 #define BiCamInqBitsPerSequence CiCamInqBitsPerSequence // Depth of multi-channel pixel in bits, as acq. to host
69 #define BiCamInqBitsPerSequenceDisplay CiCamInqBitsPerSequenceDisplay // Depth of multi-channel pixel in bits, as acq. to display
70 #define BiCamInqCamType CiCamInqCamType // Which camera type
71 #define BiCamInqControlType CiCamInqControlType // Type of camera control accessible through API
73 #define BiCamInqYSize1 CiCamInqYSize1 // Camera 1 height of image in lines
74 #define BiCamInqYSize2 CiCamInqYSize2 // Camera 2 height of image in lines
75 #define BiCamInqYSize3 CiCamInqYSize3 // Camera 3 height of image in lines
76 #define BiCamInqFrameSize1 CiCamInqFrameSize1 // Camera 1 total size of image in bytes, as acq. to host
77 #define BiCamInqFrameSize2 CiCamInqFrameSize2 // Camera 2 total size of image in bytes, as acq. to host
78 #define BiCamInqFrameSize3 CiCamInqFrameSize3 // Camera 3 total size of image in bytes, as acq. to host
79 #define BiCamInqPackedPixels CiCamInqPackedPixels // Packed Pixels
86 #define BiTrigFreeRun CiTrigFreeRun
87 #define BiTrigContinuousData CiTrigContinuousData
88 #define BiTrigOneShot CiTrigOneShot
89 #define BiTrigOneShotJbyAandKbyB 20
90 #define BiTrigOneShotStartStop 21
91 #define BiTrigOneShotSSJbyAandKbyB 22
92 #define BiTrigOneShotStartAStopB 23
93 #define BiTrigAqCmd CiTrigAqCmd
94 #define BiTrigAqCmdJbyAandKbyB 25
95 #define BiTrigAqCmdFreezeCmd CiTrigAqCmdStartStop
96 #define BiTrigAqCmdFrzCmdJbyAandKFree 26
97 #define BiTrigOneShotSelfTrig CiTrigOneShotSelfTriggered
98 #define BiTrigModeUnknown CiTrigModeUnknown
99 #define BiTrigOneShotStartAStopALevel CiTrigOneShotStartAStopALevel
100 #define BiTrigSnapQualified BFTrigSnapQualified
101 #define BiTrigNTGOneShot CiTrigNTGOneShot
104 #define BiTrigAssertedHigh 30
105 #define BiTrigAssertedLow 31
106 #define BiTrigAHighBLow 32
107 #define BiTrigALowBHigh 33
110 #define BiTrigAssertTrigA 40
111 #define BiTrigAssertTrigB 41
112 #define BiTrigDeassertTrigA 42
113 #define BiTrigDeassertTrigB 43
127 #define NoResetOnError 16
128 #define AbortMissedFrame 32
129 #define DisableAqErrorSig 64
130 #define UseHighResTimer 128
131 #define InvertEvenFrames 256
132 #define InvertOddFrames 512
133 #define OnlyOddLines 1024
134 #define OnlyEvenLines 2048
135 #define DestAddrIsPhys 4096
136 #define NonDefaultPitch 8192
145 #define NormalAbort 2 // thread has been killed by normal means. ex. all buffers are in
146 #define ErrorAbort 3 // thread killed itself due to error
147 #define SignalCancel 4
171 #define SwapRGB SWAPRGB
172 #define Pack32to24Bit PACK32TO24BIT
181 #define CirErIgnore 3
185 #define BufferAlloc 0xf001
186 #define BufferAllocAligned 0xf002
187 #define BufferAssign 0xf003
192 #define BIAVAILABLE 0
198 #define AVAIL_Q_EMPTY 0xFFFFFFFF // the available queue is empty
205 typedef struct _BiSeqInfo
208 BFTimeStruct TimeStamp;
209 BFTime HiResTimeStamp;
210 BFU32 NumLinesAcquired;
220 typedef struct _QueueNode
225 BFTimeStruct TimeStamp;
226 BFTime HiResTimeStamp;
228 BFU32 NumLinesAcquired;
229 BFU32 NumItemsOnQueue;
230 struct _QueueNode *Next;
239 typedef struct _BiCirHandle
243 BFTimeStruct TimeStamp;
244 BFTime HiResTimeStamp;
246 BFU32 NumLinesAcquired;
247 BFU32 NumItemsOnQueue;
257 typedef struct _BFBUFARY
278 HANDLE StatusSetMutex;
279 HANDLE AvailQueueMutex;
280 HANDLE BufferQueueMutex;
281 HANDLE BufferStatusMutex;
282 HANDLE ResetAcqMutex;
284 BFU32 HoldQStoreIndex;
290 BFU32 BuffersFullSemCount;
291 BFU32 NumBuffersMinusHolds;
295 BFU32 FramesCaptured;
296 BFU32 AqSetupOptions;
298 BFU32 NumLinesAcquired;
308 RQTabHeadPtr QtabArray;
309 RQTabHeadPtrPtr QtabPtrArray;
310 CiSIGNAL Signal, StartStopSignal;
311 CiSIGNAL ExceptionSignal;
312 CiSIGNAL OverflowSignal;
316 HANDLE NotifyAqStart;
320 HANDLE NotifyWaitDoneStop;
321 HANDLE NotifyWaitDoneAbort;
322 HANDLE WaitDoneArray[4];
324 HANDLE ErrorWaitArray[4];
329 HANDLE NotifyControlStop;
330 HANDLE NotifyControlAbort;
331 HANDLE NotifyControlResume;
332 HANDLE NotifyControlPause;
335 HANDLE WorkerThreadHandle;
336 HANDLE ErrorThreadHandle;
347 BFBOOL HaveStartStopSignal;
348 BFBOOL HaveExceptionSignal;
349 BFBOOL HaveOverflowSignal;
351 BFU32 MemoryAllocStatus;
362 HANDLE FrameDoneArray[4];
363 HANDLE FrameDoneStop;
364 HANDLE FrameDoneAbort;
387 typedef struct _BiErrors
391 char FailureDescript[256];
struct _BiCirHandle BiCirHandle
void(* BiCallBackFuncPtr)(Bd Board, PBIBA pBufArray, BiCirHandle CirHandle, PBFVOID pUserData)
Definition: BiDef.h:397
struct _QueueNode BFQNode
struct _BiCirHandle * PBiCirHandle
unsigned long BFU32
Definition: BFTypeNT.h:55
unsigned long long BFU64
Definition: BFTypeNT.h:53
struct _QueueNode * PBFQNode
unsigned long * PBFU32
Definition: BFTypeNT.h:55
struct _BiSeqInfo BiSeqInfo
struct _BiErrors BiErrors
void *** Bd
Definition: BFType.h:88
void * PBFVOID
Definition: BFTypeNT.h:32
struct _BiSeqInfo * PBiSeqInfo
int BFBOOL
Definition: BFTypeNT.h:34