차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
ko:bs2_getuserdatasfaceex [2021/12/29 16:41]
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>