차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
ko:bs2_getuserdatasfaceex [2021/12/29 16:40] mark [반환값] |
ko:bs2_getuserdatasfaceex [2021/12/30 10:57] (현재) mark [샘플코드] |
||
---|---|---|---|
줄 48: | 줄 48: | ||
\\ | \\ | ||
==== 샘플코드 ==== | ==== 샘플코드 ==== | ||
+ | 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> | ||
- | Console.WriteLine("Trying to get user list."); | ||
BS2UserFaceExBlob[] userBlobs = new BS2UserFaceExBlob[numUser]; | BS2UserFaceExBlob[] userBlobs = new BS2UserFaceExBlob[numUser]; | ||
BS2ErrorCode result = (BS2ErrorCode)API.BS2_GetUserDatasFaceEx(sdkContext, deviceID, uid, numUser, userBlobs, userMask); | BS2ErrorCode result = (BS2ErrorCode)API.BS2_GetUserDatasFaceEx(sdkContext, deviceID, uid, numUser, userBlobs, userMask); | ||
- | |||
if (result == BS2ErrorCode.BS_SDK_SUCCESS) | if (result == BS2ErrorCode.BS_SDK_SUCCESS) |