00001
00023 #ifndef PFGRAB_H
00024 #define PFGRAB_H
00025
00026 #ifdef PFGRAB_EXPORTS
00027 #ifdef __cplusplus
00028 extern "C"
00029 #define PFGRAB_API extern "C" __declspec(dllexport)
00030 #else
00031 #define PFGRAB_API __declspec(dllexport)
00032 #endif
00033
00034 #else
00035 #ifdef __cplusplus
00036 #define PFGRAB_API extern "C" __declspec(dllimport)
00037 #else
00038 #define PFGRAB_API __declspec(dllimport)
00039 #endif
00040 #endif
00041
00042 #include <stdio.h>
00043 #include <string>
00044
00045 enum PFGRAB_ERROR
00046 {
00047
00048 PFGRAB_ERROR_OK = 0,
00049
00050
00051 PFGRAB_ERROR_UNKNOWN = -1,
00052
00053
00054 PFGRAB_ERROR_MEMORY = -2,
00055
00056
00057 PFGRAB_ERROR_INVALID_FILE = -5,
00058
00059
00060 PFGRAB_ERROR_FRAME_GRABBER_NOT_STARTED = -8,
00061
00062
00063 PFGRAB_ERROR_FRAME_GRABBER_STOPPED = -9,
00064
00065
00066 PFGRAB_ERROR_INVALID_AREA = -10,
00067
00068
00069 PFGRAB_ERROR_TIMEOUT = -16,
00070
00071
00072 PFGRAB_ERROR_FRAME_GRABBER_UNKNOWN = -18,
00073 };
00074
00075
00076 using namespace std;
00077
00092 PFGRAB_API void* pfGrab_InitFG (int port, const char *fgName, const char *param);
00093
00111 PFGRAB_API long pfGrab_SetSize (void *driverData, long *width, long *height);
00112
00123 PFGRAB_API long pfGrab_StartGrab (void * driverData);
00124
00145 PFGRAB_API long pfGrab_Wait (void * driverData, long timeout);
00146
00147
00165 PFGRAB_API void* pfGrab_GetImage (void * driverData, void* buffer, long* bufferSize);
00166
00167
00179 PFGRAB_API long pfGrab_StopGrab(void *driverData);
00180
00181
00191 PFGRAB_API void pfGrab_ReleaseFG (void * driverData);
00192
00193 #endif