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

pdcomm_gem_equipment_status_metadata

함수

등록된 상태 변수의 이름과 단위를 복사합니다.

PdcommStatus pdcomm_gem_equipment_status_metadata(PdcommTcpEndpoint *endpoint, uint32_t id, uint8_t *name, size_t name_capacity, size_t *name_required, uint8_t *units, size_t units_capacity, size_t *units_required)

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

두 길이를 모두 보고합니다. 어느 한 버퍼라도 너무 작으면 두 버퍼 모두 변경하지 않습니다. 바이트는 종료 문자가 추가되지 않은 ASCII입니다.

매개변수

이름설명
endpoint장비 역할을 가진 유효한 TCP 엔드포인트입니다.
id등록된 상태 변수 ID입니다.
name이름을 받을 대상 버퍼입니다. name_capacity가 0일 때만 NULL일 수 있습니다.
name_capacityname의 크기(바이트)입니다.
name_required이름 길이를 받습니다(NULL이 아니면 먼저 0으로 설정됩니다). NULL이 아니어야 합니다.
units단위를 받을 대상 버퍼입니다. units_capacity가 0일 때만 NULL일 수 있습니다.
units_capacityunits의 크기(바이트)입니다.
units_required단위 길이를 받습니다(NULL이 아니면 먼저 0으로 설정됩니다). NULL이 아니어야 합니다.

반환값

두 문자열을 모두 복사했으면 #PDCOMM_OK를 반환합니다. 어느 한 용량이라도 너무 작으면 #PDCOMM_BUFFER_TOO_SMALL을 반환합니다(두 길이는 설정되고 버퍼는 변경되지 않습니다). endpoint, name_required 또는 units_required가 NULL이거나, 용량이 0이 아닌데 버퍼가 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. id가 등록되어 있지 않으면 #PDCOMM_OUT_OF_RANGE를 반환합니다. 엔드포인트에 장비 역할이 없으면 #PDCOMM_INVALID_STATE를 반환합니다. 준비된 TCP 이벤트(staged event)가 있으면 #PDCOMM_BACKPRESSURE를 반환합니다. 엔드포인트가 오염(poisoned) 상태이면 #PDCOMM_POISONED를 반환합니다.

참고

  • 모든 출력은 쓸 수 있어야 하며 서로 겹치면 안 됩니다.