Bioptic Color Camera SDK COM Wrapper  1.0
All Classes Functions Variables Properties Pages
camera_sdk.idl
1 // camera_sdk.idl : IDL source for camera_sdk
2 //
3 
11 // This file will be processed by the MIDL tool to
12 // produce the type library (camera_sdk.tlb) and marshalling code.
13 
14 import "oaidl.idl";
15 import "ocidl.idl";
16 
17 //====================================================================
21 typedef
22 [
23  uuid(E7FAF7A2-1F7A-4DC9-9D29-31222B98AD99),
24  version(1.0),
25 
26  helpstring("FrameTypeInfo structure")
27 ]
28 struct FrameTypeInfo {
29  [helpstring("Raw video format")] long format;
30  [helpstring("Width of the image")] long width;
31  [helpstring("Height of the image")] long height;
32  [helpstring("Frame rate of the continuous image stream")] long frame_rate;
35 //====================================================================
36 
37 
41 [
42  object,
43  uuid(B76B3BD4-FAB0-4006-A97B-EF6878D6AE18),
44  dual,
45  nonextensible,
46  pointer_default(unique)
47 ]
48 interface ICamera : IDispatch{
49 
54  [id(1)] HRESULT EnumerateDevices([out] SAFEARRAY(VARIANT)* device_ids);
55 
60  [id(2), helpstring("method Open")] HRESULT Open([in] BSTR deviceID);
61 
65  [id(3), helpstring("method Close")] HRESULT Close();
66 
71  [id(4), helpstring("method SetVideoMode")] HRESULT SetVideoMode([in] INT value);
72 
77  [id(5), helpstring("method GetVideoMode")] HRESULT GetVideoMode([out] INT* value);
78 
83  [id(6), helpstring("method SetIlluminationMode")] HRESULT SetIlluminationMode([in] INT value);
84 
89  [id(7), helpstring("method GetIlluminationMode")] HRESULT GetIlluminationMode([out] INT* value);
90 
91 
96  [id(8), helpstring("method SetFrameType")] HRESULT SetFrameType([in] FrameTypeInfo* value);
97 
102  [id(9), helpstring("method GetSupportedFrameTypes")] HRESULT GetSupportedFrameTypes([out] SAFEARRAY(FrameTypeInfo)* value);
103 
109  [id(10), helpstring("method GetBrightness")] HRESULT GetBrightness([out] INT* value, [out] BOOL* isAutoEnabled);
110 
116  [id(11), helpstring("method SetBrightness")] HRESULT SetBrightness([in] INT value, [in] BOOL isAutoEnabled);
117 
125  [id(12), helpstring("method GetBrightnessInfo")] HRESULT GetBrightnessInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
126 
132  [id(13), helpstring("method GetContrast")] HRESULT GetContrast([out] INT* value, [out] BOOL* isAutoEnabled);
133 
139  [id(14), helpstring("method SetContrast")] HRESULT SetContrast([in] INT value, [in] BOOL isAutoEnabled);
140 
148  [id(15), helpstring("method GetContrastInfo")] HRESULT GetContrastInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
149 
155  [id(16), helpstring("method GetSaturation")] HRESULT GetSaturation([out] INT* value, [out] BOOL* isAutoEnabled);
156 
162  [id(17), helpstring("method SetSaturation")] HRESULT SetSaturation([in] INT value, [in] BOOL isAutoEnabled);
163 
171  [id(18), helpstring("method GetSaturationInfo")] HRESULT GetSaturationInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
172 
178  [id(19), helpstring("method GetSharpness")] HRESULT GetSharpness([out] INT* value, [out] BOOL* isAutoEnabled);
179 
185  [id(20), helpstring("method SetSharpness")] HRESULT SetSharpness([in] INT value, [in] BOOL isAutoEnabled);
186 
194  [id(21), helpstring("method GetSharpnessInfo")] HRESULT GetSharpnessInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
195 
201  [id(22), helpstring("method GetGamma")] HRESULT GetGamma([out] INT* value, [out] BOOL* isAutoEnabled);
202 
208  [id(23), helpstring("method SetGamma")] HRESULT SetGamma([in] INT value, [in] BOOL isAutoEnabled);
209 
217  [id(24), helpstring("method GetGammaInfo")] HRESULT GetGammaInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
218 
224  [id(25), helpstring("method GetBacklight")] HRESULT GetBacklight([out] INT* value, [out] BOOL* isAutoEnabled);
225 
231  [id(26), helpstring("method SetBacklight")] HRESULT SetBacklight([in] INT value, [in] BOOL isAutoEnabled);
232 
240  [id(27), helpstring("method GetBacklightInfo")] HRESULT GetBacklightInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
241 
247  [id(28), helpstring("method GetGain")] HRESULT GetGain([out] INT* value, [out] BOOL* isAutoEnabled);
248 
254  [id(29), helpstring("method SetGain")] HRESULT SetGain([in] INT value, [in] BOOL isAutoEnabled);
255 
263  [id(30), helpstring("method GetGainInfo")] HRESULT GetGainInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
264 
270  [id(31), helpstring("method GetExposure")] HRESULT GetExposure([out] INT* value, [out] BOOL* isAutoEnabled);
271 
277  [id(32), helpstring("method SetExposure")] HRESULT SetExposure([in] INT value, [in] BOOL isAutoEnabled);
278 
286  [id(33), helpstring("method GetExposureInfo")] HRESULT GetExposureInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
287 
293  [id(34), helpstring("method GetWhiteBalance")] HRESULT GetWhiteBalance([out] INT* value, [out] BOOL* isAutoEnabled);
294 
300  [id(35), helpstring("method SetWhiteBalance")] HRESULT SetWhiteBalance([in] INT value, [in] BOOL isAutoEnabled);
301 
309  [id(36), helpstring("method GetWhiteBalanceInfo")] HRESULT GetWhiteBalanceInfo([out] INT* min, [out] INT* max, [out] INT* defaultValue, [out] INT* step, [out] BOOL* isAutoSupported);
310 
314  [id(37), helpstring("method CancelFirmwareDownload")] HRESULT CancelFirmwareDownload();
315 
320  [id(38), helpstring("method GetCurrentFrameType)")] HRESULT GetCurrentFrameType([out] FrameTypeInfo* value);
321 
326  [id(40), helpstring("method SetImageType)")] HRESULT SetImageType([in] INT imageStreamType);
327 
332  [id(41), helpstring("method GetImageType)")] HRESULT GetImageType([out] INT* imageStreamType);
333 
338  [id(42), helpstring("method RebootCamera)")] HRESULT RebootCamera([in] INT timeout);
339 
343  [id(43), helpstring("method SetDefaults)")] HRESULT SetDefaults();
344 
348  [id(45), helpstring("method WriteToFlash)")] HRESULT WriteToFlash();
349 
358  [id(46), helpstring("method CaptureSnapshot)")] HRESULT CaptureSnapshot([in, out] SAFEARRAY(BYTE)* imageBuffer, [out] LONG* length, [out] LONG* width, [out] LONG* height, [out] LONG* imageType);
359 
360 
365  [id(47), helpstring("method RegisterForContinuousImageEvent)")] HRESULT RegisterForContinuousImageEvent([in] BOOL bReg);
366 
371  [id(48), helpstring("method RegisterForSnapshotImageEvent)")] HRESULT RegisterForSnapshotImageEvent([in] BOOL bReg);
372 
377  [id(49), helpstring("method RegisterForProduceImageEvent)")] HRESULT RegisterForProduceImageEvent([in] BOOL bReg);
378 
383  [id(50), helpstring("method RegisterForDecodeImageEvent)")] HRESULT RegisterForDecodeImageEvent([in] BOOL bReg);
384 
389  [id(51), helpstring("method RegisterForDecodeSessionStatusChangeEvent)")] HRESULT RegisterForDecodeSessionStatusChangeEvent([in] BOOL bReg);
390 
391  // Properties ----------------------------------------------------------------------------
392 
397  [propget, id(52), helpstring("property SerialNumber")] HRESULT SerialNumber([out, retval] BSTR* pVal);
398 
403  [propget, id(53), helpstring("property ModelNumber")] HRESULT ModelNumber([out, retval] BSTR* pVal);
404 
409  [propget, id(54), helpstring("property DateOfManufacture")] HRESULT DateOfManufacture([out, retval] BSTR* pVal);
410 
415  [propget, id(55), helpstring("property DateOfService")] HRESULT DateOfService([out, retval] BSTR* pVal);
416 
421  [propget, id(56), helpstring("property DateOfFirstProgram")] HRESULT DateOfFirstProgram([out, retval] BSTR* pVal);
422 
423 
428  [propget, id(57), helpstring("property FirmwareVersion")] HRESULT FirmwareVersion([out, retval] BSTR* pVal);
429 
430 
435  [propget, id(58), helpstring("property HardwareVersion")] HRESULT HardwareVersion([out, retval] BSTR* pVal);
436 
441  [propget, id(59), helpstring("property last_error")] HRESULT LastError([out, retval] BSTR* pVal);
442 
447  [id(60), helpstring("method DownloadFirmware)")] HRESULT DownloadFirmware([in] BSTR val);
448 
452  [id(61), helpstring("method InstallFirmware)")] HRESULT InstallFirmware();
453 
458  [id(62), helpstring("method RegisterForFirmwareDownloadProgressEvents)")] HRESULT RegisterForFirmwareDownloadProgressEvents([in] BOOL bReg);
459 
464  [id(63), helpstring("method GetPowerUserMode")] HRESULT GetPowerUserMode([out] INT* value);
465 
470  [id(64), helpstring("method SetPowerUserMode")] HRESULT SetPowerUserMode([in] INT value);
471 
476  [id(65), helpstring("method LoadConfiguration")] HRESULT LoadConfiguration([in] BSTR configuration_xml);
477 
482  [id(66), helpstring("method LoadConfigurationFromFile")] HRESULT LoadConfigurationFromFile([in] BSTR configuration_file_path);
483 
488  [id(67), helpstring("method RetrieveConfiguration")] HRESULT RetrieveConfiguration([out] BSTR* configuration_xml);
489 
494  [id(68), helpstring("method RetrieveConfigurationToFile")] HRESULT RetrieveConfigurationToFile([in] BSTR configuration_file_path);
495 
503  [id(69), helpstring("method GetVersion")] HRESULT GetVersion([out] INT* version_major, [out] INT* version_minor, [out] INT* version_patch, [out] INT* version_build);
504 
505 
506 
507 };
508 [
509  uuid(A5E7F904-D85D-4D3E-A032-98243268B0F4),
510  helpstring("Bioptic Color Camera 1.0 Type Library"),
511  version(1.0),
512 ]
513 library BiopticColorCamera
514 {
515  importlib("stdole2.tlb");
516  [
517  uuid(96C73DAA-525C-44B2-BBB9-3E273980690A)
518  ]
519  dispinterface _ICameraEvents
520  {
521  properties:
522  methods:
523 
532  [id(1), helpstring("method OnContinuousImageEvent")] HRESULT OnContinuousImageEvent([in,out] VARIANT* imageBuffer, LONG length, LONG width, LONG height, LONG imageType);
533 
542  [id(2), helpstring("method OnSnapshotImageEvent")] HRESULT OnSnapshotImageEvent([in] VARIANT* imageBuffer, LONG length, LONG width, LONG height, LONG imageType);
543 
552  [id(3), helpstring("method OnProduceImageEvent")] HRESULT OnProduceImageEvent([in] VARIANT* imageBuffer, LONG length, LONG width, LONG height, LONG imageType);
553 
563  [id(6), helpstring("method OnDecodeImageEvent")] HRESULT OnDecodeImageEvent([in] VARIANT* imageBuffer, LONG length, LONG width, LONG height, LONG imageType, BSTR decodeData);
564 
569  [id(8), helpstring("method OnDecodeSessionStatusChangeEvent")] HRESULT OnDecodeSessionStatusChangeEvent(INT session_status);
570 
575  [id(4), helpstring("method OnDeviceAddedEvent")] HRESULT OnDeviceAddedEvent(BSTR deviceID);
576 
581  [id(5), helpstring("method OnDeviceRemovedEvent")] HRESULT OnDeviceRemovedEvent(BSTR deviceID);
582 
591  [id(7), helpstring("method OnFirmwareDownloadProgressEvent")] HRESULT OnFirmwareDownloadProgressEvent(BSTR serial, BSTR model, LONG total_records, LONG current_record, LONG operation_code, LONG status);
592 
593  };
594  [
595  uuid(85FC1DF1-D1CC-4290-934C-07D72ED5B740)
596  ]
597  coclass Camera
598  {
599  [default] interface ICamera;
600  [default, source] dispinterface _ICameraEvents;
601  };
602 };
603 
HRESULT WriteToFlash()
Write parameter values to flash memory. Once called this method the current parameter values will be ...
HRESULT GetSharpness([out] INT *value, [out] BOOL *isAutoEnabled)
Get Sharpness.
HRESULT EnumerateDevices([out] SAFEARRAY(VARIANT) *device_ids)
Enumerate already connected camera devices.
HRESULT CancelFirmwareDownload()
Cancel firmware download.
HRESULT SetFrameType([in] FrameTypeInfo *value)
Sets the frame type of the camera.
long height
Definition: camera_sdk.idl:31
FrameTypeInfo Holds the information about image frame type the color camera generates.
Definition: camera_sdk.idl:28
HRESULT GetSaturationInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get SaturationInfo.
HRESULT RetrieveConfiguration([out] BSTR *configuration_xml)
Retrieve the camera configuration as an XML stored in BSTR.
HRESULT Close()
Close the currently opened camera.
HRESULT GetExposure([out] INT *value, [out] BOOL *isAutoEnabled)
Get Exposure.
HRESULT SetBrightness([in] INT value, [in] BOOL isAutoEnabled)
Set Brightness.
HRESULT RegisterForSnapshotImageEvent([in] BOOL bReg)
HRESULT GetIlluminationMode([out] INT *value)
Get the illumination mode.
HRESULT SetPowerUserMode([in] INT value)
Sets the Power user mode.
HRESULT GetBrightness([out] INT *value, [out] BOOL *isAutoEnabled)
Get Brightness.
BSTR SerialNumber
Serial Number.
HRESULT RegisterForContinuousImageEvent([in] BOOL bReg)
Register for continuous Image Event.
HRESULT RegisterForFirmwareDownloadProgressEvents([in] BOOL bReg)
Register / unregister for firmware download events.
HRESULT InstallFirmware()
Installs the downloaded firmware on device.
HRESULT GetContrast([out] INT *value, [out] BOOL *isAutoEnabled)
Get Contrast.
HRESULT RegisterForDecodeSessionStatusChangeEvent([in] BOOL bReg)
Register for Decode Session Status Change Event.
HRESULT SetDefaults()
Set values of the parameters to their default values.
HRESULT LoadConfiguration([in] BSTR configuration_xml)
Load configurations to the camera.
HRESULT GetExposureInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get ExposureInfo.
HRESULT GetVersion([out] INT *version_major, [out] INT *version_minor, [out] INT *version_patch, [out] INT *version_build)
Provides the SDK version.
BSTR FirmwareVersion
Return camera firmware version.
HRESULT GetSharpnessInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get SharpnessInfo.
HRESULT SetIlluminationMode([in] INT value)
Sets the illumination mode.
HRESULT GetGamma([out] INT *value, [out] BOOL *isAutoEnabled)
HRESULT DownloadFirmware([in] BSTR val)
Download firmware.
HRESULT SetExposure([in] INT value, [in] BOOL isAutoEnabled)
Set Exposure.
Definition: camera_sdk.idl:597
HRESULT RegisterForProduceImageEvent([in] BOOL bReg)
Register for Produce Image Event.
HRESULT SetVideoMode([in] INT value)
Sets the video mode.
BSTR DateOfFirstProgram
Date Of First Program.
Definition: camera_sdk.idl:519
BSTR DateOfManufacture
Date Of Manufacture.
HRESULT SetBacklight([in] INT value, [in] BOOL isAutoEnabled)
Set BacklightCompensation.
BSTR DateOfService
Date Of Service.
BSTR HardwareVersion
Return camera hardware version.
HRESULT GetGainInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get GainInfo.
HRESULT GetImageType([out] INT *imageStreamType)
Get the currently selected output image stream format (BMP or JPEG)
HRESULT GetSupportedFrameTypes([out] SAFEARRAY(FrameTypeInfo) *value)
Get list of supported FrameTypeInfo array.
HRESULT GetContrastInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get ContrastInfo.
HRESULT SetContrast([in] INT value, [in] BOOL isAutoEnabled)
Set Contrast.
HRESULT CaptureSnapshot([in, out] SAFEARRAY(BYTE) *imageBuffer, [out] LONG *length, [out] LONG *width, [out] LONG *height, [out] LONG *imageType)
Capture Snapshot.
long width
Definition: camera_sdk.idl:30
HRESULT RetrieveConfigurationToFile([in] BSTR configuration_file_path)
Save the camera configuration to a file.
BSTR ModelNumber
Model Number.
long format
Definition: camera_sdk.idl:29
HRESULT GetBacklightInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get BackLightCompensationInfo.
HRESULT GetPowerUserMode([out] INT *value)
Get the Power user mode.
BSTR LastError
Last Error.
HRESULT Open([in] BSTR deviceID)
Open the camera with provides device_id.
HRESULT GetWhiteBalanceInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get WhiteBalanceComponentInfo.
HRESULT RebootCamera([in] INT timeout)
Reboots the camera.
ICamera interface represents a Biotic Color Camera and its functionality.
Definition: camera_sdk.idl:48
HRESULT SetSharpness([in] INT value, [in] BOOL isAutoEnabled)
Set Sharpness.
HRESULT RegisterForDecodeImageEvent([in] BOOL bReg)
Register for Decode Image Event.
HRESULT LoadConfigurationFromFile([in] BSTR configuration_file_path)
Load configuration from a bcccfg file.
HRESULT GetVideoMode([out] INT *value)
HRESULT SetSaturation([in] INT value, [in] BOOL isAutoEnabled)
Set Saturation.
HRESULT SetGain([in] INT value, [in] BOOL isAutoEnabled)
HRESULT GetBrightnessInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get BrightnessInfo.
HRESULT SetWhiteBalance([in] INT value, [in] BOOL isAutoEnabled)
HRESULT GetGammaInfo([out] INT *min, [out] INT *max, [out] INT *defaultValue, [out] INT *step, [out] BOOL *isAutoSupported)
Get GammaInfo.
HRESULT SetImageType([in] INT imageStreamType)
Set the output image stream format (BMP or JPEG)
HRESULT SetGamma([in] INT value, [in] BOOL isAutoEnabled)
Set Gamma.
HRESULT GetWhiteBalance([out] INT *value, [out] BOOL *isAutoEnabled)
Get WhiteBalanceComonent.
HRESULT GetBacklight([out] INT *value, [out] BOOL *isAutoEnabled)
Get BacklightCompensation.
HRESULT GetSaturation([out] INT *value, [out] BOOL *isAutoEnabled)
Get Saturation.
HRESULT GetCurrentFrameType([out] FrameTypeInfo *value)
Get the active frame type of the camera.
HRESULT GetGain([out] INT *value, [out] BOOL *isAutoEnabled)
Get Gain.
long frame_rate
Definition: camera_sdk.idl:32