00001
00083 #if !defined(AFX_DSWCOPENAPICLASS_H__FA113574_CAE3_4C13_86F6_152DB355E199__INCLUDED_)
00084 #define AFX_DSWCOPENAPICLASS_H__FA113574_CAE3_4C13_86F6_152DB355E199__INCLUDED_
00085
00086 #ifdef DSWCOPEN_EXPORTS
00087 #define DSWCOPEN_API __declspec(dllexport)
00088 #else
00089 #define DSWCOPEN_API __declspec(dllimport)
00090 #endif
00091
00092
00093 #if _MSC_VER > 1000
00094 #pragma once
00095 #endif // _MSC_VER > 1000
00096
00097
00098 class CCameras;
00099
00100 class DSWCOPEN_API CDSwcOpenAPIclass
00101 {
00102 public:
00103 CDSwcOpenAPIclass();
00104 virtual ~CDSwcOpenAPIclass();
00105
00107 public:
00109 enum EKnownChipsetCat
00110 {
00111 CC_Unknown = 0,
00112 CC_SAA8112 = 1,
00113 CC_SAA8116 = 3,
00114 CC_CREALIVEULTRA = 4,
00115 CC_LOGIFUSION = 5,
00116 };
00117
00119 enum EVidCapPropertySupport
00120 {
00121 PS_no = 0,
00122 PS_get = 1,
00123 PS_set = 2,
00124 PS_both = 3
00125 };
00126
00128 enum EVidCapProperty
00129 {
00131 CP_FirstElement = 0,
00132
00139
00140 CP_Brightness = CP_FirstElement,
00141
00143 CP_Contrast = 1,
00144
00146 CP_Hue = 2,
00147
00149 CP_Saturation = 3,
00150
00152 CP_Sharpness = 4,
00153
00155 CP_Gamma = 5,
00156
00159 CP_ColorEnable = 6,
00160
00162 CP_WhiteBalance = 7,
00163
00166 CP_BacklightCompensation = 8,
00167
00169
00172 CP_WhiteBalanceMode = 9,
00173
00175 CP_WhiteBalRed = 10,
00176
00178 CP_WhiteBalBlue = 11,
00179
00182 CP_FlickerFree = 12,
00184 CP_Flicker50_60 = 13,
00185
00188 CP_FPS = 14,
00189
00192 CP_Exposure = 15,
00193
00195 CP_Gain = 16,
00196
00199 CP_FlipHorizontal = 17,
00200 CP_FlipVertical = 18,
00201
00204 CP_AutoExposure = 19,
00205 CP_AutoAll = 20,
00206
00208
00210 CP_ActualFrameRate = 21,
00211
00213
00216 CP_LED = 22,
00217
00220 CP_Setting = 23,
00221
00223 CP_ExtTrigger = 24,
00224 CP_SWTrigger = 25,
00225
00226 CP_Pan = 26,
00227 CP_Tilt = 27,
00228 CP_Roll = 28,
00229 CP_Zoom = 29,
00230 CP_Iris = 30,
00231 CP_Focus = 31,
00232 CP_LastElement = CP_Focus,
00233 };
00234
00236 public:
00238
00243 bool EnumCams();
00244
00245
00252 void GetCamStrings(char *(*camNames[]), unsigned int *numCamNames);
00253
00261 void GetDevStrings(char *(*devNames[]), unsigned int *numDevNames);
00262
00270 void GetCamSerials(char *(*camSerials[]), unsigned int *numCamSerials);
00271
00277 bool SetCam(int camNumber);
00278
00279
00285 bool CamProperty_Support(EVidCapProperty prop, EVidCapPropertySupport *pValue);
00286
00287
00293 bool CamProperty_Range(EVidCapProperty prop, long *pMin, long *pMax, long *pDelta);
00294
00295
00301 bool CamProperty_Set(EVidCapProperty prop, long value);
00302
00303
00309 bool CamProperty_Get(EVidCapProperty prop, long *pValue);
00310
00315 bool CamChipset(EKnownChipsetCat *pValue);
00316
00317 inline char *ErrString() {return m_errString;};
00318 int DllUsers();
00319
00320 private:
00321 char m_errString[512];
00322 CCameras *m_cameras;
00323
00324
00325 };
00326
00327
00328 #endif // !defined(AFX_DSWCOPENAPICLASS_H__FA113574_CAE3_4C13_86F6_152DB355E199__INCLUDED_)