콘텐츠로 이동
무료 평가 시작

pdcomm_gem300_capability_catalog_create

함수

리비전이 0인 빈 기능 카탈로그를 만듭니다.

PdcommStatus pdcomm_gem300_capability_catalog_create(const PdcommGem300CapabilityOptions *options, PdcommGem300CapabilityCatalog **out)

선언 위치: #include <pdcomm_gem300.h>

옵션은 복사됩니다. 카탈로그는 자체 저장 공간을 가리키는 포인터를 절대 노출하지 않습니다.

매개변수

이름설명
options카탈로그 한도입니다. struct_size는 sizeof(PdcommGem300CapabilityOptions) 이상, version은 #PDCOMM_GEM300_CAPABILITY_OPTIONS_VERSION, reserved는 0이어야 합니다.
out카탈로그를 받습니다. 검증 전에 NULL로 설정되므로 실패하면 항상 NULL입니다.

반환값

성공하면 #PDCOMM_OK를 반환합니다. out 또는 options가 NULL이거나, struct_size가 너무 작거나, version 또는 reserved가 잘못되었으면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 한도가 0이거나 max_capabilities_per_profile이 4보다 크면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다. gem300 모듈을 허가하는 라이선스가 없으면 #PDCOMM_LICENSE_REQUIRED를 반환합니다(옵션을 확인한 뒤 검사하며, 카탈로그를 만들지 않습니다). 패닉(panic)을 격리했으면 #PDCOMM_INTERNAL_ERROR를 반환합니다.

참고

  • 소유권: pdcomm_gem300_capability_catalog_destroy()로 카탈로그를 해제합니다.