bgapi2_genicam.h
Go to the documentation of this file.
1 
55 #ifndef TLCONSUMER_BGAPI2_GENICAM_BGAPI2_GENICAM_H_
56 #define TLCONSUMER_BGAPI2_GENICAM_BGAPI2_GENICAM_H_
57 
58 #include "./bgapi2_types.h"
59 #include "./bgapi2_featurenames.h"
60 
61 #ifdef __cplusplus
62 extern "C" {
63 #endif
64 
69  typedef struct BGAPI2_System BGAPI2_System;
70 
76 
81  typedef struct BGAPI2_Device BGAPI2_Device;
82 
92  typedef struct BGAPI2_Buffer BGAPI2_Buffer;
93 
98  typedef struct BGAPI2_Node BGAPI2_Node;
99 
105 
110  typedef struct BGAPI2_Image BGAPI2_Image;
111 
117 
123 
129 
135 
140  typedef enum {
145 
150  typedef void (BGAPI2CALL *BGAPI2_PnPEventHandler)(void * callBackOwner, BGAPI2_PnPEvent * pnpEvent);
151 
156  typedef void (BGAPI2CALL *BGAPI2_DevEventHandler)(void * callBackOwner, BGAPI2_DeviceEvent * deviceEvent);
157 
162  typedef void (BGAPI2CALL *BGAPI2_NewBufferEventHandler)(void * callBackOwner, BGAPI2_Buffer * pBuffer);
163 
164  // SYSTEM Functions
179  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_UpdateSystemList();
180 
198  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_UpdateSystemListFromPath(const char* producer_path);
199 
215  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_LoadSystemFromPath(const char* file_path, BGAPI2_System** system);
216 
224  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetNumSystems(bo_uint* count);
225 
243  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetSystem(bo_uint index, BGAPI2_System** system);
244 
257  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_Open(BGAPI2_System* system);
258 
269  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_IsOpen(BGAPI2_System* system, bo_bool* is_open);
270 
283  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_UpdateInterfaceList(
284  BGAPI2_System* system,
285  bo_bool* changed,
286  bo_uint64 timeout);
287 
306  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetInterface(
307  BGAPI2_System* system,
308  bo_uint index,
309  BGAPI2_Interface** iface);
310 
323  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNumInterfaces(
324  BGAPI2_System* system,
325  bo_uint* count_interfaces);
326 
338  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_Close(BGAPI2_System* system);
339 
340 
353  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseSystem(BGAPI2_System* system);
354 
364  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNode(
365  BGAPI2_System* system,
366  const char* name,
367  BGAPI2_Node** node);
368 
378  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNodeTree(
379  BGAPI2_System* system, BGAPI2_NodeMap** node_tree);
380 
390  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNodeList(
391  BGAPI2_System* system,
392  BGAPI2_NodeMap** node_list);
393 
394 
419  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetID(
420  BGAPI2_System* system,
421  char* ID,
422  bo_uint64* string_length);
423 
436  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetVendor(
437  BGAPI2_System* system,
438  char* vendor,
439  bo_uint64* string_length);
440 
453  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetModel(
454  BGAPI2_System* system,
455  char* model,
456  bo_uint64* string_length);
457 
470  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetVersion(
471  BGAPI2_System* system,
472  char* version,
473  bo_uint64* string_length);
474 
487  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetTLType(
488  BGAPI2_System* system,
489  char* tl_type,
490  bo_uint64* string_length);
491 
502  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetFileName(
503  BGAPI2_System* system,
504  char* name,
505  bo_uint64* string_length);
506 
517  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetPathName(
518  BGAPI2_System* system,
519  char* path_name,
520  bo_uint64* string_length);
521 
532  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetDisplayName(
533  BGAPI2_System* system,
534  char* display_name,
535  bo_uint64* string_length);
536 
537  // INTERFACE functions
549  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_Open(BGAPI2_Interface* iface);
550 
561  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_IsOpen(BGAPI2_Interface* iface, bo_bool *is_open);
562 
575  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_UpdateDeviceList(
576  BGAPI2_Interface* iface,
577  bo_bool* changed,
578  bo_uint64 timeout);
579 
594  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetDevice(
595  BGAPI2_Interface* iface,
596  bo_uint index,
597  BGAPI2_Device** device);
598 
610  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNumDevices(
611  BGAPI2_Interface* iface,
612  bo_uint* count_devices);
613 
622  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetParent(
623  BGAPI2_Interface* iface,
624  BGAPI2_System** parent);
625 
633  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_Close(BGAPI2_Interface* iface);
634 
644  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNode(
645  BGAPI2_Interface* iface,
646  const char* name,
647  BGAPI2_Node ** node);
648 
658  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNodeTree(
659  BGAPI2_Interface* iface,
660  BGAPI2_NodeMap** node_tree);
661 
671  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNodeList(
672  BGAPI2_Interface* iface,
673  BGAPI2_NodeMap** node_list);
674 
684  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_SetPnPEventMode(
685  BGAPI2_Interface* iface,
686  BGAPI2_EventMode event_mode);
687 
688 
698  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetPnPEventMode(
699  BGAPI2_Interface* iface,
700  BGAPI2_EventMode* event_mode);
701 
710  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreatePnPEvent(BGAPI2_PnPEvent** pnp_event);
711 
720  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleasePnPEvent(BGAPI2_PnPEvent* pnp_event);
721 
738  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetPnPEvent(
739  BGAPI2_Interface* iface,
740  BGAPI2_PnPEvent* pnp_event,
741  bo_uint64 timeout);
742 
751  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_CancelGetPnPEvent(BGAPI2_Interface* iface);
752 
768  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_RegisterPnPEventHandler(
769  BGAPI2_Interface* iface,
770  void * callback_owner,
771  BGAPI2_PnPEventHandler pnp_event_handler);
772 
800  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetID(
801  BGAPI2_Interface* iface,
802  char* ID,
803  bo_uint64* string_length);
804 
818  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetDisplayName(
819  BGAPI2_Interface* iface,
820  char* display_name,
821  bo_uint64* string_length);
822 
836  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetTLType(
837  BGAPI2_Interface* iface,
838  char* tl_type,
839  bo_uint64* string_length);
840 
841  // Device
856  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_Open(BGAPI2_Device* device);
857 
869  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_OpenExclusive(BGAPI2_Device* device);
870 
882  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_OpenReadOnly(BGAPI2_Device* device);
883 
892  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsOpen(BGAPI2_Device* device, bo_bool*is_open);
893 
906  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDataStream(
907  BGAPI2_Device* device,
908  bo_uint index,
909  BGAPI2_DataStream** data_stream);
910 
922  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNumDataStreams(
923  BGAPI2_Device* device,
924  bo_uint* count_data_streams);
925 
935  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_Close(BGAPI2_Device* device);
936 
946  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNode(
947  BGAPI2_Device* device,
948  const char* name,
949  BGAPI2_Node** node);
950 
960  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNodeTree(
961  BGAPI2_Device* device,
962  BGAPI2_NodeMap** node_tree);
963 
973  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNodeList(
974  BGAPI2_Device* device,
975  BGAPI2_NodeMap** node_list);
976 
986  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetDeviceEventMode(
987  BGAPI2_Device* device,
988  BGAPI2_EventMode event_mode);
989 
999  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDeviceEventMode(
1000  BGAPI2_Device* device,
1001  BGAPI2_EventMode* event_mode);
1002 
1011  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateDeviceEvent(BGAPI2_DeviceEvent** device_event);
1012 
1020  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseDeviceEvent(BGAPI2_DeviceEvent* device_event);
1021 
1035  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDeviceEvent(
1036  BGAPI2_Device* device,
1037  BGAPI2_DeviceEvent* device_event,
1038  bo_uint64 timeout);
1039 
1048  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_CancelGetDeviceEvent(BGAPI2_Device* device);
1049 
1061  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_RegisterDeviceEventHandler(
1062  BGAPI2_Device* device,
1063  void* callback_owner,
1064  BGAPI2_DevEventHandler device_event_handler);
1065 
1077  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetPayloadSize(
1078  BGAPI2_Device* device,
1079  bo_uint64* payload_size);
1080 
1092  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNode(
1093  BGAPI2_Device* device,
1094  const char* name,
1095  BGAPI2_Node** node);
1096 
1107  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNodeTree(
1108  BGAPI2_Device* device,
1109  BGAPI2_NodeMap** node_tree);
1110 
1121  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNodeList(
1122  BGAPI2_Device* device,
1123  BGAPI2_NodeMap** node_list);
1124 
1152  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetID(
1153  BGAPI2_Device* device,
1154  char* ID,
1155  bo_uint64* string_length);
1156 
1170  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetVendor(
1171  BGAPI2_Device* device,
1172  char* vendor,
1173  bo_uint64* string_length);
1174 
1188  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetModel(
1189  BGAPI2_Device* device,
1190  char* model,
1191  bo_uint64* string_length);
1192 
1206  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetSerialNumber(
1207  BGAPI2_Device* device,
1208  char* serial_number,
1209  bo_uint64* string_length);
1210 
1224  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetTLType(
1225  BGAPI2_Device* device,
1226  char* tl_type,
1227  bo_uint64* string_length);
1228 
1242  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDisplayName(
1243  BGAPI2_Device* device,
1244  char* display_name,
1245  bo_uint64* string_length);
1246 
1260  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetAccessStatus(
1261  BGAPI2_Device* device,
1262  char* access_status,
1263  bo_uint64* string_length);
1264 
1276  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteConfigurationFile(
1277  BGAPI2_Device* device,
1278  char* config_file,
1279  bo_uint64* string_length);
1280 
1290  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetRemoteConfigurationFile(
1291  BGAPI2_Device* device,
1292  const char* config_file);
1293 
1308  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_StartStacking(
1309  BGAPI2_Device* device,
1310  bo_bool replace_mode);
1311 
1322  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_WriteStack(BGAPI2_Device* device);
1323 
1334  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_CancelStack(BGAPI2_Device* device);
1335 
1344  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsUpdateModeAvailable(
1345  BGAPI2_Device* device,
1346  bo_bool* is_available);
1347 
1356  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsUpdateModeActive(
1357  BGAPI2_Device* device,
1358  bo_bool* is_active);
1359 
1373  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetUpdateMode(
1374  BGAPI2_Device* device,
1375  bo_bool update_mode,
1376  const char* custom_key);
1377 
1389  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNode(
1390  BGAPI2_Device* device,
1391  const char* name,
1392  BGAPI2_Node** node);
1393 
1403  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNodeTree(
1404  BGAPI2_Device* device,
1405  BGAPI2_NodeMap** node_tree);
1406 
1416  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNodeList(
1417  BGAPI2_Device* device,
1418  BGAPI2_NodeMap** node_list);
1419 
1431  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateConfigurationFile(
1432  BGAPI2_Device* device,
1433  char* config_file,
1434  bo_uint64* string_length);
1435 
1444  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetParent(
1445  BGAPI2_Device* device,
1446  BGAPI2_Interface** parent);
1447 
1448  // Node
1472  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetInterface(
1473  BGAPI2_Node* node, char* iface,
1474  bo_uint64* string_length);
1475 
1488  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetExtension(
1489  BGAPI2_Node* node,
1490  char* extension,
1491  bo_uint64* string_length);
1492 
1505  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetToolTip(
1506  BGAPI2_Node* node,
1507  char* tool_tip,
1508  bo_uint64* string_length);
1509 
1522  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDescription(
1523  BGAPI2_Node* node,
1524  char* description,
1525  bo_uint64* string_length);
1526 
1539  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetName(
1540  BGAPI2_Node* node,
1541  char* name,
1542  bo_uint64* string_length);
1543 
1556  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDisplayname(
1557  BGAPI2_Node* node,
1558  char* display_name,
1559  bo_uint64* string_length);
1560 
1573  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetVisibility(
1574  BGAPI2_Node* node,
1575  char* visibility,
1576  bo_uint64* string_length);
1577 
1587  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetEventID(BGAPI2_Node* node, bo_int64* event_id);
1588 
1598  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetImplemented(BGAPI2_Node* node, bo_bool* is_implemented);
1599 
1609  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAvailable(BGAPI2_Node* node, bo_bool* is_available);
1610 
1620  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetLocked(BGAPI2_Node* node, bo_bool* is_locked);
1621 
1634  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetImposedAccessMode(
1635  BGAPI2_Node* node,
1636  char* imposed_access_mode,
1637  bo_uint64* string_length);
1638 
1651  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetCurrentAccessMode(
1652  BGAPI2_Node* node,
1653  char* current_access_mode,
1654  bo_uint64* string_length);
1655 
1665  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsReadable(BGAPI2_Node* node, bo_bool* is_readable);
1666 
1676  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsWriteable(BGAPI2_Node* node, bo_bool* is_writable);
1677 
1690  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAlias(
1691  BGAPI2_Node* node,
1692  char* alias,
1693  bo_uint64* string_length);
1694 
1707  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetValue(
1708  BGAPI2_Node* node,
1709  char* value,
1710  bo_uint64* string_length);
1711 
1721  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetValue(BGAPI2_Node* node, const char* value);
1722 
1735  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetRepresentation(
1736  BGAPI2_Node* node,
1737  char* representation,
1738  bo_uint64* string_length);
1739 
1749  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntMin(BGAPI2_Node* node, bo_int64* min);
1750 
1760  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntMax(BGAPI2_Node* node, bo_int64* max);
1761 
1771  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntInc(BGAPI2_Node* node, bo_int64* inc);
1772 
1782  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetInt(BGAPI2_Node* node, bo_int64* value);
1783 
1793  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetInt(BGAPI2_Node* node, bo_int64 value);
1794 
1804  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_HasUnit(BGAPI2_Node* node, bo_bool* has_unit);
1805 
1818  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetUnit(
1819  BGAPI2_Node* node,
1820  char* unit,
1821  bo_uint64* string_length);
1822 
1832  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleMin(BGAPI2_Node* node, bo_double* min);
1833 
1843  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleMax(BGAPI2_Node* node, bo_double* max);
1844 
1855  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleInc(BGAPI2_Node* node, bo_double* inc);
1856 
1866  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_HasInc(BGAPI2_Node* node, bo_bool* has_inc);
1867 
1877  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoublePrecision(BGAPI2_Node* node, bo_uint64* prec);
1878 
1888  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDouble(BGAPI2_Node* node, bo_double* value);
1889 
1899  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetDouble(BGAPI2_Node* node, bo_double value);
1900 
1910  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetMaxStringLength(
1911  BGAPI2_Node* node,
1912  bo_int64* max_string_length);
1913 
1926  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetString(
1927  BGAPI2_Node* node,
1928  char* value,
1929  bo_uint64* string_length);
1930 
1940  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetString(BGAPI2_Node* node, const char* value);
1941 
1951  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetEnumNodeList(
1952  BGAPI2_Node* node,
1953  BGAPI2_NodeMap** enum_node_map);
1954 
1963  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Execute(BGAPI2_Node* node);
1964 
1974  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsDone(BGAPI2_Node* node, bo_bool *is_done);
1975 
1985  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetBool(BGAPI2_Node* node, bo_bool* value);
1986 
1996  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetBool(BGAPI2_Node* node, bo_bool value);
1997 
2007  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetNodeTree(BGAPI2_Node* node, BGAPI2_NodeMap** node_tree);
2008 
2018  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetNodeList(BGAPI2_Node* node, BGAPI2_NodeMap** node_list);
2019 
2029  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsSelector(BGAPI2_Node* node, bo_bool* is_selector);
2030 
2040  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetSelectedFeatures(
2041  BGAPI2_Node* node,
2042  BGAPI2_NodeMap** selected_features);
2043 
2053  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetLength(BGAPI2_Node* node, bo_int64* length);
2054 
2064  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAddress(BGAPI2_Node* node, bo_int64* address);
2065 
2076  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Get(BGAPI2_Node* node, void* buffer, bo_int64 length);
2077 
2088  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Set(BGAPI2_Node* node, void* buffer, bo_int64 length);
2089 
2090  // Nodemap
2100  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNode(
2101  BGAPI2_NodeMap* node_map,
2102  const char* name,
2103  BGAPI2_Node** node);
2104 
2113  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodeCount(BGAPI2_NodeMap* node_map, bo_uint64* count);
2114 
2125  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodeByIndex(
2126  BGAPI2_NodeMap* node_map,
2127  bo_uint64 index,
2128  BGAPI2_Node** node);
2129 
2139  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodePresent(
2140  BGAPI2_NodeMap* node_map,
2141  const char* name,
2142  bo_bool* is_present);
2143 
2144  // Events
2154  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNode(
2155  BGAPI2_DeviceEvent* device_event,
2156  const char* name,
2157  BGAPI2_Node** node);
2158 
2168  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNodeTree(
2169  BGAPI2_DeviceEvent* device_event,
2170  BGAPI2_NodeMap** node_tree);
2171 
2181  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNodeList(
2182  BGAPI2_DeviceEvent* device_event,
2183  BGAPI2_NodeMap** node_tree);
2184 
2196  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetName(
2197  BGAPI2_DeviceEvent* device_event,
2198  char* name,
2199  bo_uint64* string_length);
2200 
2211  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetDisplayName(
2212  BGAPI2_DeviceEvent* device_event,
2213  char* display_name,
2214  bo_uint64* string_length);
2215 
2225  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetTimeStamp(
2226  BGAPI2_DeviceEvent* device_event,
2227  bo_uint64* time_stamp);
2228 
2240  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetID(
2241  BGAPI2_DeviceEvent* device_event,
2242  char* ID,
2243  bo_uint64* string_length);
2244 
2255  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetSerialNumber(
2256  BGAPI2_PnPEvent* pnp_event,
2257  char* serial_number,
2258  bo_uint64* string_length);
2259 
2268  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetPnPType(
2269  BGAPI2_PnPEvent* pnp_event,
2270  bo_uint64* pnp_type);
2271 
2283  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetID(
2284  BGAPI2_PnPEvent* pnp_event,
2285  char* ID,
2286  bo_uint64* string_length);
2287 
2288  // Buffer
2296  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBuffer(BGAPI2_Buffer **buffer);
2297 
2306  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBufferWithUserPtr(BGAPI2_Buffer** buffer, void *user_obj);
2307 
2324  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBufferWithExternalMemory(
2325  BGAPI2_Buffer** buffer,
2326  void* user_buffer,
2327  bo_uint64 user_buffer_size,
2328  void* user_obj);
2329 
2337  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeleteBuffer(BGAPI2_Buffer* buffer, void** user_obj);
2338 
2348  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNode(
2349  BGAPI2_Buffer* buffer,
2350  char* name,
2351  BGAPI2_Node** node);
2352 
2362  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNodeTree(
2363  BGAPI2_Buffer* buffer,
2364  BGAPI2_NodeMap** node_tree);
2365 
2375  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNodeList(
2376  BGAPI2_Buffer* buffer,
2377  BGAPI2_NodeMap** node_list);
2378 
2390  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetChunkNodeList(
2391  BGAPI2_Buffer* buffer,
2392  BGAPI2_NodeMap** node_list);
2393 
2406  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetID(
2407  BGAPI2_Buffer* buffer,
2408  char* ID,
2409  bo_uint64* string_length);
2410 
2411 
2421  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetMemPtr(BGAPI2_Buffer* buffer, void** mem_ptr);
2422 
2432  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetMemSize(BGAPI2_Buffer* buffer, bo_uint64* buffer_size);
2433 
2443  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetUserPtr(BGAPI2_Buffer* buffer, void** user);
2444 
2454  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetTimestamp(BGAPI2_Buffer* buffer, bo_uint64* timestamp);
2455 
2465  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetHostTimestamp(
2466  BGAPI2_Buffer* buffer,
2467  bo_uint64* host_timestamp);
2468 
2478  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNewData(BGAPI2_Buffer* buffer, bo_bool* new_data);
2479 
2489  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsQueued(BGAPI2_Buffer* buffer, bo_bool* is_queued);
2490 
2500  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsAcquiring(BGAPI2_Buffer* buffer, bo_bool* is_acquiring);
2501 
2511  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsIncomplete(
2512  BGAPI2_Buffer* buffer, bo_bool* is_incomplete);
2513 
2524  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetTLType(
2525  BGAPI2_Buffer* buffer,
2526  char* tl_type,
2527  bo_uint64* string_length);
2528 
2538  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetSizeFilled(BGAPI2_Buffer* buffer, bo_uint64* size_filled);
2539 
2549  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetWidth(BGAPI2_Buffer* buffer, bo_uint64* width);
2550 
2560  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetHeight(BGAPI2_Buffer* buffer, bo_uint64* height);
2561 
2571  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetXOffset(BGAPI2_Buffer* buffer, bo_uint64* offset_x);
2572 
2582  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetYOffset(BGAPI2_Buffer* buffer, bo_uint64* offset_y);
2583 
2593  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetXPadding(BGAPI2_Buffer* buffer, bo_uint64* padding_x);
2594 
2604  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetYPadding(BGAPI2_Buffer* buffer, bo_uint64* padding_y);
2605 
2615  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetFrameID(BGAPI2_Buffer* buffer, bo_uint64* frame_id);
2616 
2626  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetImagePresent(
2627  BGAPI2_Buffer* buffer, bo_bool* image_present);
2628 
2638  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetImageOffset(
2639  BGAPI2_Buffer* buffer, bo_uint64* image_offset);
2640 
2651  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetPayloadType(
2652  BGAPI2_Buffer* buffer,
2653  char* payload_type,
2654  bo_uint64* string_length);
2655 
2666  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetPixelFormat(
2667  BGAPI2_Buffer* buffer,
2668  char* pixelformat,
2669  bo_uint64* string_length);
2670 
2680  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetDeliveredImageHeight(
2681  BGAPI2_Buffer* buffer,
2682  bo_uint64* delivered_image_height);
2683 
2693  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetDeliveredChunkPayloadSize(
2694  BGAPI2_Buffer* buffer,
2695  bo_uint64* delivered_chunk_payload_size);
2696 
2706  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetContainsChunk(
2707  BGAPI2_Buffer* buffer,
2708  bo_bool* contains_chunk);
2709 
2719  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetChunkLayoutID(
2720  BGAPI2_Buffer* buffer,
2721  bo_uint64* chunk_layout_id);
2722 
2733  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetFileName(
2734  BGAPI2_Buffer* buffer,
2735  char* file_name,
2736  bo_uint64* string_length);
2737 
2747  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetParent(
2748  BGAPI2_Buffer* buffer,
2749  BGAPI2_DataStream** parent);
2750 
2751  // DataStream
2763  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_Open(BGAPI2_DataStream* data_stream);
2764 
2774  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_Close(BGAPI2_DataStream* data_stream);
2775 
2785  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_IsOpen(BGAPI2_DataStream* data_stream, bo_bool* is_open);
2786 
2796  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNode(
2797  BGAPI2_DataStream* data_stream,
2798  const char* name,
2799  BGAPI2_Node** node);
2800 
2810  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNodeTree(
2811  BGAPI2_DataStream* data_stream,
2812  BGAPI2_NodeMap** node_tree);
2813 
2823  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNodeList(
2824  BGAPI2_DataStream* data_stream,
2825  BGAPI2_NodeMap** node_list);
2826 
2836  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_SetNewBufferEventMode(
2837  BGAPI2_DataStream* data_stream,
2838  BGAPI2_EventMode event_mode);
2839 
2848  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNewBufferEventMode(
2849  BGAPI2_DataStream* data_stream,
2850  BGAPI2_EventMode* event_mode);
2851 
2864  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetID(
2865  BGAPI2_DataStream* data_stream,
2866  char* ID,
2867  bo_uint64* string_length);
2868 
2880  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumDelivered(
2881  BGAPI2_DataStream* data_stream,
2882  bo_uint64* num_delivered);
2883 
2895  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumUnderrun(
2896  BGAPI2_DataStream* data_stream,
2897  bo_uint64* num_underrun);
2898 
2910  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumAnnounced(
2911  BGAPI2_DataStream* data_stream,
2912  bo_uint64* num_announced);
2913 
2925  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumQueued(
2926  BGAPI2_DataStream* data_stream,
2927  bo_uint64* num_queued);
2928 
2940  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumAwaitDelivery(
2941  BGAPI2_DataStream* data_stream,
2942  bo_uint64* num_await_delivery);
2943 
2955  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumStarted(
2956  BGAPI2_DataStream* data_stream,
2957  bo_uint64* num_started);
2958 
2974  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetPayloadSize(
2975  BGAPI2_DataStream* data_stream,
2976  bo_uint64* payload_size);
2977 
2989  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetIsGrabbing(
2990  BGAPI2_DataStream* data_stream,
2991  bo_bool* is_grabbing);
2992 
3008  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetDefinesPayloadSize(
3009  BGAPI2_DataStream* data_stream,
3010  bo_bool* defines_payload_size);
3011 
3022  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetTLType(
3023  BGAPI2_DataStream* data_stream,
3024  char* tl_type,
3025  bo_uint64* string_length);
3026 
3036  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StartAcquisition(
3037  BGAPI2_DataStream* data_stream,
3038  bo_uint64 num_to_acquire);
3039 
3050  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StartAcquisitionContinuous(BGAPI2_DataStream* data_stream);
3051 
3062  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StopAcquisition(BGAPI2_DataStream* data_stream);
3063 
3075  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_AbortAcquisition(BGAPI2_DataStream* data_stream);
3076 
3089  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushInputToOutputQueue(BGAPI2_DataStream* data_stream);
3090 
3103  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushAllToInputQueue(BGAPI2_DataStream* data_stream);
3104 
3116  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushUnqueuedToInputQueue(BGAPI2_DataStream* data_stream);
3117 
3128  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_DiscardOutputBuffers(BGAPI2_DataStream* data_stream);
3129 
3140  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_DiscardAllBuffers(BGAPI2_DataStream* data_stream);
3141 
3153  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_AnnounceBuffer(
3154  BGAPI2_DataStream* data_stream,
3155  BGAPI2_Buffer* buffer);
3156 
3169  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_RevokeBuffer(
3170  BGAPI2_DataStream* data_stream,
3171  BGAPI2_Buffer* buffer,
3172  void** user_obj);
3173 
3190  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_QueueBuffer(
3191  BGAPI2_DataStream* data_stream,
3192  BGAPI2_Buffer* buffer);
3193 
3210  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetFilledBuffer(
3211  BGAPI2_DataStream* data_stream,
3212  BGAPI2_Buffer** buffer,
3213  bo_uint64 timeout);
3214 
3223  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_CancelGetFilledBuffer(BGAPI2_DataStream* data_stream);
3224 
3237  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetBufferID(
3238  BGAPI2_DataStream* data_stream,
3239  bo_uint index,
3240  BGAPI2_Buffer** buffer);
3241 
3254  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_RegisterNewBufferEventHandler(
3255  BGAPI2_DataStream* data_stream,
3256  void* callback_owner,
3257  BGAPI2_NewBufferEventHandler buffer_event_handler);
3258 
3267  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetParent(
3268  BGAPI2_DataStream* data_stream,
3269  BGAPI2_Device** parent);
3270 
3271  // Image
3280  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetWidth(BGAPI2_Image* image, bo_uint* width);
3281 
3290  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetHeight(BGAPI2_Image* image, bo_uint* height);
3291 
3302  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetPixelformat(
3303  BGAPI2_Image* image,
3304  char* pixelformat,
3305  bo_uint64* string_length);
3306 
3316  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetBuffer(BGAPI2_Image* image, void** buffer);
3317 
3328  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetTransformBufferLength(
3329  BGAPI2_Image* image,
3330  const char* pixelformat,
3331  bo_uint* buffer_size);
3332 
3340  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_Release(BGAPI2_Image* image);
3341 
3355  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_Init(
3356  BGAPI2_Image* image,
3357  bo_uint width,
3358  bo_uint height,
3359  const char* pixelformat,
3360  void* buffer,
3361  bo_uint64 buffer_size);
3362 
3372  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNode(
3373  BGAPI2_Image* image,
3374  const char* name,
3375  BGAPI2_Node** node);
3376 
3386  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNodeTree(BGAPI2_Image* image, BGAPI2_NodeMap** node_tree);
3387 
3397  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNodeList(BGAPI2_Image* image, BGAPI2_NodeMap** node_list);
3398 
3399  // ImageProcessor
3406  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateImageProcessor(BGAPI2_ImageProcessor** img_proc);
3407 
3415  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseImageProcessor(BGAPI2_ImageProcessor* img_proc);
3416 
3429  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetVersion(
3430  BGAPI2_ImageProcessor* img_proc,
3431  char* version,
3432  bo_uint64* string_length);
3433 
3444  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateEmptyImage(
3445  BGAPI2_ImageProcessor* img_proc,
3446  BGAPI2_Image** image);
3447 
3463  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateImage(
3464  BGAPI2_ImageProcessor* img_proc,
3465  bo_uint width,
3466  bo_uint height,
3467  const char* pixelformat,
3468  void* buffer,
3469  bo_uint64 buffer_size,
3470  BGAPI2_Image** image);
3471 
3482  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateTransformedImage(
3483  BGAPI2_ImageProcessor* img_proc,
3484  BGAPI2_Image* image_input,
3485  const char* pixelformat,
3486  BGAPI2_Image** image_result);
3487 
3500  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_TransformImageToBuffer(
3501  BGAPI2_ImageProcessor* img_proc,
3502  BGAPI2_Image* image,
3503  const char* pixelformat,
3504  void* buffer,
3505  bo_uint64 buffer_size);
3506 
3516  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNode(
3517  BGAPI2_ImageProcessor* img_proc,
3518  const char* name,
3519  BGAPI2_Node** node);
3520 
3530  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNodeTree(
3531  BGAPI2_ImageProcessor* img_proc,
3532  BGAPI2_NodeMap** node_tree);
3533 
3543  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNodeList(
3544  BGAPI2_ImageProcessor* img_proc,
3545  BGAPI2_NodeMap** node_list);
3546 
3547 
3548  // POLARIZER
3549 
3554  typedef enum {
3566 
3573  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Create(BGAPI2_Polarizer** polarizer);
3574 
3581  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Release(BGAPI2_Polarizer* polarizer);
3582 
3592  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Initialize(
3593  BGAPI2_Polarizer* polarizer,
3594  BGAPI2_Buffer* buffer);
3595 
3609  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_ReadCalibrationData(
3610  BGAPI2_Polarizer* polarizer,
3611  BGAPI2_Device* device);
3612 
3624  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_EnableInterpolation(
3625  BGAPI2_Polarizer* polarizer,
3626  bo_bool interpolate);
3627 
3641  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Enable(
3642  BGAPI2_Polarizer* polarizer,
3643  BGAPI2_POLARIZER_FORMATS format,
3644  bo_bool enable);
3645 
3664  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Get(
3665  BGAPI2_Polarizer* polarizer,
3666  BGAPI2_POLARIZER_FORMATS format,
3667  BGAPI2_Image* image);
3668 
3680  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_GetFormatString(
3681  BGAPI2_Polarizer* polarizer,
3682  BGAPI2_POLARIZER_FORMATS format,
3683  char* format_string,
3684  bo_uint64* size);
3685 
3699  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_SetMaxThreads(
3700  BGAPI2_Polarizer* polarizer,
3701  bo_uint number);
3702 
3703 
3704  // TRACE functions
3710  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceEnable(bo_bool benable);
3711 
3718  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputToFile(bo_bool bactive, const char* tracefilename);
3719 
3725  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputToDebugger(bo_bool bactive);
3726 
3732  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskError(bo_bool bactive);
3733 
3739  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskWarning(bo_bool bactive);
3740 
3746  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskInformation(bo_bool bactive);
3747 
3753  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionTimestamp(bo_bool bactive);
3754 
3760  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionTimestampDiff(bo_bool bactive);
3761 
3767  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionThreadID(bo_bool bactive);
3768 
3774  BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionPrefix(bo_bool bactive);
3775 
3776  // OTHER STUFF
3784  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_SetEnv(const char* producer_path);
3785 
3795  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetEnv(char* producer_path, bo_uint64* string_length);
3796 
3806  BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetLastError(BGAPI2_RESULT* error_code, char* error_text,
3807  bo_uint64* string_length);
3808 
3809 
3810 #ifdef __cplusplus
3811 } // extern c
3812 #endif
3813 
3814 #endif // TLCONSUMER_BGAPI2_GENICAM_BGAPI2_GENICAM_H_
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetWidth(BGAPI2_Image *image, bo_uint *width)
Get the image width from given image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetAccessStatus(BGAPI2_Device *device, char *access_status, bo_uint64 *string_length)
Returns the access state of device, can be called on a device which is not open.
struct BGAPI2_Node BGAPI2_Node
Struct for pointers of type Node.
Definition: bgapi2_genicam.h:98
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Execute(BGAPI2_Node *node)
Executes the selected node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetEventID(BGAPI2_Node *node, bo_int64 *event_id)
Returns the event identifier of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Release(BGAPI2_Polarizer *polarizer)
Release a polarizer object.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetSizeFilled(BGAPI2_Buffer *buffer, bo_uint64 *size_filled)
Returns the current size of data of buffer.
struct BGAPI2_Polarizer BGAPI2_Polarizer
Struct for pointers of type Polarizer.
Definition: bgapi2_genicam.h:122
struct BGAPI2_DeviceEvent BGAPI2_DeviceEvent
Struct for pointers of type DeviceEvent.
Definition: bgapi2_genicam.h:128
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNumDevices(BGAPI2_Interface *iface, bo_uint *count_devices)
Returns count of devices on interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetHeight(BGAPI2_Image *image, bo_uint *height)
Get the image height from given image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetDeliveredChunkPayloadSize(BGAPI2_Buffer *buffer, bo_uint64 *delivered_chunk_payload_size)
Returns the delivered chunk payload size of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNode(BGAPI2_Interface *iface, const char *name, BGAPI2_Node **node)
Get a named node of the interface.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskWarning(bo_bool bactive)
Trace warnings.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsDone(BGAPI2_Node *node, bo_bool *is_done)
Checks if the execution of node is done.
Enum value Intensity - Gray scale image.
Definition: bgapi2_genicam.h:3558
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_Open(BGAPI2_System *system)
Opens a system (GenTL producer) to work with it.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushUnqueuedToInputQueue(BGAPI2_DataStream *data_stream)
Moves all free (not queued) Buffers of the Buffer list to the input buffer queue.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetTLType(BGAPI2_DataStream *data_stream, char *tl_type, bo_uint64 *string_length)
Returns the transport layer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetUnit(BGAPI2_Node *node, char *unit, bo_uint64 *string_length)
Returns the unit of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_Open(BGAPI2_DataStream *data_stream)
Opens a datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNode(BGAPI2_Buffer *buffer, char *name, BGAPI2_Node **node)
Gets a node of the buffer.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionTimestampDiff(bo_bool bactive)
Trace Timestamp differences.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetDeviceEventMode(BGAPI2_Device *device, BGAPI2_EventMode event_mode)
Set the device event mode (polling, callback, off)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_RegisterNewBufferEventHandler(BGAPI2_DataStream *data_stream, void *callback_owner, BGAPI2_NewBufferEventHandler buffer_event_handler)
Register a callback for datastream new buffer events.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Initialize(BGAPI2_Polarizer *polarizer, BGAPI2_Buffer *buffer)
Initialize the Polarizer and provide the buffer with the raw polarized data for calculations.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_HasUnit(BGAPI2_Node *node, bo_bool *has_unit)
Returns the availability of a unit for the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetName(BGAPI2_DeviceEvent *device_event, char *name, bo_uint64 *string_length)
Returns the name of device event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNodeTree(BGAPI2_System *system, BGAPI2_NodeMap **node_tree)
Get a tree of all system nodes (features)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetID(BGAPI2_DataStream *data_stream, char *ID, bo_uint64 *string_length)
Returns the identifier of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetFileName(BGAPI2_Buffer *buffer, char *file_name, bo_uint64 *string_length)
Returns the filename of buffer (only for payload type = file)
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskInformation(bo_bool bactive)
Trace infos.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_OpenReadOnly(BGAPI2_Device *device)
Opens a device in read-only-mode.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNodeList(BGAPI2_Device *device, BGAPI2_NodeMap **node_list)
Get the update node list of the device.
struct BGAPI2_PnPEvent BGAPI2_PnPEvent
Struct for pointers of type PnPEvent.
Definition: bgapi2_genicam.h:134
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_IsOpen(BGAPI2_DataStream *data_stream, bo_bool *is_open)
Checks if the data stream is opened.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreatePnPEvent(BGAPI2_PnPEvent **pnp_event)
Creates a structure to store pnp events retrieved via BGAPI2_Interface_GetPnPEvent
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetValue(BGAPI2_Node *node, const char *value)
Sets a string value to a node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetRemoteConfigurationFile(BGAPI2_Device *device, const char *config_file)
Sets a configuration file (xml) to use with the attached remote device (camera)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetMemPtr(BGAPI2_Buffer *buffer, void **mem_ptr)
Returns the memory (data) pointer of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateTransformedImage(BGAPI2_ImageProcessor *img_proc, BGAPI2_Image *image_input, const char *pixelformat, BGAPI2_Image **image_result)
Transformes an given image using the pixelformat using the image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetPnPEventMode(BGAPI2_Interface *iface, BGAPI2_EventMode *event_mode)
Returns the current event mode setting.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_TransformImageToBuffer(BGAPI2_ImageProcessor *img_proc, BGAPI2_Image *image, const char *pixelformat, void *buffer, bo_uint64 buffer_size)
Creates an new image based on given image with new pixelformat by image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetInt(BGAPI2_Node *node, bo_int64 *value)
Returns the integer value of the node.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionTimestamp(bo_bool bactive)
Trace Timestamps.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_QueueBuffer(BGAPI2_DataStream *data_stream, BGAPI2_Buffer *buffer)
Moves a Buffer object into the input buffer queue and make it available for the image acquisition.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNewData(BGAPI2_Buffer *buffer, bo_bool *new_data)
Returns the flag for new data of buffer.
struct BGAPI2_DataStream BGAPI2_DataStream
Struct for pointers of type DataStream.
Definition: bgapi2_genicam.h:87
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetLastError(BGAPI2_RESULT *error_code, char *error_text, bo_uint64 *string_length)
Returns a description of the last occurred error.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Get(BGAPI2_Polarizer *polarizer, BGAPI2_POLARIZER_FORMATS format, BGAPI2_Image *image)
Get the calculated component (BGAPI_POLARIZER_AOP, etc.) from the buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_GetFormatString(BGAPI2_Polarizer *polarizer, BGAPI2_POLARIZER_FORMATS format, char *format_string, bo_uint64 *size)
Get the string of the polarization format.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetParent(BGAPI2_Device *device, BGAPI2_Interface **parent)
Returns the parent object (interface) of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetSystem(bo_uint index, BGAPI2_System **system)
Get a pointer to the System (GenTL Producer) specified by the index.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetPayloadType(BGAPI2_Buffer *buffer, char *payload_type, bo_uint64 *string_length)
Returns the payload type of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetXPadding(BGAPI2_Buffer *buffer, bo_uint64 *padding_x)
Returns x padding bytes (number of extra bytes in each line) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetLocked(BGAPI2_Node *node, bo_bool *is_locked)
Returns the locked state of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDisplayName(BGAPI2_Device *device, char *display_name, bo_uint64 *string_length)
Returns the "user friendly" display name of device, can be called on a device which is not open.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeleteBuffer(BGAPI2_Buffer *buffer, void **user_obj)
Destroys the buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsReadable(BGAPI2_Node *node, bo_bool *is_readable)
Returns the readability state of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetDeliveredImageHeight(BGAPI2_Buffer *buffer, bo_uint64 *delivered_image_height)
Returns the delivered image height of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetImageOffset(BGAPI2_Buffer *buffer, bo_uint64 *image_offset)
Returns the offset into buffer memory to begin of data of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNodeList(BGAPI2_Device *device, BGAPI2_NodeMap **node_list)
Get the node list of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetDisplayName(BGAPI2_Interface *iface, char *display_name, bo_uint64 *string_length)
Returns the "user friendly" display name of interface, can be called on an interface which is not ope...
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNodeList(BGAPI2_Interface *iface, BGAPI2_NodeMap **node_list)
Get the node list of the interface.
struct BGAPI2_Interface BGAPI2_Interface
Struct for pointers of type Interface.
Definition: bgapi2_genicam.h:75
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsUpdateModeAvailable(BGAPI2_Device *device, bo_bool *is_available)
Checks for availability of update state of device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateImageProcessor(BGAPI2_ImageProcessor **img_proc)
Creates an image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateEmptyImage(BGAPI2_ImageProcessor *img_proc, BGAPI2_Image **image)
Creates an empty image by image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_AbortAcquisition(BGAPI2_DataStream *data_stream)
Stops the DataStream immediately. Active transmissions are aborted.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetID(BGAPI2_PnPEvent *pnp_event, char *ID, bo_uint64 *string_length)
Returns the identifier of pnp event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntMin(BGAPI2_Node *node, bo_int64 *min)
Returns the minimal integer value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetYOffset(BGAPI2_Buffer *buffer, bo_uint64 *offset_y)
Returns y offset (in pixel) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDisplayname(BGAPI2_Node *node, char *display_name, bo_uint64 *string_length)
Returns the "user friendly" display name of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_SetNewBufferEventMode(BGAPI2_DataStream *data_stream, BGAPI2_EventMode event_mode)
Sets the new buffer event mode. The event mode is controlled by the event register functions.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetYPadding(BGAPI2_Buffer *buffer, bo_uint64 *padding_y)
Returns y padding bytes (number of extra bytes at image end) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNodeList(BGAPI2_Image *image, BGAPI2_NodeMap **node_list)
Get the node list of the image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetVendor(BGAPI2_System *system, char *vendor, bo_uint64 *string_length)
Returns the vendor of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateConfigurationFile(BGAPI2_Device *device, char *config_file, bo_uint64 *string_length)
Returns the configuration file (xml) of the update device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNodeList(BGAPI2_Buffer *buffer, BGAPI2_NodeMap **node_list)
Gets the node list of the buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNodeList(BGAPI2_System *system, BGAPI2_NodeMap **node_list)
Get a list of all system nodes (features)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDeviceEventMode(BGAPI2_Device *device, BGAPI2_EventMode *event_mode)
Get the device event mode (polling, callback, off)
Event handling is disabled. No events can be retrieved.
Definition: bgapi2_genicam.h:141
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumAwaitDelivery(BGAPI2_DataStream *data_stream, bo_uint64 *num_await_delivery)
Returns the number of wait for delivery buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetHeight(BGAPI2_Buffer *buffer, bo_uint64 *height)
Returns height (in pixel) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodePresent(BGAPI2_NodeMap *node_map, const char *name, bo_bool *is_present)
Checks if node is present in nodemap.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBufferWithExternalMemory(BGAPI2_Buffer **buffer, void *user_buffer, bo_uint64 user_buffer_size, void *user_obj)
Returns a new buffer, initialized with user parameter and external memory.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetMaxStringLength(BGAPI2_Node *node, bo_int64 *max_string_length)
Returns the maximum string length value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_IsOpen(BGAPI2_System *system, bo_bool *is_open)
Check if the system (GenTL producer) is opened.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNode(BGAPI2_Device *device, const char *name, BGAPI2_Node **node)
Get a named node of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumDelivered(BGAPI2_DataStream *data_stream, bo_uint64 *num_delivered)
Returns the number of delivered buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_StartStacking(BGAPI2_Device *device, bo_bool replace_mode)
Starts a stack of feature writes to the device (caching write operations).
Enum value Pol0Deg - The polarization information 0 degrees.
Definition: bgapi2_genicam.h:3559
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetValue(BGAPI2_Node *node, char *value, bo_uint64 *string_length)
Returns the value of node as a string.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_CreateImage(BGAPI2_ImageProcessor *img_proc, bo_uint width, bo_uint height, const char *pixelformat, void *buffer, bo_uint64 buffer_size, BGAPI2_Image **image)
Creates an image by image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNodeTree(BGAPI2_Device *device, BGAPI2_NodeMap **node_tree)
Get the node tree of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_LoadSystemFromPath(const char *file_path, BGAPI2_System **system)
Creates a system (GenTL producer) object, specified by filepath before opening it.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoublePrecision(BGAPI2_Node *node, bo_uint64 *prec)
Returns the double precision value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetInterface(BGAPI2_Node *node, char *iface, bo_uint64 *string_length)
Returns the data type (interface) of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_Close(BGAPI2_Device *device)
Closes a device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetFileName(BGAPI2_System *system, char *name, bo_uint64 *string_length)
Returns the file name of the system (GenTL producer)
Enum value ReflectionMax - Image with enhanced reflections.
Definition: bgapi2_genicam.h:3564
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNode(BGAPI2_Device *device, const char *name, BGAPI2_Node **node)
Get the named node of given remote device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_RegisterDeviceEventHandler(BGAPI2_Device *device, void *callback_owner, BGAPI2_DevEventHandler device_event_handler)
Register one callback function to handle all device events of the interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntInc(BGAPI2_Node *node, bo_int64 *inc)
Returns the integer increment value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNodeList(BGAPI2_ImageProcessor *img_proc, BGAPI2_NodeMap **node_list)
Get the node map of image processor as a list.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNodeList(BGAPI2_DeviceEvent *device_event, BGAPI2_NodeMap **node_tree)
Gets the node map of interface (list of entries)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_SetMaxThreads(BGAPI2_Polarizer *polarizer, bo_uint number)
Set the number of threads the Polarizer can use for calculations.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetDevice(BGAPI2_Interface *iface, bo_uint index, BGAPI2_Device **device)
Get a pointer to the device with supplied index.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleInc(BGAPI2_Node *node, bo_double *inc)
Returns the double increment value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_RegisterPnPEventHandler(BGAPI2_Interface *iface, void *callback_owner, BGAPI2_PnPEventHandler pnp_event_handler)
Register one callback function to handle all pnp events of the interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetPathName(BGAPI2_System *system, char *path_name, bo_uint64 *string_length)
Returns the complete path name of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumAnnounced(BGAPI2_DataStream *data_stream, bo_uint64 *num_announced)
Returns the number of announced buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetImagePresent(BGAPI2_Buffer *buffer, bo_bool *image_present)
Returns the flag for available image of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNodeList(BGAPI2_Device *device, BGAPI2_NodeMap **node_list)
Get the update node list of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Get(BGAPI2_Node *node, void *buffer, bo_int64 length)
Returns the data of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_UpdateSystemListFromPath(const char *producer_path)
Search for GenTL producers only in the path specified.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetTimeStamp(BGAPI2_DeviceEvent *device_event, bo_uint64 *time_stamp)
Returns the timestamp of device event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetImposedAccessMode(BGAPI2_Node *node, char *imposed_access_mode, bo_uint64 *string_length)
Returns the imposed access mode of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_DiscardOutputBuffers(BGAPI2_DataStream *data_stream)
Discard all Buffer objects in the output buffer queue. The discarded Buffer objects are freed.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetFilledBuffer(BGAPI2_DataStream *data_stream, BGAPI2_Buffer **buffer, bo_uint64 timeout)
Fetches a new image from the DataStream object and removes it from the output buffer queue.
Events are retrieved by a previously registered callback function.
Definition: bgapi2_genicam.h:143
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_WriteStack(BGAPI2_Device *device)
End the stacking and write all featues to the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StopAcquisition(BGAPI2_DataStream *data_stream)
Stop acquiring buffers from datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsUpdateModeActive(BGAPI2_Device *device, bo_bool *is_active)
Returns the update mode state of device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteNodeTree(BGAPI2_Device *device, BGAPI2_NodeMap **node_tree)
Get the update node tree of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetChunkLayoutID(BGAPI2_Buffer *buffer, bo_uint64 *chunk_layout_id)
Returns the chunk layout identifier size of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_ReadCalibrationData(BGAPI2_Polarizer *polarizer, BGAPI2_Device *device)
Get the calibration data and angle offset from the camera.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetEnumNodeList(BGAPI2_Node *node, BGAPI2_NodeMap **enum_node_map)
Gets the enumeration node map of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_CancelStack(BGAPI2_Device *device)
End the stacking without writing featues to the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumStarted(BGAPI2_DataStream *data_stream, bo_uint64 *num_started)
Returns the number of currently filled buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBufferWithUserPtr(BGAPI2_Buffer **buffer, void *user_obj)
Returns a new buffer, initialized with user parameter.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_EnableInterpolation(BGAPI2_Polarizer *polarizer, bo_bool interpolate)
Keep output image the same size as the input buffer. The default is disabled.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetName(BGAPI2_Node *node, char *name, bo_uint64 *string_length)
Returns the name of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetPnPEvent(BGAPI2_Interface *iface, BGAPI2_PnPEvent *pnp_event, bo_uint64 timeout)
Polls for event information until timeout is reached.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetRemoteConfigurationFile(BGAPI2_Device *device, char *config_file, bo_uint64 *string_length)
Returns the configuration file (xml) of the remote device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetUserPtr(BGAPI2_Buffer *buffer, void **user)
Returns the user pointer of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetNumDataStreams(BGAPI2_Device *device, bo_uint *count_data_streams)
Returns the number of datastreams of the device.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateMaskError(bo_bool bactive)
Trace errors.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_CancelGetFilledBuffer(BGAPI2_DataStream *data_stream)
Cancels a currently running BGAPI2_DataStream_GetFilledBuffer.
Enum value Pol45Deg - The polarization information 45 degrees.
Definition: bgapi2_genicam.h:3560
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetDouble(BGAPI2_Node *node, bo_double value)
Sets the double value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetHostTimestamp(BGAPI2_Buffer *buffer, bo_uint64 *host_timestamp)
Returns the host time stamp of the first received packet of a new image using a steady clock.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNodeTree(BGAPI2_ImageProcessor *img_proc, BGAPI2_NodeMap **node_tree)
Get the node map of image processor as a tree.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetInterface(BGAPI2_System *system, bo_uint index, BGAPI2_Interface **iface)
Get a pointer to the interface with the specified index.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleMax(BGAPI2_Node *node, bo_double *max)
Returns the maximum double value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetCurrentAccessMode(BGAPI2_Node *node, char *current_access_mode, bo_uint64 *string_length)
Returns the current access mode of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDouble(BGAPI2_Node *node, bo_double *value)
Returns the double value of node.
Enum value ADOLP - Angle and degree of linear polarization.
Definition: bgapi2_genicam.h:3557
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNode(BGAPI2_System *system, const char *name, BGAPI2_Node **node)
Get the named node (feature) of given map of system.
struct BGAPI2_NodeMap BGAPI2_NodeMap
Struct for pointers of type NodeMap.
Definition: bgapi2_genicam.h:104
Enum value DOLP - Degree of linear polarization.
Definition: bgapi2_genicam.h:3556
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetTLType(BGAPI2_Interface *iface, char *tl_type, bo_uint64 *string_length)
Returns the transport layer name of interface, can be called on an interface which is not open.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetParent(BGAPI2_Interface *iface, BGAPI2_System **parent)
Returns the parent object (GenTL producer) which the interface belongs to.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionPrefix(bo_bool bactive)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNode(BGAPI2_NodeMap *node_map, const char *name, BGAPI2_Node **node)
Gets the named node of given map.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsSelector(BGAPI2_Node *node, bo_bool *is_selector)
Checks if the node is an selector.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetContainsChunk(BGAPI2_Buffer *buffer, bo_bool *contains_chunk)
Returns the flag to indicating existing chunk of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_Init(BGAPI2_Image *image, bo_uint width, bo_uint height, const char *pixelformat, void *buffer, bo_uint64 buffer_size)
Initialize a given image with parameters.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNodeTree(BGAPI2_DeviceEvent *device_event, BGAPI2_NodeMap **node_tree)
Gets the node map of interface (tree elements)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetTLType(BGAPI2_Buffer *buffer, char *tl_type, bo_uint64 *string_length)
Returns the transport layer of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetID(BGAPI2_DeviceEvent *device_event, char *ID, bo_uint64 *string_length)
Returns the identifier of device event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetBool(BGAPI2_Node *node, bo_bool *value)
Returns the boolean value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_OpenExclusive(BGAPI2_Device *device)
Opens a device in exclusive mode.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetDisplayName(BGAPI2_System *system, char *display_name, bo_uint64 *string_length)
Returns the "user friendly" display name of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNode(BGAPI2_DataStream *data_stream, const char *name, BGAPI2_Node **node)
Gets the named node of given datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetString(BGAPI2_Node *node, char *value, bo_uint64 *string_length)
Returns the string value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_DiscardAllBuffers(BGAPI2_DataStream *data_stream)
Discard all Buffer objects in the input buffer queue and output buffer queue.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetPnPType(BGAPI2_PnPEvent *pnp_event, bo_uint64 *pnp_type)
Returns the type of pnp event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetPayloadSize(BGAPI2_Device *device, bo_uint64 *payload_size)
Returns the payload size in bytes, used to allocate image buffers.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleasePnPEvent(BGAPI2_PnPEvent *pnp_event)
Destroys a pnp event structure.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_IsWriteable(BGAPI2_Node *node, bo_bool *is_writable)
Returns the writeability state of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAddress(BGAPI2_Node *node, bo_int64 *address)
Returns the (data) address of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNodeList(BGAPI2_DataStream *data_stream, BGAPI2_NodeMap **node_list)
Gets the node list of given datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetNodeTree(BGAPI2_Interface *iface, BGAPI2_NodeMap **node_tree)
Get the node tree of the interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_IsOpen(BGAPI2_Interface *iface, bo_bool *is_open)
Checks the open state of a interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsAcquiring(BGAPI2_Buffer *buffer, bo_bool *is_acquiring)
Returns the flag for acquiring data of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushInputToOutputQueue(BGAPI2_DataStream *data_stream)
Moves all Buffer objects from the input buffer queue to the output buffer queue.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetSelectedFeatures(BGAPI2_Node *node, BGAPI2_NodeMap **selected_features)
Returns the selected features of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_Open(BGAPI2_Interface *iface)
Opens an interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetToolTip(BGAPI2_Node *node, char *tool_tip, bo_uint64 *string_length)
Returns the tooltip of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetXOffset(BGAPI2_Buffer *buffer, bo_uint64 *offset_x)
Returns x offset (in pixel) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_IsOpen(BGAPI2_Device *device, bo_bool *is_open)
Checks if the device is opened.
BGAPI2_EventMode
An enumeration containing the string representation of the possible event configurations.
Definition: bgapi2_genicam.h:140
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_HasInc(BGAPI2_Node *node, bo_bool *has_inc)
Returns the availability of an increment value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_RevokeBuffer(BGAPI2_DataStream *data_stream, BGAPI2_Buffer *buffer, void **user_obj)
Removes a Buffer object from the buffer list.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_AnnounceBuffer(BGAPI2_DataStream *data_stream, BGAPI2_Buffer *buffer)
Adds the Buffer objects to the datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_SetUpdateMode(BGAPI2_Device *device, bo_bool update_mode, const char *custom_key)
Set the update mode state of device.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputToFile(bo_bool bactive, const char *tracefilename)
Activate the tracing to an outputfile.
struct BGAPI2_Image BGAPI2_Image
Struct for pointers of type Image.
Definition: bgapi2_genicam.h:110
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetVersion(BGAPI2_ImageProcessor *img_proc, char *version, bo_uint64 *string_length)
Get the version string of image processor.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_UpdateSystemList()
Search for GenTL producers in the current directory and in GENICAM_GENTLxx_PATH.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetInt(BGAPI2_Node *node, bo_int64 value)
Sets the integer value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetModel(BGAPI2_System *system, char *model, bo_uint64 *string_length)
Returns the name (model) of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDoubleMin(BGAPI2_Node *node, bo_double *min)
Returns the minimal double value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetNumInterfaces(BGAPI2_System *system, bo_uint *count_interfaces)
Returns the number of accessable interfaces.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNewBufferEventMode(BGAPI2_DataStream *data_stream, BGAPI2_EventMode *event_mode)
Returns the new buffer event mode. The event mode is controlled by the event register functions.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetFrameID(BGAPI2_Buffer *buffer, bo_uint64 *frame_id)
Returns the frame identifier of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetImplemented(BGAPI2_Node *node, bo_bool *is_implemented)
Returns the implemented state of node.
struct BGAPI2_Device BGAPI2_Device
Struct for pointers of type Device.
Definition: bgapi2_genicam.h:81
Enum value ReflectionMin - Image with suppressed reflections.
Definition: bgapi2_genicam.h:3563
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseDeviceEvent(BGAPI2_DeviceEvent *device_event)
Destroys a device event structure.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNode(BGAPI2_Image *image, const char *name, BGAPI2_Node **node)
Get the named node of given map of image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_FlushAllToInputQueue(BGAPI2_DataStream *data_stream)
Moves all Buffers of the Buffer list to the input buffer queue even those in the output buffer queue.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetDescription(BGAPI2_Node *node, char *description, bo_uint64 *string_length)
Returns the description of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetNodeTree(BGAPI2_Image *image, BGAPI2_NodeMap **node_tree)
Get the node tree of the image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetTLType(BGAPI2_Device *device, char *tl_type, bo_uint64 *string_length)
Returns the transport layer of device, can be called on a device which is not open.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetBool(BGAPI2_Node *node, bo_bool value)
Sets the boolean value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsQueued(BGAPI2_Buffer *buffer, bo_bool *is_queued)
Returns the flag for queued buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_SetPnPEventMode(BGAPI2_Interface *iface, BGAPI2_EventMode event_mode)
Set the event mode (polling, callback, off)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetTimestamp(BGAPI2_Buffer *buffer, bo_uint64 *timestamp)
Delivers the timestamp of the buffer obtained by the camera.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Create(BGAPI2_Polarizer **polarizer)
Creates a polarizer object.
void(BGAPI2CALL * BGAPI2_DevEventHandler)(void *callBackOwner, BGAPI2_DeviceEvent *deviceEvent)
Declaration for callback functions for BGAPI2_DevEventHandler.
Definition: bgapi2_genicam.h:156
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_SetString(BGAPI2_Node *node, const char *value)
Sets the string value of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodeByIndex(BGAPI2_NodeMap *node_map, bo_uint64 index, BGAPI2_Node **node)
Returns the node with the index.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetID(BGAPI2_Buffer *buffer, char *ID, bo_uint64 *string_length)
Returns the identifier of the buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetMemSize(BGAPI2_Buffer *buffer, bo_uint64 *buffer_size)
Returns the memory size of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetTransformBufferLength(BGAPI2_Image *image, const char *pixelformat, bo_uint *buffer_size)
Get the required image buffer size for new pixelformat of given image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetParent(BGAPI2_DataStream *data_stream, BGAPI2_Device **parent)
Returns the parent object (device) which belongs to.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNodeTree(BGAPI2_DataStream *data_stream, BGAPI2_NodeMap **node_tree)
Gets the node tree of given datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetTLType(BGAPI2_System *system, char *tl_type, bo_uint64 *string_length)
Returns the name of the transport layer of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAlias(BGAPI2_Node *node, char *alias, bo_uint64 *string_length)
Returns the alias name of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetNodeList(BGAPI2_Node *node, BGAPI2_NodeMap **node_list)
Gets the node list of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetBufferID(BGAPI2_DataStream *data_stream, bo_uint index, BGAPI2_Buffer **buffer)
Returns buffer from datastream with index number.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_Close(BGAPI2_Interface *iface)
Closes an interfaces.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputOptionThreadID(bo_bool bactive)
Trace the thread ID.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetExtension(BGAPI2_Node *node, char *extension, bo_uint64 *string_length)
Returns the extension (vendor specific information) of node.
struct BGAPI2_System BGAPI2_System
Struct for pointers of type System.
Definition: bgapi2_genicam.h:69
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_CancelGetDeviceEvent(BGAPI2_Device *device)
Cancels a running BGAPI2_Device_GetDeviceEvent
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_CancelGetPnPEvent(BGAPI2_Interface *iface)
Cancels an actively running BGAPI2_Interface_GetPnPEvent
void(BGAPI2CALL * BGAPI2_PnPEventHandler)(void *callBackOwner, BGAPI2_PnPEvent *pnpEvent)
Declaration for callback functions for BGAPI2_PnPEventHandler.
Definition: bgapi2_genicam.h:150
struct BGAPI2_Buffer BGAPI2_Buffer
Struct for pointers of type Buffer.
Definition: bgapi2_genicam.h:92
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumUnderrun(BGAPI2_DataStream *data_stream, bo_uint64 *num_underrun)
Returns the number of underrun buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetNodeTree(BGAPI2_Node *node, BGAPI2_NodeMap **node_tree)
Gets the node tree of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_UpdateInterfaceList(BGAPI2_System *system, bo_bool *changed, bo_uint64 timeout)
Updates the list of of accessable interfaces and creates an object for each.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDeviceEvent(BGAPI2_Device *device, BGAPI2_DeviceEvent *device_event, bo_uint64 timeout)
Polls for event information until timeout is reached.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetVisibility(BGAPI2_Node *node, char *visibility, bo_uint64 *string_length)
Returns the visibility of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_Set(BGAPI2_Node *node, void *buffer, bo_int64 length)
Sets the data of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNodeTree(BGAPI2_Device *device, BGAPI2_NodeMap **node_tree)
Get the update node tree of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetModel(BGAPI2_Device *device, char *model, bo_uint64 *string_length)
Returns the name (model) of the device, can be called on a device which is not open.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceActivateOutputToDebugger(bo_bool bactive)
Activate the tracing to the debugger.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetChunkNodeList(BGAPI2_Buffer *buffer, BGAPI2_NodeMap **node_list)
Gets the chunk node list of given buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_UpdateDeviceList(BGAPI2_Interface *iface, bo_bool *changed, bo_uint64 timeout)
Updates the list of devices on the interface and creates an object for each found device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_Release(BGAPI2_Image *image)
Release (delete) a given image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetVendor(BGAPI2_Device *device, char *vendor, bo_uint64 *string_length)
Returns the vendor of device, can be called on a device which is not open.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StartAcquisitionContinuous(BGAPI2_DataStream *data_stream)
Acquires buffers from datastream.
void(BGAPI2CALL * BGAPI2_NewBufferEventHandler)(void *callBackOwner, BGAPI2_Buffer *pBuffer)
Declaration for callback functions for BGAPI2_NewBufferEventHandler.
Definition: bgapi2_genicam.h:162
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_Open(BGAPI2_Device *device)
Opens a device for reading and writing.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetSerialNumber(BGAPI2_Device *device, char *serial_number, bo_uint64 *string_length)
Returns the serial number of device, can be called on a device which is not open.
BGAPI2_POLARIZER_FORMATS
Enumeration containing the string representation of the possible polarization formats.
Definition: bgapi2_genicam.h:3554
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Polarizer_Enable(BGAPI2_Polarizer *polarizer, BGAPI2_POLARIZER_FORMATS format, bo_bool enable)
Each component to be calculated must be enabled first.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_StartAcquisition(BGAPI2_DataStream *data_stream, bo_uint64 num_to_acquire)
Acquires a defined number of buffers from datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateDeviceEvent(BGAPI2_DeviceEvent **device_event)
Creates a structure to store device events retrieved via BGAPI2_Device_GetDeviceEvent
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseImageProcessor(BGAPI2_ImageProcessor *img_proc)
Release an image processor.
Enum value Pol135Deg - The polarization information 135 degrees.
Definition: bgapi2_genicam.h:3562
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetLength(BGAPI2_Node *node, bo_int64 *length)
Returns the (data) length of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_NodeMap_GetNodeCount(BGAPI2_NodeMap *node_map, bo_uint64 *count)
Returns the number of nodes in nodemap.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetBuffer(BGAPI2_Image *image, void **buffer)
Get the image pixel buffer from given image.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_Close(BGAPI2_DataStream *data_stream)
Closes a datastream.
Events are retrieved by a function call of the corresponding get function.
Definition: bgapi2_genicam.h:142
struct BGAPI2_ImageProcessor BGAPI2_ImageProcessor
Struct for pointers of type ImageProcessor.
Definition: bgapi2_genicam.h:116
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetPixelFormat(BGAPI2_Buffer *buffer, char *pixelformat, bo_uint64 *string_length)
Returns the payload type of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_CreateBuffer(BGAPI2_Buffer **buffer)
Creates a new buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetNodeTree(BGAPI2_Buffer *buffer, BGAPI2_NodeMap **node_tree)
Gets the node tree of the buffer.
BGAPI2_C_DECL void BGAPI2CALL BGAPI2_TraceEnable(bo_bool benable)
Enable the BGAPI Trace.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetDefinesPayloadSize(BGAPI2_DataStream *data_stream, bo_bool *defines_payload_size)
Returns the size of the expecting data block of this DataStream object in bytes.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Interface_GetID(BGAPI2_Interface *iface, char *ID, bo_uint64 *string_length)
Returns the identifier of the interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetNumSystems(bo_uint *count)
Returns the number of systems (GenTL Producers) found by BGAPI2_UpdateSystemList()
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetDataStream(BGAPI2_Device *device, bo_uint index, BGAPI2_DataStream **data_stream)
Returns a pointer to the data stream handle identified by index.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_Close(BGAPI2_System *system)
Closes a system (producer), you need to call BGAPI2_ReleaseSystem to unload the library.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetIntMax(BGAPI2_Node *node, bo_int64 *max)
Returns the maximum integer value of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ReleaseSystem(BGAPI2_System *system)
Release a system (GenTL producer) specified. You need to call BGAPI2_System_Close first!
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetAvailable(BGAPI2_Node *node, bo_bool *is_available)
Returns the availability state of node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Node_GetRepresentation(BGAPI2_Node *node, char *representation, bo_uint64 *string_length)
Returns the representation of the node.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetNode(BGAPI2_DeviceEvent *device_event, const char *name, BGAPI2_Node **node)
Gets the named node of given map of interface.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_GetEnv(char *producer_path, bo_uint64 *string_length)
Get the value of the GENICAM_GENTL_PATHxx environment variable.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_SetEnv(const char *producer_path)
Sets the GENICAM_GENTL_PATHxx environment variable with given value.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetPayloadSize(BGAPI2_DataStream *data_stream, bo_uint64 *payload_size)
Returns the size of the expected data block of this DataStream object in bytes.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetUpdateNode(BGAPI2_Device *device, const char *name, BGAPI2_Node **node)
Get the named node of the device.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_ImageProcessor_GetNode(BGAPI2_ImageProcessor *img_proc, const char *name, BGAPI2_Node **node)
Get the named node of given map of image processor.
Enum value AOP - Angle of polarization.
Definition: bgapi2_genicam.h:3555
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetNumQueued(BGAPI2_DataStream *data_stream, bo_uint64 *num_queued)
Returns the number of queued buffer of datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetVersion(BGAPI2_System *system, char *version, bo_uint64 *string_length)
Returns the version of the system (GenTL producer)
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetIsIncomplete(BGAPI2_Buffer *buffer, bo_bool *is_incomplete)
Returns the flag for incomplete data of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetParent(BGAPI2_Buffer *buffer, BGAPI2_DataStream **parent)
Returns the parent object (data stream) which belongs to.
Enum value Pol90Deg - The polarization information 90 degrees.
Definition: bgapi2_genicam.h:3561
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_PnPEvent_GetSerialNumber(BGAPI2_PnPEvent *pnp_event, char *serial_number, bo_uint64 *string_length)
Returns the serial number of pnp event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DeviceEvent_GetDisplayName(BGAPI2_DeviceEvent *device_event, char *display_name, bo_uint64 *string_length)
Returns the "user friendly" display name of device event.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Buffer_GetWidth(BGAPI2_Buffer *buffer, bo_uint64 *width)
Returns the width (in pixel) of buffer.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_System_GetID(BGAPI2_System *system, char *ID, bo_uint64 *string_length)
Returns the identifier of the system (GenTL producer).
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_DataStream_GetIsGrabbing(BGAPI2_DataStream *data_stream, bo_bool *is_grabbing)
Returns the flag for started datastream.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Device_GetID(BGAPI2_Device *device, char *ID, bo_uint64 *string_length)
Returns the identifier of device, can be called on a device which is not open.
BGAPI2_C_DECL BGAPI2_RESULT BGAPI2CALL BGAPI2_Image_GetPixelformat(BGAPI2_Image *image, char *pixelformat, bo_uint64 *string_length)
Get the image pixelformat from given image.