차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
ko:bs2_getuserdatasfaceex [2021/12/29 16:41] mark [샘플코드] |
ko:bs2_getuserdatasfaceex [2024/05/28 17:18] (현재) kkshin |
||
|---|---|---|---|
| 줄 6: | 줄 6: | ||
| ===== BS2_GetUserDatasFaceEx ===== | ===== BS2_GetUserDatasFaceEx ===== | ||
| [+ 2.7.1] 사용자 식별자에 해당하는 사용자 정보를 가져옵니다. \\ | [+ 2.7.1] 사용자 식별자에 해당하는 사용자 정보를 가져옵니다. \\ | ||
| - | 이때 userMask를 통하여 사용자 정보의 일부를 선별적으로 가져올 수 있습니다. 이 함수는 FaceStation F2 장치 지원을 포함합니다. | + | 이때 userMask를 통하여 사용자 정보의 일부를 선별적으로 가져올 수 있습니다. \\ |
| + | 이 함수는 Visual Face 인증 수단을 지원합니다. | ||
| \\ | \\ | ||
| ==== 함수 ==== | ==== 함수 ==== | ||
| 줄 39: | 줄 40: | ||
| |0x0200 |작업코드 | | |0x0200 |작업코드 | | ||
| |0x0400 |개인메시지 | | |0x0400 |개인메시지 | | ||
| - | |0x0800 |얼굴 ''(FaceStation F2)'' | | + | |0x0800 |얼굴 ''(Visual Face 지원)'' | |
| - | |0x1000 |사용자설정 ''(FaceStation F2)'' | | + | |0x1000 |사용자설정 ''(Visual Face 지원)'' | |
| |0xFFFF |사용자 정보 전체 | | |0xFFFF |사용자 정보 전체 | | ||
| </WRAP> | </WRAP> | ||
| 줄 48: | 줄 49: | ||
| \\ | \\ | ||
| ==== 샘플코드 ==== | ==== 샘플코드 ==== | ||
| + | C++ | ||
| + | <code cpp> | ||
| + | |||
| + | const int MAX_USER_PAGE_COUNT = 2048; | ||
| + | vector<BS2UserFaceExBlob> userBlob(MAX_USER_PAGE_COUNT); | ||
| + | BS2_USER_MASK userMask = BS2_USER_MASK_ALL; | ||
| + | |||
| + | for (uint32_t idx = 0; idx < numUID; idx += MAX_USER_PAGE_COUNT) | ||
| + | { | ||
| + | uint32_t availUserCount = min<uint32_t>(MAX_USER_PAGE_COUNT, numUID - idx); | ||
| + | |||
| + | int sdkResult = BS2_GetUserDatasFaceEx(context_, id, uidObj + BS2_USER_ID_SIZE * idx, availUserCount, &userBlob[0], userMask); | ||
| + | if (BS_SDK_SUCCESS != sdkResult) | ||
| + | { | ||
| + | TRACE("BS2_GetUserDatas call failed: %d", sdkResult); | ||
| + | if (uidObj) | ||
| + | BS2_ReleaseObject(uidObj); | ||
| + | return sdkResult; | ||
| + | } | ||
| + | |||
| + | for (uint32_t pageIdx = 0; pageIdx < availUserCount; pageIdx++) | ||
| + | { | ||
| + | print(userBlob[pageIdx]); | ||
| + | |||
| + | if (0 < userBlob[pageIdx].user.numCards && userBlob[pageIdx].cardObjs) | ||
| + | BS2_ReleaseObject(userBlob[pageIdx].cardObjs); | ||
| + | if (0 < userBlob[pageIdx].user.numFingers && userBlob[pageIdx].fingerObjs) | ||
| + | BS2_ReleaseObject(userBlob[pageIdx].fingerObjs); | ||
| + | if (0 < userBlob[pageIdx].user.numFaces && userBlob[pageIdx].faceExObjs) | ||
| + | BS2_ReleaseObject(userBlob[pageIdx].faceExObjs); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | </code> | ||
| + | |||
| + | |||
| C# | C# | ||
| <code cpp> | <code cpp> | ||