0% found this document useful (0 votes)
490 views

iCAM R100 Manager SDK Manual PDF

The document provides documentation on functions in the iCAM R100 Manager SDK API. It describes functions for initializing and closing the SDK connection, getting device information like serial number and version, controlling settings like volume and voice language, playing voice messages and controlling indicators, and setting enrollment quality thresholds. The functions generally take parameters like indicators or language types, and return status codes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
490 views

iCAM R100 Manager SDK Manual PDF

The document provides documentation on functions in the iCAM R100 Manager SDK API. It describes functions for initializing and closing the SDK connection, getting device information like serial number and version, controlling settings like volume and voice language, playing voice messages and controlling indicators, and setting enrollment quality thresholds. The functions generally take parameters like indicators or language types, and return status codes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

iCAM R100 Manager SDK User Manual 1

1 Application Programming Interface.

Open()
Open()

Syntax Open(void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To initialize the SDK and connect to iCAM R100.

Close()
Close()

Syntax Close(void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To disconnect the SDK from the iCAM R100.

Note This function must be called before exiting the application.


This will not trigger any “OnGetStatus” event if called directly.

GetSerialNumber()
GetSerialNumber ()

Syntax GetSerialNumber(pSerialNumber)

Argument Type Description

pSerialNumber [out] BSTR* The serial number.

Return Type Long 0 for success. Please refer appendix for error code description.

Purpose To get the serial number of the iCAM R100.


iCAM R100 Manager SDK User Manual 2

GetVersion()
GetVersion()

Syntax GetVersion(lType, pVersion)

Argument Type Description

lType [in] long The type of version information required.

- IS_DEV_VER_SDK(0)
- IS_DEV_VER_ICAMSW(1)
- IS_DEV_VER_FS(2)
- IS_DEV_VER_ICAM_CMDCENTER(3)
- IS_DEV_VER_ICAM_MANAGER(4)
- IS_DEV_VER_OS(5)
- IS_DEV_VER_LIB_CAPTURE(6)
- IS_DEV_VER_LIB_RECOG(7)
- IS_DEV_VER_LIB_EYESEEK(8)
- IS_DEV_VER_LIB_COUNTERMEASURE(9)
- IS_DEV_VER_LIB_LENS(10)
- IS_DEV_VER_LIB_TWOPI(11)

pVersion [out] BSTR* The version information of required lType.

Return Type Long 0 for success. Please refer appendix for error code description.

Purpose To get the version information of various types like software, hardware etc.

Note Can be called only when the device is in open state.

SetSoundVolume()
SetVolume()

Syntax SetSoundVolume(lVolume)

Argument Type Description

lVolume [in] long The value of sound volume of the iCAM:


- Min Volume: MIN_VOLUME_LEVEL (0)
- Max Volume: MAN_VOLUME_LEVEL (9)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set the current sound volume setting of the iCAM R100.

GetSoundVolume()
GetVolume()

Syntax GetSoundVolume(pVolume)

Argument Type Description

pVolume [out] long* The value of sound volume:


- IS_MIN_VOLUME (0)
- IS_MAX_VOLUME (9)
Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get the current sound volume setting of the iCAM R100.
iCAM R100 Manager SDK User Manual 3

SetVoiceLanguage()
SetVoiceLanguage ()

Syntax SetVoiceLanguage (lVoiceLanguageType)

Argument Type Description

lVoiceLanguageType [out] long The value of voice language type:


- IS_VOICE_LANGUAGE_OTHER(0)
- IS_VOICE_LANGUAGE_ENGLISH(1)
- IS_VOICE_LANGUAGE_KOREAN(2)
- IS_VOICE_LANGUAGE_CHINESE(3)
- IS_VOICE_LANGUAGE_SPANISH(4)
- IS_VOICE_LANGUAGE_ARABIC(5)
- IS_VOICE_LANGUAGE_PORTUGUESE(6)
- IS_VOICE_LANGUAGE_RUSSIAN(7)
- IS_VOICE_LANGUAGE_GERMAN(8)
- IS_VOICE_LANGUAGE_FRENCH(9)
- IS_VOICE_LANGUAGE_TURKISH(10)
- IS_VOICE_LANGUAGE_JAPANESE(11)
- IS_VOICE_LANGUAGE_HINDI(12)
Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set the current sound voice language setting of the iCAM R100.

GetVoiceLanguage()
GetVoiceLanguage ()

Syntax GetVoiceLanguage (pVoiceLanguageType)

Argument Type Description

plVoiceLanguageType [out] long* The value of voice language type:


- IS_VOICE_LANGUAGE_OTHER(0)
- IS_VOICE_LANGUAGE_ENGLISH(1)
- IS_VOICE_LANGUAGE_KOREAN(2)
- IS_VOICE_LANGUAGE_CHINESE(3)
- IS_VOICE_LANGUAGE_SPANISH(4)
- IS_VOICE_LANGUAGE_ARABIC(5)
- IS_VOICE_LANGUAGE_PORTUGUESE(6)
- IS_VOICE_LANGUAGE_RUSSIAN(7)
- IS_VOICE_LANGUAGE_GERMAN(8)
- IS_VOICE_LANGUAGE_FRENCH(9)
- IS_VOICE_LANGUAGE_TURKISH(10)
- IS_VOICE_LANGUAGE_JAPANESE(11)
- IS_VOICE_LANGUAGE_HINDI(12)
Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get the current sound voice language setting of the iCAM R100.
iCAM R100 Manager SDK User Manual 4

ControlIndicator()
ControlIndicator()

Syntax ControlIndicator(lVoiceMessage, lIndicatorType)

Argument Type Description

lVoiceMessage [in] long Voice Message [0 ~ 13] (refer to “Definitions” section 3.7)

lIndicatorType [in] long Indicator Type [0 ~ 6] ] (refer to “Definitions” section 3.8)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To play the voice message and to control the color indicator behind the mirror.
The indexes are predefined for iCAM R100.

SetEnrollmentQualityThreshold()
SetEnrollmentQualityThreshold()

Syntax SetEnrollmentQualityThreshold (lSingleTry, lFirstTry, lSecondTry, lThirdTry)

Argument Type Description

lSingleTry [in] long It indicates a threshold value for single try.

lFirstTry [in] long It indicates a threshold value for first try.

lSecondTry [in] long It indicates a threshold value for second try.

lThirdTry [in] long It indicates a threshold value for third try.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set the quality threshold value of iris image.

Note The minimum value for quality threshold is 60.

GetEnrollmentQualityThreshold()
GetEnrollmentQualityThreshold ()

Syntax GetEnrollmentQualityThreshold (pSingleTry, pFirstTry, pSecondTry, pThirdTry)

Argument Type Description

pSingleTry [out] long* It indicates a threshold value for single try.

pFirstTry [out] long* It indicates a threshold value for first try.

pSecondTry [out] long* It indicates a threshold value for second try.

pThirdTry [out] long* It indicates a threshold value for third try.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get the quality threshold value of iris image.


iCAM R100 Manager SDK User Manual 5

SetEnrollmentQualityType()
SetEnrollmentQualityType()

Syntax SetEnrollmentQualityType(lType)

Argument Type Description

lType [in] long - IS_QUALITY_TYPE_IMAGE (1)


- IS_QUALITY_TYPE_TYPE(2)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set the quality type of iris image.

GetEnrollmentQualityType()
GetColorEffect()

Syntax GetColorEffect(pType)

Argument Type Description

pType [out] long* - IS_QUALITY_TYPE_IMAGE (1)


- IS_QUALITY_TYPE_TYPE(2)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get the quality type of iris image.


iCAM R100 Manager SDK User Manual 6

EnrollUser()
EnrollUser()

Syntax EnrollUser (bstrUserID, lEyePosition, lFEDLevel, lLensDetectLevel, lTimeOut, lIsAuditFace, lIsLive, lIsRetry, lIsVerify)

Argument Type Description

bstrUserID [in] BSTR Unique User ID.

lEyePosition [in] long It decides which iris will be captured form enrollment.
- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)

lFEDLevel [in] long


It sets whether the countermeasure will be used or not.
- IS_FED_LEVEL_1(0)
- IS_FED_LEVEL_2(1)

lLensDetectLevel [in] long It sets the level of lens detection.


- IS_LENS_CHECK_NONE(0) : Don't check for lens.
- IS_LENS_CHECK_HARD(1) : Check only for hard lens.
- IS_LENS_CHECK_PATTERN(2) : Check only for Pattern lens.
- IS_LENS_CHECK_HARD | IS_LENS_CHECK_PATTERN : Check either
for hard lens or pattern lens.

lTimeout [in] long


It tries to capture iris images until it times out. The unit is
second ( 1 ~ 20 , 0 :continue)

lAuditFace [in] long


It sets whether the audit face will be used or not.
- IS_FACE_AUDIT_OFF(0) means it doesn't use the audit face image.
- IS_FACE_AUDIT_ON(1) means it uses the audit face image.

lIsLive [in] long


It sets whether the live will be transferred or not during iris capture.
- IS_DISABLE(0)
- IS_ENABLE(1)

lIsRetry [in] long It sets whether the retry will be used or not.
- IS_DISABLE(0)
- IS_ENABLE(1)

lIsVerify [in] long


- IS_DISABLE(0)
- IS_ENABLE(1)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose Capture user iris and enroll the iris template to DB.

Note The results received through OnEnrollReport().


iCAM R100 Manager SDK User Manual 7

IdentifyUser()
IdentifyUser()

Syntax IdentifyUser (lEyePosition, lFEDLevel, lLensDetectLevel, lTimeOut, lIsAuditFace, lIsLive)

Argument Type Description

lEyePosition [in] long It decides which iris will be captured form enrollment.
- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)
- IS_EYE_EITHER(4)

lFEDLevel [in] long It sets whether the countermeasure will be used or not.
- IS_FED_LEVEL_1(0)
- IS_FED_LEVEL_2(1)

lLensDetectLevel [in] long It sets the level of lens detection.


- IS_LENS_CHECK_NONE(0) : Don't check for lens.
- IS_LENS_CHECK_HARD(1) : Check only for hard lens.
- IS_LENS_CHECK_PATTERN(2) : Check only for Pattern lens.
- IS_LENS_CHECK_HARD | IS_LENS_CHECK_PATTERN : Check either
for hard lens or pattern lens.

lTimeout [in] long It tries to capture iris images until it times out. The unit is
second ( 1 ~ 20, 0 : continue )

lAuditFace [in] long


It sets whether the audit face will be used or not.
- IS_FACE_AUDIT_OFF(0) means it doesn't use the audit face image.
- IS_FACE_AUDIT_ON(1) means it uses the audit face image.

lIsLive [in] long It sets whether the live will be transferred or not during iris capture.
- IS_DISABLE(0)
- IS_ENABLE(1)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose Capture user iris and identify it on DB.

Note The results received through OnMatchReport()


iCAM R100 Manager SDK User Manual 8

VerifyByID()
VerifyByID()

Syntax VerifyByID(bstrUserID, lEyePosition, lFEDLevel, lLensDetectLevel, lTimeOut, lIsAuditFace, lIsLive)

Argument Type Description

bstrUserID [in] BSTR Unique User ID.

lEyePosition [in] long It decides which iris will be captured form enrollment.
- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)
- IS_EYE_EITHER (4)

lFEDLevel [in] long It sets whether the countermeasure will be used or not.
- IS_FED_LEVEL_1(0)
- IS_FED_LEVEL_2(1)

lLensDetectLevel [in] long It sets the level of lens detection.


- IS_LENS_CHECK_NONE(0) : Don't check for lens.
- IS_LENS_CHECK_HARD(1) : Check only for hard lens.
- IS_LENS_CHECK_PATTERN(2) : Check only for Pattern lens.
- IS_LENS_CHECK_HARD | IS_LENS_CHECK_PATTERN : Check either
for hard lens or pattern lens.

lTimeout [in] long It tries to capture iris images until it times out. The unit is
second ( 1 ~ 20, 0 : continue )

lAuditFace [in] long


It sets whether the audit face will be used or not.
- IS_FACE_AUDIT_OFF(0) means it doesn't use the audit face image.
- IS_FACE_AUDIT_ON(1) means it uses the audit face image.

lIsLive [in] long


It sets whether the live will be transferred or not during iris capture.
- IS_DISABLE(0)
- IS_ENABLE(1)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose Capture user iris and verify it with indicated user id on DB.

Note The results received through OnMatchReport ().


iCAM R100 Manager SDK User Manual 9

VerifyByIrisTemplate()
VerifyByTemplate()

Syntax VerifyByIrisTemplate(vRightIrisTemplate, vLeftIrisTemplate, lEyePosition, lFEDLevel, lLensDetectLevel, lTimeOut,


lIsAuditFace, lIsLive)

Argument Type Description

vRightIrisTemplate [in] VARIANT Iris template for verify with captured iris.

vLeftIrisTemplate [in] VARIANT Iris template for verify with captured iris.

lEyePosition [in] long It decides which iris will be captured from enrollment.
- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)
- IS_EYE_EITHER (4)

lFEDLevel [in] long It sets whether the countermeasure will be used or not.
- IS_FED_LEVEL_1(0)
- IS_FED_LEVEL_2(1)

lLensDetectLevel [in] long It sets the level of lens detection.


- IS_LENS_CHECK_NONE(0) : No check for lens.
- IS_LENS_CHECK_HARD(1) : Check only for hard lens.
- IS_LENS_CHECK_PATTERN(2) : Check only for Pattern lens.
- IS_LENS_CHECK_HARD | IS_LENS_CHECK_PATTERN : Check either
for hard lens or pattern lens.

lTimeout [in] long It tries to capture iris images until it times out. The unit is
second ( 1 ~ 20, 0 : continue )

lAuditFace [in] long


It sets whether the audit face will be used or not.
- IS_FACE_AUDIT_OFF(0) means it doesn't use the audit face image.
- IS_FACE_AUDIT_ON(1) means it uses the audit face image.

lIsLive [in] long It sets whether the live image will be transferred or not during iris
capture.
- IS_DISABLE(0)
- IS_ENABLE(1)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose Capture user iris and verify it with input template on DB.

Note The results received through OnMatchReport ().


iCAM R100 Manager SDK User Manual 10

StartIrisCapture()
StartIrisCapture ()

Syntax StartIrisCapture(lPurpose, lIrisType, lEyePosition, lFEDLevel, lLensDetectLevel, lTimeout, lAuditFace, lIsLiveImage)

Argument Type Description

lPurpose [in] long It indicates the purpose of capturing iris images.


- For enrollment, IS_ENROLLMENT(1)
- For recognition, IS_RECOGNITION(2)

lIrisType [in] long - IS_IRIS_IMAGE(0)


- IS_IRIS_TEMPLATE(1)

lEyePosition [in] long It decides which iris will be captured from enrollment.
- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)
- IS_EYE_EITHER (4)
-
lFEDLevel [in] long It sets whether the countermeasure will be used or not.
- IS_FED_LEVEL_1(0)
- IS_FED_LEVEL_2(1)

lLensDetectLevel [in] long It sets the level of lens detection.


- IS_LENS_CHECK_NONE(0) : No check for lens.
- IS_LENS_CHECK_HARD(1) : Check only for hard lens.
- IS_LENS_CHECK_PATTERN(2) : Check only for Pattern lens.
- IS_LENS_CHECK_HARD | IS_LENS_CHECK_PATTERN : Check either
for hard lens or pattern lens.

lTimeout [in] long It tries to capture iris images until it times out. The unit is
second ( 1 ~ 20, 0: continue )

lAuditFace [in] long


It sets whether the audit face will be used or not.
- IS_FACE_AUDIT_OFF(0) means it doesn't use the audit face image.
- IS_FACE_AUDIT_ON(1) means it uses the audit face image.

lIsLiveImage [in] long It sets whether the live image will be transferred or not during iris
capture.
- IS_DISABLE(0)
- IS_ENABLE(1)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get iris images or template from iCAM for enrollment and recognition.

Note If lIrisType is IS_IRIS_IMAGE, the captured iris images are received through OnGetIrisImage() event function.
If lIrisType is IS_IRIS_TEMPLATE, The captured iris template is received through OnGetIrisTemplate() event
function.
The result received through OnCaptureReport().
Audit Face Image: It's not for facial recognition; it's just for visual inspection.
IS_IRIS_EITHER is valid option only in recognition mode.
iCAM R100 Manager SDK User Manual 11

AbortCapture()
AbortCapture()

Syntax AbortCapture (void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To stop the capture processing.

Note It must be called after EnrollUser(), IdentifyUser() and VerifyByID().

AddUserIrisTemplate()
AddUserIrisTemplate()

Syntax AddUserIrisTemplate (bstrUserID, lEyePosition, vRightIrisTemplate, vLeftIrisTemplate, pRightStatus, pLeftStatus,


pRightQuality, pLeftQuality, pEnrolledUserID)

Argument Type Description

bstrUserID [in] BSTR A user id to insert in database.

lEyePosition [in] long An available eye position.


- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)

vRightIrisTemplate [in] VARIANT A right iris template. 512 bytes buffer.

vLeftIrisTemplate [in] VARIANT A left iris template. 512 bytes butter.

pRightStatus [out] long* A process status of right iris template.


- IS_FAIL_READY_EXIST(-1001)
- IS_FAIL_LOW_QUALITY (-1006)
- IS_FAIL_IGNORE (-1008)

pLeftStatus [out] long*


A process status of left iris template.
- IS_FAIL_READY_EXIST(-1001)
- IS_FAIL_LOW_QUALITY (-1006)
- IS_FAIL_IGNORE (-1008)

pRightQuality [out] long* 0~100

pLeftQuality [out] long* 0~100

pEnrolledUserID [out] BSTR* A duplicated user id form database.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It adds a user template to database as iris template.


iCAM R100 Manager SDK User Manual 12

AddUserIrisImage()
AddUserIrisTemplate()

Syntax AddUserIrisImage (bstrUserID, lEyePosition, vRightIrisImage, vLeftIrisImage, pRightStatus, pLeftStatus,


pRightQuality, pLeftQuality, pEnrolledUserID)

Argument Type Description

bstrUserID [in] BSTR A user id to insert in database.

lEyePosition [in] long An available eye position.


- IS_EYE_RIGHT (1)
- IS_EYE_LEFT (2)
- IS_EYE_BOTH (3)

vRightIrisImage [in] VARIANT A right iris image. 307200 bytes(640*480) buffer.

vLeftIrisImage [in] VARIANT A left iris image. 307200 bytes(640*480) butter.

pRightStatus [out] long*


A process status of right iris template.
- IS_FAIL_READY_EXIST(-1001)
- IS_FAIL_LOW_QUALITY (-1006)
- IS_FAIL_IGNORE (-1008)
- IS_FAIL_FAKE (-1009)

pLeftStatus [out] long* A process status of left iris template.


- IS_FAIL_READY_EXIST(-1001)
- IS_FAIL_LOW_QUALITY (-1006)
- IS_FAIL_IGNORE (-1008)
- IS_FAIL_FAKE (-1009)

pRightQuality [out] long* 0~100

pLeftQuality [out] long* 0~100

pEnrolledUserID [out] BSTR* A duplicated user id form database.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It adds a user image to database as iris image.

GetNumberOfUserDB ()
GetNumberOfUserDB ()

Syntax GetNumberOfUserDB (void)

Argument Type Description

N/A N/A N/A

Return Type long Get number of user record.

Purpose It gets the number of user record in database.

GetUserInfo ()
GetUserInfo ()

Syntax GetUserInfo (bstrUserID, pUserInfo)

Argument Type Description

bstrUserID [in] BSTR The user id in database.

pUserInfo [out] stUSERINFO* It gets the user information as UserID.


iCAM R100 Manager SDK User Manual 13

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It gets a user record in database as UserID

DeleteUserInfo ()
DeleteUserInfo ()

Syntax DeleteUserInfo (bstrUserID)

Argument Type Description

bstrUserID [in] BSTR The user id in database.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It deletes the user record that indicated the pUserID.

ClearUserDB ()
ClearUserDB ()

Syntax ClearUserDB (void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It deletes the whole user database in device.

DownloadUserDB ()
DeleteUserInfo ()

Syntax DeleteUserInfo (plNumOfUserRecords)

Argument Type Description

plNumOfUserRecords [out] BSTR It gets the user number of database.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It gets the number of user record in database of r100 and generates an event for OnUserDB()

UploadUserDB ()
UploadUserDB ()

Syntax UploadUserDB (lNumOfRecord, vUserInfoList)

Argument Type Description

lNumOfRecord [in] long It indicates the record number of user database.

vUserInfoList [in] VARIANT It sets a buffer of the user information.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose It sets the user database of host to iCAM R100.


iCAM R100 Manager SDK User Manual 14

Upgrade()
Upgrade()

Syntax Upgrade(bstrFileName)

Argument Type Description

bstrFileName [in] BSTR Path of update package file.

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To upgrade the current iCAM R100 software to the newer version.

StartFaceCapture()
StartFaceCapture()

Syntax StopIrisCapture(void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To start capturing face images at the iCAM R100.

Note The live face images are received through OnGetLiveImage() event function. StopFaceCapture() function should
follow.

StopFaceCapture()
StopFaceCapture()

Syntax StopFaceCapture(lImageType, lStrobe)

Argument Type Description

lImageType [in] long Type of captured face image


- IS_NONE (0)
- IS_FI_CAPTURED_JPEG_480X640 (1)
- IS_FI_CAPTURED_JPEG_1200X1600 (2)
- I S_FI_CAPTURED_JPEG_1920X2560 (3)

lStrobe [in] long Enable/disable flash during face capture.


- IS_COLOR_STROBE_OFF (0)
- IS_COLOR_STROBE_ON_LOW (1)
- IS_COLOR_STROBE_ON_MIDDLE (2)
- IS_COLOR_STROBE_ON_HIGH (3)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To stop capturing face images.

SetAutoFocus()
Upgrade()

Syntax SetAutoFocus(void)

Argument Type Description

N/A N/A N/A

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set auto focus of face camera.


iCAM R100 Manager SDK User Manual 15

SetColorEffect()
SetColorEffect()

Syntax SetColorEffect(lType, lValue)

Argument Type Description

lType [in] long - COLOR_EFFECT_WHITE_BALANCE (1)


- COLOR_EFFECT_BRIGHTNESS (2)
- COLOR_EFFECT_SHARPNESS (3)
- COLOR_EFFECT_SATURATION (4)
- COLOR_EFFECT_ISO (5)

lValue [in] long refer to “Definitions” section 3.12

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To set the current color effect setting of the iCAM R100.

GetColorEffect()
GetColorEffect()

Syntax GetColorEffect(lType, pValue)

Argument Type Description

lType [in] long - COLOR_EFFECT_WHITE_BALANCE (1)


- COLOR_EFFECT_BRIGHTNESS (2)
- COLOR_EFFECT_SHARPNESS (3)
- COLOR_EFFECT_SATURATION (4)
- COLOR_EFFECT_ISO (5)

pValue [out] long* The value of color effect setting.

refer to “Definitions” section 3.12

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To get the current color effect setting of the iCAM R100.

UpdateVoiceMessage()
UpdateVoiceMessage()

Syntax UpdateVoiceMessage(bstrFileName, lLanguageIndex)

Argument Type Description

bstrFileName [in] BSTR The Full file name of the voice message file to be uploaded.

lLanguageIndex [in] long The index of language stored in the iCAM:


- IS_VOICE_LANGUAGE_OTHER(0)
- IS_VOICE_LANGUAGE_ENGLISH(1)
- IS_VOICE_LANGUAGE_KOREAN(2)
- IS_VOICE_LANGUAGE_CHINESE(3)
- IS_VOICE_LANGUAGE_SPANISH(4)
- IS_VOICE_LANGUAGE_ARABIC(5)
- IS_VOICE_LANGUAGE_PORTUGUESE(6)
- IS_VOICE_LANGUAGE_RUSSIAN(7)
- IS_VOICE_LANGUAGE_GERMAN(8)
- IS_VOICE_LANGUAGE_FRENCH(9)
- IS_VOICE_LANGUAGE_TURKISH(10)
- IS_VOICE_LANGUAGE_JAPANESE(11)
- IS_VOICE_LANGUAGE_HINDI(12)

Return Type long 0 for success. Please refer appendix for error code description.

Purpose To update the voice messages in the iCAM.


iCAM R100 Manager SDK User Manual 16

GetColorOffset()
GetColorOffset()

Syntax GetColorOffset(pX, pY)

Argument Type Description

pX [out] long* X axis offset

pY [out] long* Y axis offset

Return Type long 0 for success. Please refer appendix for error code description.

Purpose Color offset of narrow center.

2 Event

OnGetLiveImage ()
OnGetLiveImage ()
Syntax OnGetLiveImage (lImageSize, vLiveImage)
Argument Type Description
lImageSize [in] long The size for this JPEG image.
vLiveImage [in] VARIANT The byte array for live image.
Purpose To get the live image when a API command asked the live image.
The image resolution is 480X640 and image format is JPEG.

OnGetFaceImage()
OnGetFaceImage()
Syntax OnGetFaceImage( lImageType, lImageResolution, lImageSize, vFaceImage)
Argument Type Description
lImageType [in] long It indicates the captured face image type.
- IS_FI_CAPTURED_JPEG_480X640(1)
- IS_FI_CAPTURED_JPEG_1200X1600(2)
- IS_FI_CAPTURED_JPEG_1920X2560(3)
lType [in] long It indicates a type of the face image.
- IS_FACE_AUDIT (1)
- IS_FACE_CAPTURE (2)
lSize [in] long Size of image byte array.
vFaceImage [in] VARIANT The byte array containing the actual face image data.
Purpose To get the face image.

OnGetIrisImage ()
OnGetIrisImage()
Syntax OnGetIrisImage (lRightIrisFEDStatus, lRightIrisLensStatus,lRightIrisImageSize, vRightIrisImage,
lLeftIrisFEDStatus, lLeftIrisLensStatus, lLeftIrisImageSize, vLeftIrisImage);

Argument Type Description


lRightIrisFEDStatus [in] long It indicates a result of countermeasure.
- IS_IRIS_STAT_NONE(0)
- IS_IRIS_STAT_LIVE(1)
- IS_IRIS_STAT_FAKE(2)
- IS_IRIS_STAT_FAIL(3): It can not decide if the captured iris image is
FAKE or LIVE.
lRightIrisLensStatus [in] long It indicates a lens type if the user is wearing a lens.
- IS_LENS_STAT_NONE(0)
- IS_LENS_STAT_HARD(1)
- IS_LENS_STAT_PATTERN(2)
- IS_LENS_STAT_SOFT(4)
lRightIrisImageSize [in] long
It gets image size of right image.
iCAM R100 Manager SDK User Manual 17

vRightIrisImage [in] VARIANT


If the right iris is captured, it gives that image.
lLeftIrisFEDStatus [in] long It indicates a result of countermeasure.
- IS_IRIS_STAT_NONE(0)
- IS_IRIS_STAT_LIVE(1)
- IS_IRIS_STAT_FAKE(2)
- IS_IRIS_STAT_FAIL(3): It can not decide if the captured iris image is
FAKE or LIVE
lLeftIrisLensStatus [in] long It indicates a lens type if the user is wearing a lens.
- IS_LENS_STAT_NONE(0)
- IS_LENS_STAT_HARD(1)
- IS_LENS_STAT_PATTERN(2)
- IS_LENS_STAT_SOFT(4)
lLeftIrisImageSize [in] long It gets image size of right image.
vLeftIrisImage [in] VARIANT
If the left iris is captured, it gives that image.

Purpose To get the iris image and information.


iCAM R100 Manager SDK User Manual 18

OnGetIrisTemplate ()
OnGetIrisTemplate ()
Syntax OnGetIrisTemplate (lRightIrisFEDStatus, lRightIrisLensStatus, lRightIrisTemplateSize, vRightIrisTemplate,
lLeftIrisFEDStatus, lLeftIrisLensStatus, lLeftIrisTemplateSize, vLeftIrisTemplate);

Argument Type Description


lRightIrisFEDStatus [in] long It indicates a result of countermeasure.
- IS_IRIS_STAT_NONE(0)
- IS_IRIS_STAT_LIVE(1)
- IS_IRIS_STAT_FAKE(2)
- IS_IRIS_STAT_FAIL(3): It can not decide if the captured iris image is
FAKE or LIVE.
lRightIrisLensStatus [in] long It indicates a lens type if the user is wearing a lens.
- IS_LENS_STAT_NONE(0)
- IS_LENS_STAT_HARD(1)
- IS_LENS_STAT_PATTERN(2)
- IS_LENS_STAT_SOFT(4)
lRightIrisTemplateSize [in] long
It gets template size of right image.
vRightIrisTemplate [in] VARIANT
If the right iris is captured, it gives that template.
lLeftIrisFEDStatus [in] long It indicates a result of countermeasure.
- IS_IRIS_STAT_NONE(0)
- IS_IRIS_STAT_LIVE(1)
- IS_IRIS_STAT_FAKE(2)
- IS_IRIS_STAT_FAIL(3): It can not decide if the captured iris image is
FAKE or LIVE
lLeftIrisLensStatus [in] long It indicates a lens type if the user is wearing a lens.
- IS_LENS_STAT_NONE(0)
- IS_LENS_STAT_HARD(1)
- IS_LENS_STAT_PATTERN(2)
- IS_LENS_STAT_SOFT(4)
lLeftIrisTemplateSize [in] long It gets template size of left image.
vLeftIrisTemplate [in] VARIANT
If the left iris is captured, it gives that template.

Purpose To get the iris template and information.

OnEnrollReport ()
OnEnrollReport ()
Syntax OnEnrollReport(lReportResult, lFailureCode, lRightIrisQualityValue, lLeftIrisQualityValue,
bstrMatchedUserID)

Argument Type Description


lReportResult [in] long The result of report.
- IS_RST_FAILURE(-1)
- IS_RST_SUCCESS(0)
- IS_RST_FAIL_STATUS(1)
lFailureCode [in] long - IS_FAIL_ALREADY_EXIST(-1001)
- IS_ FAIL_TIMEOUT(-1003)
- IS_ FAIL_ABORT(-1004)
- IS_FAIL_LOW_QUALITY(-1006)
- IS_FAIL_CREATE_TEMPLATE(-1007)
- IS_FAIL_FAKE(-1009)
lRightIrisQualityValue [in] long 0~100
lLeftIrisQualityValue [in] long 0~100
bstrMatchedUserID [in] BSTR If the iris was matched, it indicated the matched UserID.
Purpose It indicates the completion and result of the enrollment status.
iCAM R100 Manager SDK User Manual 19

OnMatchReport ()
OnMatchReport ()
Syntax OnMatchReport (lMatchType, lReportResult, lFailureCode, bstrMatchedUserID)
Argument Type Description
lMatchType [in] long The match type.
- IS_REP_IDENTIFY(1)
- IS_REP_VERIFY_ID(2)
- IS_REP_VERIFY_TEMPLATE(3)
lReportResult [in] long The result of report.
- IS_RST_SUCCESS(0)
- IS_RST_FAILURE(-1)
lFailureCode [in] long
- IS_FAIL_TIMEOUT(-1003)
- IS_FAIL_ABORT(-1004)
- IS_FAIL_MATCH(-1005)
- IS_FAIL_LOW_QUALITY(-1006)
- IS_FAIL_CREATE_TEMPLATE(-1007)
bstrMatchedUserID [in] BSTR If the iris was matched, it indicated the matched UserID.
Purpose It indicates the completion and result of the match status.

OnCaptureReport ()
OnCaptureReport ()
Syntax OnCaptureReport (lReportResult, lFailureCode)
Argument Type Description
lReportResult [in] long The result of report.
- IS_RST_SUCCESS(0)
- IS_RST_FAILURE(-1)
lFailureCode [in] long
- IS_FAIL_TIMEOUT(-1003)
- IS_FAIL_ABORT(-1004)
- IS_FAIL_CREATE_TEMPLATE(-1007)

Purpose It indicates the completion and result of the capture status.

OnUserDB ()
OnUserDB ()
Syntax OnUserDB (lNumOfUser, lSizeOfUserDB, vUserDB)
Argument Type Description
lNumOfUser [in] long The number of user records. (Available Range : 0~10000)

lSizeOfUserDB [in] long The size of user database.

vUserDB [in] VARIANT It is including the buffer of the user records.

Purpose It gets whole user database from iCAM R100 databsae.


Note To get the user database when DownloadUserDB() is called.
iCAM R100 Manager SDK User Manual 20

OnGetStatus ()
OnGetStatus()
Syntax OnGetStatus(lStatusType, lStatusValue)
Argument Type Description
lStatusType [in] long The type of device status
- IS_STAT_DISCONNECT(1)
- IS_STAT_UPGRADE_STATUS(6)
- IS_STAT_UPSIDEDOWN(7)

lStatusValue [in] long The value of status type.


- When IS_STAT_DISCONNECT, IS_STAT_UPGRADE_STATUS
0 (Don’tcare)
- When IS_STAT_UPSIDEDOWN
IS_NORMAL(1)
IS_UPSIDEDOWN(0)

Purpose It gets the status of device.


iCAM R100 Manager SDK User Manual 21

3 Definitions

3.1 Device Error Codes

IS_ERROR_NONE 0

IS_ERROR_UNOPEN -1000000

IS_ERROR_ALREADY_OPEN -1000001

IS_ERROR_CLOSE -1000002

IS_ERROR_COMMUNICATION -1000003

IS_ERROR_AUTHENTICATION -1000004

IS_ERROR_ICAM_FAILURE -1000005

IS_ERROR_PARAMETER -1000006

IS_ERROR_ICAM_RETURN -1000007

IS_ERROR_FEATURE_NOT_SUPPORT -1000013

IS_ERROR_NO_UPDATE_FILE -1000014

IS_ERROR_WRONG_SIZE_UPDATE_FILE -1000015

IS_ERROR_VOICE_FILES_NOT_FOUND -1000021

IS_ERROR_VOICE_FILES_DIR_EMPTY -1000022

IS_ERROR_UPDATE_PACKAGE -1000023

IS_ERROR_ICAM -1000024

IS_ERROR_TIMEOUT -1000025

IS_ERROR_FAIL_TO_OPEN_CONFIG -1000026

IS_ERROR_INVALID_ORDER -1000027

IS_ERROR_SYSTEM_BUSY -1000030

IS_ERROR_UNKNOWN -1000033

IS_ERRPR_FAIL_OPEN_DB -1100000

IS_ERROR_ALREADY_EXIST_USER_ID -1100001

IS_ERROR_NOT_EXIST_USER_ID -1100002

IS_ERROR_NOT_EMPTY_DB -1100003

IS_ERROR_EXCEED_DB -1100004

IS_ERROR_ALREADY_EXIST -1100005

IS_ERROR_LOW_QUALITY -1100006

IS_ERROR_CREATE_TEMPLATE -1100007
iCAM R100 Manager SDK User Manual 22

3.2 Failure Code (Callback Events)

IS_FAIL_ALREADY_EXIST -1001

IS_FAIL_CAPTURE -1002

IS_FAIL_TIMEOUT -1003

IS_FAIL_ABORT -1004

IS_FAIL_MATCH -1005

IS_FAIL_LOW_QULITY -1006

IS_FAIL_CREATE_TEMPLATE -1007

IS_FAIL_IGNORE -1008

IS_FAIL_FAKE -1009

3.3 Status (Callback Events)

IS_STAT_DISCONNECT 1

IS_STAT_UPGRADE_STATUS 6

IS_STAT_UPSIDEDOWN 7

IS_UPSIDEDOWN 0

IS_NORMAL 1

3.4 Face Image (Captured) Types

IS_FI_CAPTURED_JPEG_480X640 1

IS_FI_ CAPTURED_JPEG_1200X1600 2

IS_FI_ CAPTURED_JPEG_1920X2560 3

3.5 Captured Iris Countermeasure Status

IS_IRIS_STAT_NONE 0

IS_IRIS_STAT_LIVE 1

IS_IRIS_STAT_FAKE 2

IS_IRIS_STAT_FAIL 3

3.6 Captured Iris Lens Detection Status

IS_LENS_STAT_NONE 0

IS_LENS_STAT_HARD 1

IS_LENS_STAT_PATTERN 2
iCAM R100 Manager SDK User Manual 23

3.7 Version Types

IS_DEV_VER_SDK 0

IS_DEV_VER_ICAMSW 1

IS_DEV_VER_FS 2

IS_DEV_VER_ICAM_CMDCENTER 3

IS_DEV_VER_ICAM_MANAGER 4

IS_DEV_VER_OS 5

IS_DEV_VER_LIB_CAPTURE 6

IS_DEV_VER_LIB_RECOG 7

IS_DEV_VER_LIB_EYESEEK 8

IS_DEV_VER_LIB_COUNTERMEASURE 9

IS_DEV_VER_LIB_LENS 10

IS_DEV_VER_LIB_TWOPI 11

3.8 Voice Message Indexes

IS_SND_NONE 0

IS_SND_CAMERA_SHUTTER 1

IS_SND_MOVE_FORWARD 2

IS_SND_MOVE_BACKWARD 3

IS_SND_CENTER_EYES_IN_MIRROR 4

IS_SND_IDENTIFIED 5

IS_SND_NOT_IDENTIFY 6

IS_SND_VERIFIED 7

IS_SND_NOT_VERIFY 8

IS_SND_PRESENT_CARD 9

IS_SND_FINISH_IRIS_CAPTURE 10

IS_SND_OPERATION_BEEP 11

IS_SND_SMARTCARD_READ_SUCCESS 12

IS_SND_TRY_AGAIN 13

3.9 Indicator Types

IS_IND_NONE 0

IS_IND_SUCCESS (Green) 1

IS_IND_FAILURE (Red) 2

IS_IND_BUSY (Red, green, blue Blink) 3

IS_IND_ERROR 4

IS_IND_TURN_ON (Blue) 5
iCAM R100 Manager SDK User Manual 24

IS_IND_TURN_OFF 6

3.10 Eye Selection

IS_EYE_RIGHT 1

IS_EYE_LEFT 2

IS_EYE_BOTH 3

IS_EYE_EITHER 4

3.11 Voice Language Indexes

IS_VOICE_LANGUAGE_OTHER 0

IS_VOICE_LANGUAGE_ENGLISH 1

IS_VOICE_LANGUAGE_KOREAN 2

IS_VOICE_LANGUAGE_CHINESE 3

IS_VOICE_LANGUAGE_SPANISH 4

IS_VOICE_LANGUAGE_ARABIC 5

IS_VOICE_LANGUAGE_PORTUGUESE 6

IS_VOICE_LANGUAGE_RUSSIAN 7

IS_VOICE_LANGUAGE_GERMAN 8

IS_VOICE_LANGUAGE_FRENCH 9

IS_VOICE_LANGUAGE_TURKISH 10

IS_VOICE_LANGUAGE_JAPANESE 11

IS_VOICE_LANGUAGE_HINDI 12

3.12 Misc

IS_MIN_VOLUME 0

IS_MAX_VOLUME 9

IS_ DISABLE 0

IS_ ENABLE 1

IS_COLOR_STROBE_OFF 0

IS_COLOR_STROBE_ON_LOW 1

IS_COLOR_STROBE_ON_MIDDLE 2

IS_COLOR_STROBE_ON_HIGH 3

IS_FACE_AUDIT_OFF 0

IS_FACE_AUDIT_ON 1

IS_FED_LEVEL_1 0

IS_FED_LEVEL_2 1

IS_LENS_CHECK_NONE 0
iCAM R100 Manager SDK User Manual 25

IS_LENS_CHECK_HARD 1

IS_LENS_CHECK_PATTERN 2

3.13 Color Effect

COLOR_EFFECT_WHITE_BALANCE 1

WHITE_BALANCE_AUTO 0

WHITE_BALANCE_DAYLIGHT 1

WHITE_BALANCE_CLOUDY 2

WHITE_BALANCE_INCANDESCENT 3

WHITE_BALANCE_FLUORESCENT 4

COLOR_EFFECT_BRIGHTNESS 2

BRIGHTNESS_MINUS_5 0

BRIGHTNESS_MINUS_4 1

BRIGHTNESS_MINUS_3 2

BRIGHTNESS_MINUS_2 3

BRIGHTNESS_MINUS_1 4

BRIGHTNESS_DEFAULT 5

BRIGHTNESS_PLUS_1 6

BRIGHTNESS_PLUS_2 7

BRIGHTNESS_PLUS_3 8

BRIGHTNESS_PLUS_4 9

BRIGHTNESS_PLUS_5 10

COLOR_EFFECT_SHARPNESS 3

SHARPNESS_MINUS_5 0

SHARPNESS_MINUS_4 1

SHARPNESS_MINUS_3 2

SHARPNESS_MINUS_2 3

SHARPNESS_MINUS_1 4

SHARPNESS_DEFAULT 5

SHARPNESS_PLUS_1 6

SHARPNESS_PLUS_2 7

SHARPNESS_PLUS_3 8

SHARPNESS_PLUS_4 9

SHARPNESS_PLUS_5 10

COLOR_EFFECT_SATURATION 4

SATURATION_MINUS_5 0

SATURATION_MINUS_4 1
iCAM R100 Manager SDK User Manual 26

SATURATION_MINUS_3 2

SATURATION_MINUS_2 3

SATURATION_MINUS_1 4

SATURATION_DEFAULT 5

SATURATION_PLUS_1 6

SATURATION_PLUS_2 7

SATURATION_PLUS_3 8

SATURATION_PLUS_4 9

SATURATION_PLUS_5 10

COLOR_EFFECT_ISO 5

ISO_AUTO 0

ISO_100 1

ISO_200 2

ISO_400 3
iCAM R100 Manager SDK User Manual 27

4 C# Sample S/W

1. Click the “Connect” button for the connection.

2. When connected, serial number and version information is displayed.


iCAM R100 Manager SDK User Manual 28

3. Enrollment

- Select the setting value. (Which Eye, Countermeasure, Lens Detection, Audit face, Live Image,
Retry, Verify and Time out)

- Enter the User ID

- Click “Enroll” to enroll the iris

- When succeed in iris enrollment, iris images are displayed with the sound

- In Enrollment Quality Settings, enabled “Retry” menu will let users try maximum three times for
getting acceptable iris image. When it’s deactivated, Threshold (Single) will affect value
iCAM R100 Manager SDK User Manual 29

4. Update user information of the host database

- Select the user from the list to update

- Enter the user information and then click the “Update”

- Can check that the user name is changed

- To change user’s face image, use the “Face Camera” menu on upper right corner
iCAM R100 Manager SDK User Manual 30

5. Identification

- Select the setting value. (Which Eye, Countermeasure, Lens Detection, Audit face, Live Image
and Time out)

- Click “Identify” button to identify the iris

- When succeed in iris identification, user information of host database are displayed
iCAM R100 Manager SDK User Manual 31

6. Verification

- Select the setting value. ( Which Eye, Countermeasure, Lens Detection, Audit face, Live Image
and Time out)

- Enter the User ID

- “Verify” button verifies the user with user ID

- When succeed in iris verification, user information of host database are displayed
iCAM R100 Manager SDK User Manual 32

7. Iris Capture

- Select the setting value. ( Purpose, Iris Type, Which Eye, Countermeasure, Lens Detection, Audit
face, Live Image and Time out)

- When iris type is image, “Add User Iris Image” is available.

- When iris type is template, “Add User Iris Template” or “Verify by Template” is available.

- “Add User Iris Image” and “Add User Iris Template” are feature for adding user into the DB of
device.

- “Verify by Template” verifies the template with the captured image.


iCAM R100 Manager SDK User Manual 33

8. Database control

- Update: Update user information from the host database

- Delete: Deletes the user record that indicated the User ID

- All Delete: It deletes the whole user database in device

- NUM: Get the number of user record in database

- Get: Get a user record from the database of device as User ID

- Download: Get the number of user record from the database of device

- Upload: Uploads the user database to device


iCAM R100 Manager SDK User Manual 34

9. Etc.

- Language Type: To select language type of device

- Volume Control: Device volume control

- User Interface: “Play” button will test each Voice and LED

- Upside-Down: To show the direction of device

- Face Camera Settings: To set the settings from face camera

- Device Upgrade: To install upgrade package for software upgrade

- Update Voice Message: To update the voice messages on device


iCAM R100 Manager SDK User Manual 35

5 Revision History
Installer Changes
version
V2.02.01 1. New feature

a. GetColorOffset

V2.01.07 2. Update version due to update package change

3. There is compatibility problem in the database which is used on host PC.(non-bugs)

V2.01.06 4. Update version due to update package change.

Fixed the file system bug of iCAM R100

V2.01.05 1. Update version due to update package change.

Added the error protection of USB communication.

V2.01.03 1. It allows the continuous capture.( timeout : 0 )

When It doesn’t use the color live capture.

V2.01.02 1. Bug fix.

V2.01.01 1. Automatic selection of quality according to the iris type(Image or Template).

2. New feature

a. AddUserIrisImage

b. AddUserIrisTemplate

c. VerifyByTemplate

3. Implement the Iris Capture mode. Image or Template transferring by user selection.

4. Add verify feature in enrollment. User selection is available.

5. Report enrollment failure caused form low quality, when in retrying.

6. Add color focus feature(Improvement in capture time)


iCAM R100 Manager SDK User Manual 36

6 System Information
Version information is below when upgrading with UpdatePacakge.dat included in the installer v2.01.02.

SDK V2.02.01
iCAM SW 4.02.02
File System 0.9.4
CMDCenter 1.4.0
Device Manager 1.0.8
OS 0.9.4
Capture library 02.00.03
Recog library 01.01.01
Eyeseek 5.08
Countermeasure 1.40
Lens Detection 2.03
TwoPi 1.5.5

You might also like