85 #ifndef GC_TLI_CLIENT_H_ 86 #define GC_TLI_CLIENT_H_ 1 88 #ifndef GC_USER_DEFINED_TYPES 92 # if defined(_MSC_VER) && _MSC_VER >= 1600 94 # elif !defined _STDINT_H && !defined _STDINT 96 typedef unsigned char uint8_t;
97 typedef __int32 int32_t;
98 typedef unsigned __int32 uint32_t;
99 typedef unsigned __int64 uint64_t;
117 # ifndef GCTLI_NO_DECLSPEC_STATEMENTS 119 # define GC_IMPORT_EXPORT __declspec(dllexport) 121 # define GC_IMPORT_EXPORT __declspec(dllimport) 124 # define GC_IMPORT_EXPORT 126 # if defined (_M_IX86) || defined (__i386__) 127 # define GC_CALLTYPE __stdcall 132 # define EXTERN_C extern "C" 135 #elif defined (__GNUC__) && (__GNUC__ >= 4) && (defined (__linux__) || defined (__APPLE__)) 136 # define GC_IMPORT_EXPORT __attribute__((visibility("default"))) 137 # if defined (__i386__) 138 # define GC_CALLTYPE __attribute__((stdcall)) 143 # define EXTERN_C extern "C" 147 # error Unknown platform, file needs adaption 187 # ifndef GC_GENTL_HEADER_VERSION 189 # define GenTLMajorVersion 1 190 # define GenTLMinorVersion 6 191 # define GenTLSubMinorVersion 0 193 # define GC_GENTL_HEADER_VERSION_CODE(major,minor,subminor) (((major)<<24)+((minor)<<16)+(subminor)) 194 # define GC_GENTL_HEADER_VERSION GC_GENTL_HEADER_VERSION_CODE(GenTLMajorVersion,GenTLMinorVersion,GenTLSubMinorVersion) 198 # ifndef GC_GENTL_DONT_USE_TYPE_DEFINITIONS 199 # define TLTypeMixedName "Mixed" 200 # define TLTypeCustomName "Custom" 201 # define TLTypeGEVName "GEV" 202 # define TLTypeCLName "CL" 203 # define TLTypeIIDCName "IIDC" 204 # define TLTypeUVCName "UVC" 205 # define TLTypeCXPName "CXP" 206 # define TLTypeCLHSName "CLHS" 207 # define TLTypeU3VName "U3V" 208 # define TLTypeETHERNETName "Ethernet" 209 # define TLTypePCIName "PCI" 212 # ifndef GC_GENTL_DONT_USE_MODULE_NAMES 213 # define TLSystemModuleName "TLSystem" 214 # define TLInterfaceModuleName "TLInterface" 215 # define TLDeviceModuleName "TLDevice" 216 # define TLDataStreamModuleName "TLDataStream" 217 # define TLBufferModuleName "TLBuffer" 218 # define TLRemoteDeviceModuleName "Device" 237 # define GENTL_INVALID_HANDLE NULL 238 # define GENTL_INFINITE 0xFFFFFFFFFFFFFFFFULL 639 # pragma pack (push, 1) 648 # pragma pack (push, 1) 657 # pragma pack (push, 1) 667 # pragma pack (push, 1) 679 # pragma pack (push, 1) 694 # define GC_API GC_IMPORT_EXPORT GC_ERROR GC_CALLTYPE 695 GC_API GCGetInfo ( TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
702 GC_API GCReadPort ( PORT_HANDLE hPort, uint64_t iAddress,
void *pBuffer,
size_t *piSize );
703 GC_API GCWritePort ( PORT_HANDLE hPort, uint64_t iAddress,
const void *pBuffer,
size_t *piSize );
706 GC_API GCGetPortInfo ( PORT_HANDLE hPort, PORT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
711 GC_API EventGetData ( EVENT_HANDLE hEvent,
void *pBuffer,
size_t *piSize, uint64_t iTimeout );
712 GC_API EventGetDataInfo ( EVENT_HANDLE hEvent,
const void *pInBuffer,
size_t iInSize, EVENT_DATA_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pOutBuffer,
size_t *piOutSize );
713 GC_API EventGetInfo ( EVENT_HANDLE hEvent, EVENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
719 GC_API TLGetInfo ( TL_HANDLE hTL, TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
723 GC_API TLGetInterfaceInfo ( TL_HANDLE hTL,
const char *sIfaceID, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
728 GC_API IFGetInfo ( IF_HANDLE hIface, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
731 GC_API IFGetDeviceID ( IF_HANDLE hIface, uint32_t iIndex,
char *sIDeviceID,
size_t *piSize );
733 GC_API IFGetDeviceInfo ( IF_HANDLE hIface,
const char *sDeviceID, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
734 GC_API IFOpenDevice ( IF_HANDLE hIface,
const char *sDeviceID, DEVICE_ACCESS_FLAGS iOpenFlag, DEV_HANDLE *phDevice );
740 GC_API DevGetInfo ( DEV_HANDLE hDevice, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
743 GC_API DSAnnounceBuffer ( DS_HANDLE hDataStream,
void *pBuffer,
size_t iSize,
void *pPrivate, BUFFER_HANDLE *phBuffer );
748 GC_API DSGetInfo ( DS_HANDLE hDataStream, STREAM_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
752 GC_API DSRevokeBuffer ( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer,
void **pBuffer,
void **pPrivate );
754 GC_API DSGetBufferInfo ( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, BUFFER_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
758 GC_API GCGetPortURLInfo ( PORT_HANDLE hPort, uint32_t iURLIndex, URL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
772 GC_API DSGetBufferPartInfo ( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iPartIndex, BUFFER_PART_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
775 GC_API DSAnnounceCompositeBuffer ( DS_HANDLE hDataStream,
size_t iNumSegments,
void **ppSegments,
size_t *piSizes,
void *pPrivate, BUFFER_HANDLE *phBuffer );
779 GC_API DSGetFlowInfo ( DS_HANDLE hDataStream, uint32_t iFlowIndex, FLOW_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
781 GC_API DSGetBufferSegmentInfo ( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iSegmentIndex, SEGMENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
784 # define GC_API_P(function) typedef GC_ERROR( GC_CALLTYPE *function ) 785 GC_API_P(
PGCGetInfo )( TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
789 GC_API_P(
PGCReadPort )( PORT_HANDLE hPort, uint64_t iAddress,
void *pBuffer,
size_t *piSize );
790 GC_API_P(
PGCWritePort )( PORT_HANDLE hPort, uint64_t iAddress,
const void *pBuffer,
size_t *piSize );
792 GC_API_P(
PGCGetPortInfo )( PORT_HANDLE hPort, PORT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
797 GC_API_P(
PEventGetDataInfo )( EVENT_HANDLE hEvent,
const void *pInBuffer,
size_t iInSize, EVENT_DATA_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pOutBuffer,
size_t *piOutSize );
798 GC_API_P(
PEventGetInfo )( EVENT_HANDLE hEvent, EVENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
803 GC_API_P(
PTLGetInfo )( TL_HANDLE hTL, TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
806 GC_API_P(
PTLGetInterfaceInfo )( TL_HANDLE hTL,
const char *sIfaceID, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
810 GC_API_P(
PIFGetInfo )( IF_HANDLE hIface, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
814 GC_API_P(
PIFGetDeviceInfo )( IF_HANDLE hIface,
const char *sDeviceID, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
815 GC_API_P(
PIFOpenDevice )( IF_HANDLE hIface,
const char *sDeviceID, DEVICE_ACCESS_FLAGS iOpenFlag, DEV_HANDLE *phDevice );
821 GC_API_P(
PDevGetInfo )( DEV_HANDLE hDevice, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
824 GC_API_P(
PDSAnnounceBuffer )( DS_HANDLE hDataStream,
void *pBuffer,
size_t iSize,
void *pPrivate, BUFFER_HANDLE *phBuffer );
829 GC_API_P(
PDSGetInfo )( DS_HANDLE hDataStream, STREAM_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
834 GC_API_P(
PDSGetBufferInfo )( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, BUFFER_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
838 GC_API_P(
PGCGetPortURLInfo )( PORT_HANDLE hPort, uint32_t iURLIndex, URL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
852 GC_API_P(
PDSGetBufferPartInfo )( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iPartIndex, BUFFER_PART_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
859 GC_API_P(
PDSGetFlowInfo )( DS_HANDLE hDataStream, uint32_t iFlowIndex, FLOW_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
861 GC_API_P(
PDSGetBufferSegmentInfo )( DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iSegmentIndex, SEGMENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType,
void *pBuffer,
size_t *piSize );
struct S_EVENT_NEW_BUFFER EVENT_NEW_BUFFER_DATA
GC_API_P() PDevGetPort(DEV_HANDLE hDevice, PORT_HANDLE *phRemoteDevice)
GC_API EventKill(EVENT_HANDLE hEvent)
int32_t BUFFER_PART_INFO_CMD
#define GC_API_P(function)
GC_API_P() PTLGetNumInterfaces(TL_HANDLE hTL, uint32_t *piNumIfaces)
GC_API DSRevokeBuffer(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, void **pBuffer, void **pPrivate)
GC_API_P() PDevGetNumDataStreams(DEV_HANDLE hDevice, uint32_t *piNumDataStreams)
GC_API TLGetNumInterfaces(TL_HANDLE hTL, uint32_t *piNumIfaces)
GC_API_P() PDSQueueBuffer(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer)
int32_t PAYLOADTYPE_INFO_ID
GC_API_P() PDSGetBufferChunkData(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, SINGLE_CHUNK_DATA *pChunkData, size_t *piNumChunks)
GC_API GCGetPortURLInfo(PORT_HANDLE hPort, uint32_t iURLIndex, URL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PTLGetInterfaceID(TL_HANDLE hTL, uint32_t iIndex, char *sID, size_t *piSize)
GC_API_P() PGCRegisterEvent(EVENTSRC_HANDLE hEventSrc, EVENT_TYPE iEventID, EVENT_HANDLE *phEvent)
GC_API DSQueueBuffer(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer)
GC_API IFGetDeviceInfo(IF_HANDLE hIface, const char *sDeviceID, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PDSGetBufferInfoStacked(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, DS_BUFFER_INFO_STACKED *pInfoStacked, size_t iNumInfos)
GC_API_P() PEventGetData(EVENT_HANDLE hEvent, void *pBuffer, size_t *piSize, uint64_t iTimeout)
GC_API_P() PDSClose(DS_HANDLE hDataStream)
GC_API_P() PIFUpdateDeviceList(IF_HANDLE hIface, bool8_t *pbChanged, uint64_t iTimeout)
GC_API_P() PDSGetNumBufferParts(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t *piNumParts)
GC_API_P() PDSGetNumFlows(DS_HANDLE hDataStream, uint32_t *piNumFlows)
GC_API_P() PGCReadPortStacked(PORT_HANDLE hPort, PORT_REGISTER_STACK_ENTRY *pEntries, size_t *piNumEntries)
int32_t DEVICE_ACCESS_FLAGS
GC_API_P() PEventGetInfo(EVENT_HANDLE hEvent, EVENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PGCGetPortURL(PORT_HANDLE hPort, char *sURL, size_t *piSize)
GC_API_P() PDSGetInfo(DS_HANDLE hDataStream, STREAM_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSGetBufferChunkData(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, SINGLE_CHUNK_DATA *pChunkData, size_t *piNumChunks)
GC_API_P() PEventFlush(EVENT_HANDLE hEvent)
GC_API GCGetPortInfo(PORT_HANDLE hPort, PORT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PDSGetBufferSegmentInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iSegmentIndex, SEGMENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API GCWritePort(PORT_HANDLE hPort, uint64_t iAddress, const void *pBuffer, size_t *piSize)
GC_API_P() PDSGetNumBufferSegments(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t *piNumSegments)
GC_API TLGetInterfaceInfo(TL_HANDLE hTL, const char *sIfaceID, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API TLGetInfo(TL_HANDLE hTL, TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PGCInitLib(void)
GC_API GCGetInfo(TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PGCGetPortInfo(PORT_HANDLE hPort, PORT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSGetBufferPartInfoStacked(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, DS_BUFFER_PART_INFO_STACKED *pInfoStacked, size_t iNumInfos)
GC_API_P() PGCUnregisterEvent(EVENTSRC_HANDLE hEventSrc, EVENT_TYPE iEventID)
GC_API DSGetBufferInfoStacked(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, DS_BUFFER_INFO_STACKED *pInfoStacked, size_t iNumInfos)
GC_API IFGetDeviceID(IF_HANDLE hIface, uint32_t iIndex, char *sIDeviceID, size_t *piSize)
GC_API_P() PTLGetInterfaceInfo(TL_HANDLE hTL, const char *sIfaceID, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API GCGetNumPortURLs(PORT_HANDLE hPort, uint32_t *piNumURLs)
struct S_DS_BUFFER_INFO_STACKED DS_BUFFER_INFO_STACKED
GC_API_P() PTLClose(TL_HANDLE hTL)
GC_API_P() PTLOpen(TL_HANDLE *phTL)
GC_API_P() PDSStopAcquisition(DS_HANDLE hDataStream, ACQ_STOP_FLAGS iStopFlags)
GC_API_P() PGCGetInfo(TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API TLClose(TL_HANDLE hTL)
GC_API TLGetInterfaceID(TL_HANDLE hTL, uint32_t iIndex, char *sID, size_t *piSize)
GC_API_P() PDSAnnounceCompositeBuffer(DS_HANDLE hDataStream, size_t iNumSegments, void **ppSegments, size_t *piSizes, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API TLUpdateInterfaceList(TL_HANDLE hTL, bool8_t *pbChanged, uint64_t iTimeout)
int32_t EVENT_DATA_INFO_CMD
GC_API DSGetNumFlows(DS_HANDLE hDataStream, uint32_t *piNumFlows)
GC_API DevGetInfo(DEV_HANDLE hDevice, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API IFGetParentTL(IF_HANDLE hIface, TL_HANDLE *phSystem)
int32_t INTERFACE_INFO_CMD
GC_API_P() PTLGetInfo(TL_HANDLE hTL, TL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API IFUpdateDeviceList(IF_HANDLE hIface, bool8_t *pbChanged, uint64_t iTimeout)
GC_API DSGetFlowInfo(DS_HANDLE hDataStream, uint32_t iFlowIndex, FLOW_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSGetBufferInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, BUFFER_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
BUFFER_PART_INFO_CMD_LIST
GC_API_P() PIFOpenDevice(IF_HANDLE hIface, const char *sDeviceID, DEVICE_ACCESS_FLAGS iOpenFlag, DEV_HANDLE *phDevice)
GC_API_P() PDevOpenDataStream(DEV_HANDLE hDevice, const char *sDataStreamID, DS_HANDLE *phDataStream)
GC_API_P() PDevClose(DEV_HANDLE hDevice)
int32_t PIXELENDIANNESS_ID
GC_API_P() PIFGetDeviceInfo(IF_HANDLE hIface, const char *sDeviceID, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PGCWritePortStacked(PORT_HANDLE hPort, PORT_REGISTER_STACK_ENTRY *pEntries, size_t *piNumEntries)
GC_API_P() PIFGetDeviceID(IF_HANDLE hIface, uint32_t iIndex, char *sIDeviceID, size_t *piSize)
GC_API_P() PDevGetInfo(DEV_HANDLE hDevice, DEVICE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PTLUpdateInterfaceList(TL_HANDLE hTL, bool8_t *pbChanged, uint64_t iTimeout)
GC_API GCReadPort(PORT_HANDLE hPort, uint64_t iAddress, void *pBuffer, size_t *piSize)
DEVICE_ACCESS_STATUS_LIST
GC_API_P() PDSGetFlowInfo(DS_HANDLE hDataStream, uint32_t iFlowIndex, FLOW_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
struct S_SINGLE_CHUNK_DATA SINGLE_CHUNK_DATA
GC_API_P() PDSGetParentDev(DS_HANDLE hDataStream, DEV_HANDLE *phDevice)
GC_API_P() PDSGetBufferInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, BUFFER_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSGetParentDev(DS_HANDLE hDataStream, DEV_HANDLE *phDevice)
int32_t PIXELFORMAT_NAMESPACE_ID
GC_API DevGetNumDataStreams(DEV_HANDLE hDevice, uint32_t *piNumDataStreams)
GC_API_P() PDevGetDataStreamID(DEV_HANDLE hDevice, uint32_t iIndex, char *sDataStreamID, size_t *piSize)
GC_API DevGetParentIF(DEV_HANDLE hDevice, IF_HANDLE *phIface)
GC_API DSGetInfo(DS_HANDLE hDataStream, STREAM_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSFlushQueue(DS_HANDLE hDataStream, ACQ_QUEUE_TYPE iOperation)
GC_API IFClose(IF_HANDLE hIface)
GC_API DevOpenDataStream(DEV_HANDLE hDevice, const char *sDataStreamID, DS_HANDLE *phDataStream)
GC_API_P() PEventGetDataInfo(EVENT_HANDLE hEvent, const void *pInBuffer, size_t iInSize, EVENT_DATA_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pOutBuffer, size_t *piOutSize)
GC_API DSStopAcquisition(DS_HANDLE hDataStream, ACQ_STOP_FLAGS iStopFlags)
GC_API DevClose(DEV_HANDLE hDevice)
GC_API_P() PDSAnnounceBuffer(DS_HANDLE hDataStream, void *pBuffer, size_t iSize, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API GCReadPortStacked(PORT_HANDLE hPort, PORT_REGISTER_STACK_ENTRY *pEntries, size_t *piNumEntries)
GC_API_P() PDSRevokeBuffer(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, void **pBuffer, void **pPrivate)
GC_API GCGetLastError(GC_ERROR *piErrorCode, char *sErrText, size_t *piSize)
GC_API IFOpenDevice(IF_HANDLE hIface, const char *sDeviceID, DEVICE_ACCESS_FLAGS iOpenFlag, DEV_HANDLE *phDevice)
GC_API DSStartAcquisition(DS_HANDLE hDataStream, ACQ_START_FLAGS iStartFlags, uint64_t iNumToAcquire)
GC_API DSAllocAndAnnounceBuffer(DS_HANDLE hDataStream, size_t iSize, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API_P() PDevGetParentIF(DEV_HANDLE hDevice, IF_HANDLE *phIface)
GC_API GCUnregisterEvent(EVENTSRC_HANDLE hEventSrc, EVENT_TYPE iEventID)
GC_API_P() PGCGetPortURLInfo(PORT_HANDLE hPort, uint32_t iURLIndex, URL_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSGetNumBufferParts(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t *piNumParts)
GC_API_P() PDSAllocAndAnnounceBuffer(DS_HANDLE hDataStream, size_t iSize, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API TLOpenInterface(TL_HANDLE hTL, const char *sIfaceID, IF_HANDLE *phIface)
GC_API_P() PTLOpenInterface(TL_HANDLE hTL, const char *sIfaceID, IF_HANDLE *phIface)
struct S_DS_BUFFER_PART_INFO_STACKED DS_BUFFER_PART_INFO_STACKED
GC_API_P() PGCGetNumPortURLs(PORT_HANDLE hPort, uint32_t *iNumURLs)
GC_API EventFlush(EVENT_HANDLE hEvent)
GC_API_P() PGCGetLastError(GC_ERROR *piErrorCode, char *sErrText, size_t *piSize)
GC_API_P() PDSGetBufferPartInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iPartIndex, BUFFER_PART_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PDSGetBufferPartInfoStacked(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, DS_BUFFER_PART_INFO_STACKED *pInfoStacked, size_t iNumInfos)
BUFFER_PART_INFO_CMD iInfoCmd
GC_API DevGetPort(DEV_HANDLE hDevice, PORT_HANDLE *phRemoteDevice)
GC_API_P() PGCWritePort(PORT_HANDLE hPort, uint64_t iAddress, const void *pBuffer, size_t *piSize)
GC_API DSAnnounceBuffer(DS_HANDLE hDataStream, void *pBuffer, size_t iSize, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API_P() PGCCloseLib(void)
GC_API DevGetDataStreamID(DEV_HANDLE hDevice, uint32_t iIndex, char *sDataStreamID, size_t *piSize)
GC_API DSGetBufferID(DS_HANDLE hDataStream, uint32_t iIndex, BUFFER_HANDLE *phBuffer)
GC_API EventGetData(EVENT_HANDLE hEvent, void *pBuffer, size_t *piSize, uint64_t iTimeout)
GC_API EventGetInfo(EVENT_HANDLE hEvent, EVENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API IFGetNumDevices(IF_HANDLE hIface, uint32_t *piNumDevices)
GC_API_P() PDSFlushQueue(DS_HANDLE hDataStream, ACQ_QUEUE_TYPE iOperation)
GC_API TLOpen(TL_HANDLE *phTL)
GC_API DSGetNumBufferSegments(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t *piNumSegments)
BUFFER_HANDLE BufferHandle
GC_API_P() PIFGetParentTL(IF_HANDLE hIface, TL_HANDLE *phSystem)
GC_API EventGetDataInfo(EVENT_HANDLE hEvent, const void *pInBuffer, size_t iInSize, EVENT_DATA_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pOutBuffer, size_t *piOutSize)
GC_API_P() PDSStartAcquisition(DS_HANDLE hDataStream, ACQ_START_FLAGS iStartFlags, uint64_t iNumToAcquire)
struct S_PORT_REGISTER_STACK_ENTRY PORT_REGISTER_STACK_ENTRY
GC_API IFGetInfo(IF_HANDLE hIface, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API_P() PEventKill(EVENT_HANDLE hEvent)
GC_API GCWritePortStacked(PORT_HANDLE hPort, PORT_REGISTER_STACK_ENTRY *pEntries, size_t *piNumEntries)
GC_API GCRegisterEvent(EVENTSRC_HANDLE hEventSrc, EVENT_TYPE iEventID, EVENT_HANDLE *phEvent)
GC_API_P() PGCReadPort(PORT_HANDLE hPort, uint64_t iAddress, void *pBuffer, size_t *piSize)
GC_API_P() PIFClose(IF_HANDLE hIface)
GC_API DSAnnounceCompositeBuffer(DS_HANDLE hDataStream, size_t iNumSegments, void **ppSegments, size_t *piSizes, void *pPrivate, BUFFER_HANDLE *phBuffer)
GC_API DSGetBufferSegmentInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iSegmentIndex, SEGMENT_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API GCGetPortURL(PORT_HANDLE hPort, char *sURL, size_t *piSize)
GC_API DSGetBufferPartInfo(DS_HANDLE hDataStream, BUFFER_HANDLE hBuffer, uint32_t iPartIndex, BUFFER_PART_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
int32_t DEVICE_ACCESS_STATUS
GC_API_P() PIFGetInfo(IF_HANDLE hIface, INTERFACE_INFO_CMD iInfoCmd, INFO_DATATYPE *piType, void *pBuffer, size_t *piSize)
GC_API DSClose(DS_HANDLE hDataStream)
GC_API_P() PIFGetNumDevices(IF_HANDLE hIface, uint32_t *piNumDevices)
PIXELFORMAT_NAMESPACE_IDS
GC_API_P() PDSGetBufferID(DS_HANDLE hDataStream, uint32_t iIndex, BUFFER_HANDLE *phBuffer)