3#if defined __GNUC__ && !defined CVB_SHOW_WARNINGS
4# pragma GCC system_header
7#include "../namespace.hpp"
22CVB_DEF_CAPI_X(cvbbool_t, CanGrabber, (IMG Image))
23CVB_DEF_CAPI_X(cvbbool_t, CanBoardSelect, (IMG Image))
24CVB_DEF_CAPI_X(cvbbool_t, CanBoardSelect2, (IMG Image))
25CVB_DEF_CAPI_X(cvbbool_t, CanCameraSelect, (IMG Image))
26CVB_DEF_CAPI_X(cvbbool_t, CanCameraSelect2, (IMG Image))
27CVB_DEF_CAPI_X(cvbbool_t, CanDeviceControl, (IMG Image))
28CVB_DEF_CAPI_X(cvbbool_t, CanImageRect, (IMG Image))
29CVB_DEF_CAPI_X(cvbbool_t, CanBasicDIO, (IMG Image))
30CVB_DEF_CAPI_X(cvbbool_t, CanRingBuffer, (IMG Image))
31CVB_DEF_CAPI_X(cvbbool_t, CanNodeMapHandle, (IMG Image))
32CVB_DEF_CAPI_X(cvbbool_t, CanNodeMapHandle2, (IMG Image))
33CVB_DEF_CAPI_X(cvbbool_t, CanNotify, (IMG Image))
34CVB_DEF_CAPI_X(cvbbool_t, CanSoftwareTrigger, (IMG Image))
35CVB_DEF_CAPI_X(cvbbool_t, CanGrab2, (IMG Image))
38CVB_DEF_CAPI_X(cvbres_t, GetDriverID, (IMG Image, cvbguid_t & guid))
44CVB_DEF_CAPI_X(cvbres_t, SetBoard, (IMG Image, cvbval_t nBoard))
45CVB_DEF_CAPI_X(cvbres_t, GetBoard, (IMG Image, cvbval_t * nBoard))
48CVB_DEF_CAPI_X(cvbres_t, BS2GetNumBoards, (IMG Image, cvbval_t & NumBoards))
49CVB_DEF_CAPI_X(cvbres_t, BS2GetBoard, (IMG Image, cvbval_t & ActBoard))
50CVB_DEF_CAPI_X(cvbres_t, BS2SetBoard, (IMG Image, cvbval_t NewBoard, IMG & imgNew))
54CVB_DEF_CAPI_X(cvbres_t, SetCamPort, (IMG Image, cvbval_t Port, cvbval_t ImagesToWait))
55CVB_DEF_CAPI_X(cvbres_t, GetNumPorts, (IMG Image, cvbval_t & NumPorts))
56CVB_DEF_CAPI_X(cvbres_t, GetCamPort, (IMG Image, cvbval_t & Port))
59CVB_DEF_CAPI_X(cvbres_t, CS2GetNumPorts, (IMG Image, cvbval_t & NumPorts))
60CVB_DEF_CAPI_X(cvbres_t, CS2GetCamPort, (IMG Image, cvbval_t & Port))
61CVB_DEF_CAPI_X(cvbres_t, CS2SetCamPort, (IMG Image, cvbval_t Port, cvbval_t ImgToWait, IMG & imgNew))
65typedef long DEVICECTRL_CMD;
66#elif defined __linux__
67typedef uint32_t DEVICECTRL_CMD;
69#error CVB: Unsupported platform and/or compiler!
78 DC_GETMIN = 0x20000000,
80 DC_GETMAX = 0x30000000,
82 DC_VERIFY = 0x40000000,
84 DC_OPERATION_MASK = 0xF0000000,
85 DC_PARAM_MASK = 0x0FFFFFFF
92CVB_DEF_CAPI_X(cvbres_t, DCBinaryCommand , (IMG Image, DEVICECTRL_CMD iCmd,
const void * pInBuf,
size_t iInBufSize,
void * pOutBuf,
size_t & iOutBufSize))
93CVB_DEF_CAPI_X(cvbres_t, DCStrCommand, (IMG Image, DEVICECTRL_CMD iCmd,
const char * pInStr,
size_t iInStrSize,
char * pOutStr,
size_t & iOutStrSize))
97CVB_DEF_CAPI_X(cvbres_t, STTrigger, (IMG Image, cvbval_t iSWTrgID))
104 IMAGERECT_CMD_GET = 0,
105 IMAGERECT_CMD_SET_AUTODELETE = 1,
106 IMAGERECT_CMD_VALIDATE = 2,
107 IMAGERECT_CMD_SET = 3,
108 IMAGERECT_CMD_RESET = 4,
109 IMAGERECT_CMD_CHECK = 5
113CVB_DEF_CAPI_X(cvbres_t, IRImageSize, (IMG Image, IMAGERECT_CMD lAction, cvbdim_t & Dx, cvbdim_t & Dy, IMG & imgNew))
114CVB_DEF_CAPI_X(cvbres_t, IRImageOffset, (IMG Image, IMAGERECT_CMD lAction, cvbdim_t & XOffset, cvbdim_t & YOffset))
118CVB_DEF_CAPI_X(cvbres_t, BDIOGetNumInputs, (IMG Image, cvbval_t & Num))
119CVB_DEF_CAPI_X(cvbres_t, BDIOGetNumOutputs, (IMG Image, cvbval_t & Num))
120CVB_DEF_CAPI_X(cvbres_t, BDIOGetInBit, (IMG Image, cvbval_t Num, cvbval_t & Bit))
121CVB_DEF_CAPI_X(cvbres_t, BDIOGetInDword, (IMG Image, cvbval_t Num, cvbuint32_t & Value))
122CVB_DEF_CAPI_X(cvbres_t, BDIOGetOutBit, (IMG Image, cvbval_t Num, cvbval_t & Bit))
123CVB_DEF_CAPI_X(cvbres_t, BDIOGetOutDword, (IMG Image, cvbval_t Num, cvbuint32_t & Value))
124CVB_DEF_CAPI_X(cvbres_t, BDIOSetOutBit, (IMG Image, cvbval_t Num, cvbval_t Value))
125CVB_DEF_CAPI_X(cvbres_t, BDIOSetOutDword, (IMG Image, cvbval_t Num, cvbuint32_t Value, cvbuint32_t Mask))
132 GRAB_INFO_NUMBER_IMAGES_AQCUIRED = 0,
133 GRAB_INFO_NUMBER_IMAGES_LOST = 1,
134 GRAB_INFO_NUMBER_IMAGES_LOST_LOCKED = 2,
135 GRAB_INFO_NUMBER_IMAGES_LOCKED = 3,
136 GRAB_INFO_NUMBER_IMAGES_PENDIG = 4,
137 GRAB_INFO_GRAB_ACTIVE = 5,
138 GRAB_INFO_TIMESTAMP = 6,
139 GRAB_INFO_NUMBER_TRIGGERS_LOST = 7,
140 GRAB_INFO_CAMERA_DETECTED = 8,
141 G2INFO_NumBuffersPending = 10,
142 G2INFO_NumBuffersDelivered = 11,
143 G2INFO_NumBuffersCorrupt = 12,
144 G2INFO_NumBuffersCorruptOnDelivery = 13,
145 G2INFO_NumBuffersLost = 14,
146 G2INFO_NumBuffersLostLocked = 15,
147 G2INFO_NumBuffersAcquired = 16,
148 G2INFO_NumBuffersQueued = 17,
149 G2INFO_NumBuffersAnnounced = 18,
150 G2INFO_NumBuffersInIncompleteList = 19,
151 G2INFO_NumPacketsReceived = 20,
152 G2INFO_NumResends = 21,
153 G2INFO_NumBuffersLocked = 22
158CVB_DEF_CAPI_X(cvbres_t, G2Grab, (IMG Image))
159CVB_DEF_CAPI_X(cvbres_t, G2Wait, (IMG Image))
160CVB_DEF_CAPI_X(cvbres_t, G2Freeze, (IMG Image, cvbbool_t bKill))
161CVB_DEF_CAPI_X(cvbres_t, G2GetGrabStatus, (IMG Image, GRAB_INFO_CMD RequestType,
double & RequestAnswer))
164enum RINGBUFFER_INFO_CMD
166 RINGBUFFER_INFO_TIMESTAMP = 0,
167 RINGBUFFER_INFO_TAG = 1,
168 RINGBUFFER_INFO_LOCKED = 2
171enum RINGBUFFER_NUMBUFFER_CMD
173 RINGBUFFER_NUMBUFFER_CMD_GET = 0,
174 RINGBUFFER_NUMBUFFER_CMD_SET = 1,
175 RINGBUFFER_NUMBUFFER_CMD_VALIDATE = 2
178enum RINGBUFFER_LOCKMODE_CMD
180 RINGBUFFER_LOCKMODE_CMD_GET = 0,
181 RINGBUFFER_LOCKMODE_CMD_SET = 1,
182 RINGBUFFER_LOCKMODE_CMD_VALIDATE = 2
185enum RINGBUFFER_LOCKMODE
187 RINGBUFFER_LOCKMODE_AUTO = 0,
189 RINGBUFFER_LOCKMODE_ON = 2,
190 RINGBUFFER_LOCKMODE_INVALID = 3
193CVB_DEF_CAPI_X(cvbres_t, Snap, (IMG Image))
194CVB_DEF_CAPI_X(cvbres_t, SetTimeout, (IMG Image, cvbuint32_t dwTimeout))
197CVB_DEF_CAPI_X(cvbres_t, RBNumBuffer, (IMG Image, RINGBUFFER_NUMBUFFER_CMD Action, cvbval_t & Num, IMG & imgNew))
198CVB_DEF_CAPI_X(cvbres_t, RBUnlock, (IMG Image, cvbval_t BufferIndex))
199CVB_DEF_CAPI_X(cvbres_t, RBLockMode, (IMG Image, RINGBUFFER_LOCKMODE_CMD LockModeCmd, RINGBUFFER_LOCKMODE & Mode))
200CVB_DEF_CAPI_X(cvbres_t, RBIsLocked, (IMG Image, cvbval_t lBufferIndex, cvbbool_t & bIsLocked))
201CVB_DEF_CAPI_X(cvbres_t, RBGetBufferImage, (IMG Image, cvbval_t lBufferIndex, IMG & I))
202CVB_DEF_CAPI_X(cvbres_t, RBBufferSeq, (IMG Image, cvbval_t lSequenceIndex, cvbval_t & lBufferIndex))
203CVB_DEF_CAPI_X(cvbres_t, RBGetRingBufferInfo, (IMG Image, cvbval_t lBufferIndex, RINGBUFFER_INFO_CMD lRequestedInformation,
double & dInfo))
206typedef void * NODEMAP;
208CVB_DEF_CAPI_X(cvbres_t, NMHGetNodeMap, (IMG Image, NODEMAP & NodeMap))
210static const char NMH2_ID_DEVICE[] =
"Device";
211static const char NMH2_ID_FACTORY[] =
"TLFactory";
212static const char NMH2_ID_SYSTEM[] =
"TLSystem";
213static const char NMH2_ID_INTERFACE[] =
"TLInterface";
214static const char NMH2_ID_TLDEVICE[] =
"TLDevice";
215static const char NMH2_ID_DATASTREAM[] =
"TLDatastream";
218CVB_DEF_CAPI_X(cvbres_t, NMH2GetNum, (IMG Image,
size_t & NumNodeMaps))
219CVB_DEF_CAPI_X(cvbres_t, NMH2GetID, (IMG Image,
size_t IDIndex,
char * IDBuffer,
size_t & IDBufferSize))
220CVB_DEF_CAPI_X(cvbres_t, NMH2GetNodeMap, (IMG Image,
const char * ID, NODEMAP & NodeMap))
221CVB_DEF_CAPI_X(cvbres_t, NMH2GetDescription, (IMG Image,
const char * ID,
char * DescBuffer,
size_t & DescBufferSize))
226 DO_AT_LEVEL_UNKNOWN = 0,
227 DO_AT_LEVEL_SYSTEM = 1,
229 DO_AT_LEVEL_TLSYSTEM = 3,
230 DO_AT_LEVEL_TLIFACE = 4,
231 DO_AT_LEVEL_TLDEVICE = 5,
232 DO_AT_LEVEL_TLSTREAM = 6
236enum DODiscoverInfoCommands
238 DO_DISCOVER_INFO_ACCESS_TOKEN = 1000,
239 DO_DISCOVER_INFO_LEVEL,
240 DO_DISCOVER_INFO_INTERFACE_NET_LIST = 2000,
241 DO_DISCOVER_INFO_INTERFACE_NET_MAC,
242 DO_DISCOVER_INFO_INTERFACE_TLTYPE,
243 DO_DISCOVER_INFO_INTERFACE_DISPLAYNAME,
244 DO_DISCOVER_INFO_INTERFACE_DRIVERTYPE,
245 DO_DISCOVER_INFO_INTERFACE_ID,
246 DO_DISCOVER_INFO_DEVICE_TLTYPE = 3000,
247 DO_DISCOVER_INFO_DEVICE_USERNAME,
248 DO_DISCOVER_INFO_DEVICE_SERIALNUMBER,
249 DO_DISCOVER_INFO_DEVICE_NET_MAC,
250 DO_DISCOVER_INFO_DEVICE_NET_IP,
251 DO_DISCOVER_INFO_DEVICE_NET_SUBNETMASK,
252 DO_DISCOVER_INFO_DEVICE_USB_VID,
253 DO_DISCOVER_INFO_DEVICE_USB_PID,
254 DO_DISCOVER_INFO_DEVICE_VENDOR,
255 DO_DISCOVER_INFO_DEVICE_MODEL,
256 DO_DISCOVER_INFO_DEVICE_ID,
257 DO_DISCOVER_INFO_DEVICE_ACCESS_STATUS,
258 DO_DISCOVER_INFO_TRANSPORTLAYER_ID = 4000,
259 DO_DISCOVER_INFO_TRANSPORTLAYER_PATH,
260 DO_DISCOVER_INFO_TRANSPORTLAYER_VENDOR,
261 DO_DISCOVER_INFO_DEVICE_USB_PORT_PATH,
262 DO_DISCOVER_INFO_CUSTOM
273 cvbuint64_t Partial : 1;
274 cvbuint64_t Depth : 4;
275 cvbuint64_t Reserved : 3;
276 cvbuint64_t IgnoreVINs : 1;
277 cvbuint64_t IgnoreTLs : 1;
278 cvbuint64_t IgnoreSD : 1;
279 cvbuint64_t IgnoreFD : 1;
280 cvbuint64_t IgnoreAccessStatus : 1;
281 cvbuint64_t IncludeMockTL : 1;
289 DO_DISCOVER_FLAG_PARTIAL = 0x1,
291 DO_DISCOVER_FLAG_LEVEL_SYSTEM = DO_AT_LEVEL_SYSTEM << 1,
292 DO_DISCOVER_FLAG_LEVEL_VIN = DO_AT_LEVEL_VIN << 1,
293 DO_DISCOVER_FLAG_LEVEL_TL = DO_AT_LEVEL_TLSYSTEM << 1,
294 DO_DISCOVER_FLAG_LEVEL_INTERFACE = DO_AT_LEVEL_TLIFACE << 1,
295 DO_DISCOVER_FLAG_LEVEL_DEVICE = DO_AT_LEVEL_TLDEVICE << 1,
296 DO_DISCOVER_FLAG_LEVEL_STREAM = DO_AT_LEVEL_TLSTREAM << 1,
298 DO_DISCOVER_FLAG_IGNORE_VINS = 0x1 << 8,
299 DO_DISCOVER_FLAG_IGNORE_TLS = 0x1 << 9,
300 DO_DISCOVER_FLAG_IGNORE_SD = 0x1 << 10,
301 DO_DISCOVER_FLAG_IGNORE_FD = 0x1 << 11,
302 DO_DISCOVER_FLAG_IGNORE_ACCESS_STATUS = 0x1 << 12,
303 DO_DISCOVER_FLAG_INCLUDE_MOCKTL = 0x1 << 13
306typedef void * ATLIST;
307typedef void * DEVOBJ;
309CVB_DEF_CAPI_X(cvbres_t, DODiscover, (
const char * Seed, cvbuint64_t Flags, cvbuint64_t Reserved, ATLIST & List,
size_t DiscoverTimeout))
310CVB_DEF_CAPI_X(cvbres_t, DODiscoverW, (
const wchar_t * Seed, cvbuint64_t Flags, cvbuint64_t Reserved, ATLIST & List,
size_t DiscoverTimeout))
311CVB_DEF_CAPI_X(cvbres_t, DOEntryGetInfo, (ATLIST List,
size_t Index, DODiscoverInfoCommands InfoCommand,
char * InfoUtf8,
size_t & InfoSize))
312CVB_DEF_CAPI_X(cvbres_t, DOEntryGetInfoW, (ATLIST List,
size_t Index, DODiscoverInfoCommands InfoCommand,
wchar_t * Info,
size_t & InfoSize))
313CVB_DEF_CAPI_X(cvbres_t, DOGetNumEntries, (ATLIST List,
size_t & NumEntries))
314CVB_DEF_CAPI_X(cvbres_t, DOSetParameter, (ATLIST List,
size_t Index,
const char * Name,
const char * Value))
315CVB_DEF_CAPI_X(cvbres_t, DOSetParameterW, (ATLIST List,
size_t Index,
const wchar_t * Name,
const wchar_t * Value))
316CVB_DEF_CAPI_X(cvbres_t, DOSetFeature, (ATLIST List,
size_t Index,
const char * NodeMapID,
const char * Name,
const char * Value))
317CVB_DEF_CAPI_X(cvbres_t, DOSetFeatureW, (ATLIST List,
size_t Index,
const wchar_t * NodeMapID,
const wchar_t * Name,
const wchar_t * Value))
319CVB_DEF_CAPI_X(cvbres_t, LoadDeviceObject, (
const char * AccessToken, DEVOBJ & DeviceObject))
320CVB_DEF_CAPI_X(cvbres_t, LoadDeviceObjectW, (
const wchar_t * AccessToken, DEVOBJ & DeviceObject))
323inline cvbres_t DODiscoverTyped(
const char * Seed, cvbuint64_t Flags, cvbuint64_t Reserved, ATLIST & List,
size_t DiscoverTimeout)
325 return DODiscover(Seed, Flags, Reserved, List, DiscoverTimeout);
328inline cvbres_t DODiscoverTyped(
const wchar_t * Seed, cvbuint64_t Flags, cvbuint64_t Reserved, ATLIST & List,
size_t DiscoverTimeout)
330 return DODiscoverW(Seed, Flags, Reserved, List, DiscoverTimeout);
333inline cvbres_t DOEntryGetInfoTyped(ATLIST List,
size_t Index, DODiscoverInfoCommands InfoCommand,
wchar_t * InfoUtf8,
size_t & InfoSize)
335 return DOEntryGetInfoW(List, Index, InfoCommand, InfoUtf8, InfoSize);
339inline cvbres_t DOEntryGetInfoTyped(ATLIST List,
size_t Index, DODiscoverInfoCommands InfoCommand,
char * InfoUtf8,
size_t & InfoSize)
341 return DOEntryGetInfo(List, Index, InfoCommand, InfoUtf8, InfoSize);
346inline cvbres_t DOSetParameterTyped(ATLIST List,
size_t Index,
const char * Name,
const char * Value)
348 return DOSetParameter(List, Index, Name, Value);
351inline cvbres_t DOSetParameterTyped(ATLIST List,
size_t Index,
const wchar_t * Name,
const wchar_t * Value)
353 return DOSetParameterW(List, Index, Name, Value);
356inline cvbres_t DOSetFeatureTyped(ATLIST List,
size_t Index,
const char * NodeMapID,
const char * Name,
const char * Value)
358 return DOSetFeature(List, Index, NodeMapID, Name, Value);
361inline cvbres_t DOSetFeatureTyped(ATLIST List,
size_t Index,
const wchar_t * NodeMapID,
const wchar_t * Name,
const wchar_t * Value)
363 return DOSetFeatureW(List, Index, NodeMapID, Name, Value);
366inline cvbres_t _ppLoadDeviceObjectTyped(
const char * AccessToken, DEVOBJ & DeviceObject)
368 return LoadDeviceObject(AccessToken, DeviceObject);
371inline cvbres_t _ppLoadDeviceObjectTyped(
const wchar_t * AccessToken, DEVOBJ & DeviceObject)
373 return LoadDeviceObjectW(AccessToken, DeviceObject);
380 CVNO_INFO_COUNT_REGISTERED,
381 CVNO_INFO_COUNT_FIRED,
382 CVNO_INFO_IS_AVAILABLE,
383 NO_INFO_CUSTOM_CMD = 0x10000
386typedef cvbval_t CVNotifyInfo_t;
389enum CVNotifyDatatypes
392 CVNO_DATA_INTEGER64 = 0,
397 CVNO_DATA_CUSTOM = 0x10000
401typedef cvbval_t CVNotifyDatatype_t;
406 CVNO_REGISTRATION_INVALID = 0,
408 CVNO_EID_DEVICE_DISCONNECTED = 2,
409 CVNO_EID_DEVICE_RECONNECT = 3,
410 CVNO_EID_GEOMETRY_CHANGE = 4,
411 CVNO_EID_METADATA_CHANGE = 5,
412 CVNO_EID_CUSTOM = 0x10000
415typedef cvbval_t CVNotifyEvent_t;
416typedef void(__stdcall *CVBDRIVER_NOTIFY_CB) (CVNotifyEvent_t EventID,
void *Buf,
size_t Size, CVNotifyDatatype_t
DataType,
void *UserData);
419CVB_DEF_CAPI_X(cvbres_t, NORegister, (IMG Image, CVNotifyEvent_t EventID, CVBDRIVER_NOTIFY_CB pCB,
void *UserData, intptr_t &Cookie))
420CVB_DEF_CAPI_X(cvbres_t, NOUnregister, (IMG Image, intptr_t Cookie))
421CVB_DEF_CAPI_X(cvbres_t, NOGetNumSupported, (IMG Image,
size_t &NumEvents))
422CVB_DEF_CAPI_X(cvbres_t, NOGetDescription, (IMG Image,
size_t Index,
char *DescriptiveName,
size_t &Size, CVNotifyEvent_t &EventID))
423CVB_DEF_CAPI_X(cvbres_t, NOGetStatus, (IMG Image, CVNotifyEvent_t eventID, CVNotifyInfo_t StatusCmd, cvbint64_t &Info))
424CVB_DEF_CAPI_X(cvbres_t, NOIsCookieValid, (IMG Image, intptr_t Cookie, cvbbool_t &IsValid))
427CVB_DEF_CAPI(cvbres_t, CVDCreateOrGetDeviceObject, (
const char* AccessToken, DEVOBJ& DeviceObject))
428CVB_DEF_CAPI(cvbres_t, CVDCreateOrGetDeviceObjectW, (
const wchar_t* AccessToken, DEVOBJ& DeviceObject))
430inline cvbres_t _ppCVDCreateOrGetDeviceObjectTyped(
const char* AccessToken, DEVOBJ& DeviceObject)
432 return _ppCVDCreateOrGetDeviceObject(AccessToken, DeviceObject);
435inline cvbres_t _ppCVDCreateOrGetDeviceObjectTyped(
const wchar_t* AccessToken, DEVOBJ& DeviceObject)
437 return _ppCVDCreateOrGetDeviceObjectW(AccessToken, DeviceObject);
441typedef void* CVDSTREAM;
444CVB_DEF_CAPI(cvbres_t, CVDDeviceGetStreamCount, (DEVOBJ DeviceObject,
size_t& Count))
445CVB_DEF_CAPI(cvbres_t, CVDDeviceGetStreamAt, (DEVOBJ DeviceObject,
size_t Index, CVDSTREAM& Stream))
448typedef cvbres_t(__stdcall* CVDReleaseFlowSetPool) (
void* Context);
466CVB_DEF_CAPI(cvbres_t, CVDStreamRegisterManagedFlowSetPool, (CVDSTREAM Stream,
size_t Count))
467CVB_DEF_CAPI(cvbres_t, CVDStreamRegisterExternalFlowSetPool, (CVDSTREAM Stream,
const CVDFlowSet Pool[],
size_t PoolSize, CVDReleaseFlowSetPool OnRelease,
void* pPrivate))
468CVB_DEF_CAPI(cvbres_t, CVDStreamUnregisterFlowSetPool, (CVDSTREAM Stream))
469CVB_DEF_CAPI(cvbres_t, CVDStreamGetFlowSetCount, (CVDSTREAM Stream,
size_t& Count))
472CVB_DEF_CAPI(cvbres_t, CVDStreamFlowSetInfoGetFlowSetMinCount, (CVDSTREAM Stream,
size_t& Count))
473CVB_DEF_CAPI(cvbres_t, CVDStreamFlowSetInfoGetFlowCount, (CVDSTREAM Stream,
size_t& Count))
474CVB_DEF_CAPI(cvbres_t, CVDStreamFlowSetInfoGetFlowSize, (CVDSTREAM Stream,
size_t FlowIndex,
size_t& SizeInBytes))
475CVB_DEF_CAPI(cvbres_t, CVDStreamFlowSetInfoGetFlowAlignment, (CVDSTREAM Stream,
size_t FlowIndex,
size_t& AlignmentInBytes))
476CVB_DEF_CAPI(cvbbool_t, CVDCanFlowSetInfo, (CVDSTREAM Stream))
487typedef void* CVCANCELLATIONTOKEN;
490CVB_DEF_CAPI(cvbres_t, CVDStreamAcquisitionEngineStart, (CVDSTREAM Stream, cvbint64_t BufferCountToAcquire))
491CVB_DEF_CAPI(cvbres_t, CVDStreamAcquisitionEngineStop, (CVDSTREAM Stream, cvbint64_t
Timeout))
492CVB_DEF_CAPI(cvbres_t, CVDStreamAcquisitionEngineAbort, (CVDSTREAM Stream))
493CVB_DEF_CAPI(cvbres_t, CVDStreamAcquisitionEngineWaitForNextComposite, (CVDSTREAM Stream, cvbint64_t
Timeout, CVCANCELLATIONTOKEN Token, CVDWaitStatus&
WaitStatus, CVCOMPOSITE& Composite))
496CVB_DEF_CAPI(cvbres_t, CVDStreamControlStart, (CVDSTREAM Stream, cvbint64_t FrameCountToAcquire))
497CVB_DEF_CAPI(cvbres_t, CVDStreamControlStop, (CVDSTREAM Stream))
498CVB_DEF_CAPI(cvbres_t, CVDStreamControlAbort, (CVDSTREAM Stream))
501enum CVDGNDCHeaderInfoCmd
503 CVDGNDCCNTI_VersionMajor = 0,
504 CVDGNDCCNTI_VersionMinor = 1,
505 CVDGNDCCNTI_VersionSubMinor = 2,
506 CVDGNDCCNTI_HeaderType = 6,
507 CVDGNDCCNTI_FlagsValue = 7,
508 CVDGNDCCNTI_HeaderSize = 8,
509 CVDGNDCCNTI_ContainerId = 9,
510 CVDGNDCCNTI_VariableFields = 10,
511 CVDGNDCCNTI_DataSize = 16,
512 CVDGNDCCNTI_DataOffset = 17,
513 CVDGNDCCNTI_DescriptorSize = 18,
514 CVDGNDCCNTI_ComponentCount = 19
517enum CVDGNDCComponentInfoCmd
519 CVDGNDCCMPI_ComponentOffset = 0,
520 CVDGNDCCMPI_HeaderType = 1,
521 CVDGNDCCMPI_FlagsValue = 2,
522 CVDGNDCCMPI_HeaderSize = 3,
524 CVDGNDCCMPI_GroupId = 10,
525 CVDGNDCCMPI_SourceId = 11,
526 CVDGNDCCMPI_RegionId = 12,
527 CVDGNDCCMPI_RegionOffsetX = 13,
528 CVDGNDCCMPI_RegionOffsetY = 14,
529 CVDGNDCCMPI_Timestamp = 15,
530 CVDGNDCCMPI_TypeId = 16,
531 CVDGNDCCMPI_Format = 17,
533 CVDGNDCCMPI_PartCount = 21,
537enum CVDGNDCPartInfoCmd
539 CVDGNDCPI_PartOffset = 0,
540 CVDGNDCPI_HeaderType = 1,
541 CVDGNDCPI_FlagsValue = 2,
542 CVDGNDCPI_HeaderSize = 3,
543 CVDGNDCPI_Format = 4,
545 CVDGNDCPI_FlowId = 7,
546 CVDGNDCPI_FlowOffset = 8,
547 CVDGNDCPI_DataSize = 9,
548 CVDGNDCPI_DataOffset = 10,
550 CVDGNDC1DPI_Size = 1000,
551 CVDGNDC1DPI_Padding = 1001,
553 CVDGNCDC1DPI_InfoTypeSpecific = 1004,
555 CVDGNDC2DPI_SizeX = 2000,
556 CVDGNDC2DPI_SizeY = 2001,
557 CVDGNDC2DPI_PaddingX = 2002,
558 CVDGNDC2DPI_PaddingY = 2003,
560 CVDGNDCH264PI_SizeX = 3000,
561 CVDGNDCH264PI_SizeY = 3001,
562 CVDGNDCH264PI_PaddingX = 3002,
563 CVDGNDCH264PI_PaddingY = 3003,
565 CVDGNDCH264PI_ProfileIDC = 3006,
566 CVDGNDCH264PI_H264Flags = 3007,
567 CVDGNDCH264PI_LevelIDC = 3008,
568 CVDGNDCH264PI_SpropInterleavingDepth = 3009,
569 CVDGNDCH264PI_SpropMaxDonDiff = 3010,
570 CVDGNDCH264PI_SpropDeintBufReq = 3011,
571 CVDGNDCH264PI_SpropInitBufTime = 3012
575struct CVDGenDCPartConfig
577 cvbuint16_t PartType;
578 cvbuint32_t PfncFormat;
580 cvbuint64_t FlowOffset;
581 cvbuint64_t DataSize;
585struct CVDGenDCComponentConfig
588 cvbuint32_t PfncFormat;
589 cvbuint16_t PartCount;
590 CVDGenDCPartConfig* Parts;
594struct CVDGenDCDescriptorConfig
596 cvbuint32_t ComponentCount;
597 CVDGenDCComponentConfig* Components;
601typedef void* CVDGNDCDESCRIPTORDATA;
604CVB_DEF_CAPI(cvbres_t, CVDGNDCCreateDescriptor, (
const CVDGenDCDescriptorConfig &Config, CVDGNDCDESCRIPTORDATA &Descriptor))
605CVB_DEF_CAPI(cvbres_t, CVDGNDCSetHeaderInfo, (CVDGNDCDESCRIPTORDATA Descriptor, CVDGNDCHeaderInfoCmd Cmd,
size_t InfoSize,
const void* Info))
606CVB_DEF_CAPI(cvbres_t, CVDGNDCSetComponentInfo, (CVDGNDCDESCRIPTORDATA Descriptor, CVDGNDCComponentInfoCmd Cmd,
size_t InfoSize,
const void *Info,
size_t ComponentIndex))
607CVB_DEF_CAPI(cvbres_t, CVDGNDCSetPartInfo, (CVDGNDCDESCRIPTORDATA Descriptor, CVDGNDCPartInfoCmd Cmd,
size_t InfoSize,
const void *Info,
size_t ComponentIndex,
size_t PartIndex))
610typedef void* CVDGNDCDESCRIPTOR;
613CVB_DEF_CAPI(cvbres_t, CVDGNDCGetHeaderInfo, (CVDGNDCDESCRIPTOR Descriptor, CVDGNDCHeaderInfoCmd InfoCmd,
size_t& InfoSize,
void* Info))
614CVB_DEF_CAPI(cvbres_t, CVDGNDCGetComponentInfo, (CVDGNDCDESCRIPTOR Descriptor, CVDGNDCComponentInfoCmd InfoCmd,
size_t& InfoSize,
void *Info,
size_t ComponentIndex))
615CVB_DEF_CAPI(cvbres_t, CVDGNDCGetPartInfo, (CVDGNDCDESCRIPTOR Descriptor, CVDGNDCPartInfoCmd InfoCmd,
size_t& InfoSize,
void *Info,
size_t ComponentIndex,
size_t PartIndex))
616CVB_DEF_CAPI(cvbres_t, CVDGNDCSerialize, (CVDGNDCDESCRIPTOR Descriptor,
size_t& BufferSize,
void* Buffer))
618typedef void *CVDGNDCDESCRIPTORPROVIDER;
620CVB_DEF_CAPI(cvbres_t, CVDGNDCPGetDescriptor, (CVDGNDCDESCRIPTORPROVIDER Provider, CVDGNDCDESCRIPTOR &Descriptor))
621CVB_DEF_CAPI(cvbbool_t, CVDCanGenDCDescriptorProvider, (CVDGNDCDESCRIPTORPROVIDER Provider))
@ DataType
Definition spectral.hpp:148
Root namespace for the Image Manager interface.
Definition c_bayer_to_rgb.h:17
WaitStatus
Status after waiting for an image to be returned.
Definition global.hpp:396
@ Timeout
A timeout occurred, no image buffer has been returned.
Definition global.hpp:400