pdcomm_gem300_capability_snapshot_profile_id_copy
함수
스냅샷 프로필 하나의 식별자를 복사합니다.
PdcommStatus pdcomm_gem300_capability_snapshot_profile_id_copy(const PdcommGem300CapabilitySnapshot *snapshot, size_t profile_index, char *output, size_t capacity, size_t *required)*required는 핸들과 인덱스를 검증하기 전에 지워지며, 프로필이 유효하면 정확한 식별자 길이를 받습니다. 버퍼가 짧으면 변경하지 않습니다. 식별자는 NUL로 끝나지 않습니다. 길이를 조회하려면 NULL과 용량 0을 전달합니다.
매개변수
| 이름 | 설명 |
|---|---|
snapshot | 유효한 스냅샷입니다. |
profile_index | 0부터 시작하는 프로필 인덱스입니다. |
output | 대상 버퍼입니다. capacity가 0인 크기 조회에서는 NULL일 수 있습니다. |
capacity | output의 크기(바이트)입니다. |
required | 식별자 길이를 받습니다(검증에 실패하면 0). NULL이 아니어야 합니다. |
반환값
식별자를 복사하면 #PDCOMM_OK를 반환합니다. capacity가 *required보다 작으면 #PDCOMM_BUFFER_TOO_SMALL을 반환하며 출력은 변경하지 않습니다. required 또는 snapshot이 NULL이거나, 용량이 충분한데 output이 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. profile_index가 범위를 벗어나면 #PDCOMM_OUT_OF_RANGE를 반환합니다. 패닉(panic)을 격리했으면 #PDCOMM_INTERNAL_ERROR를 반환합니다.
참고
- 스레드 안전성: 스냅샷 읽기는 동시에 실행할 수 있습니다. 해제는 이 읽기와 동기화해야 합니다.