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

pdcomm_secs_primitive

함수

원시 페이로드 바이트로 기본형 항목을 만듭니다.

PdcommStatus pdcomm_secs_primitive(uint8_t format, const uint8_t *data, size_t length, const PdcommSecsLimits *options, PdcommSecsItem **out)

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

페이로드는 회선에 나타나는 그대로의 항목 본문입니다. SEMI E5가 요구하는 대로 숫자 요소는 빅 엔디언입니다. 바이트는 복사됩니다.

매개변수

이름설명
format기본형 PDCOMM_SECS_* 형식 코드입니다(#PDCOMM_SECS_LIST는 안 됩니다).
data페이로드 바이트입니다. length가 0이면 NULL일 수 있으며, 이 경우 빈 항목을 만듭니다.
length페이로드 길이(바이트)입니다. format의 요소 너비의 배수여야 하며 최대 16777215입니다.
options적용할 한도입니다. struct_size는 sizeof(PdcommSecsLimits) 이상이어야 합니다.
out새 항목을 받습니다. 실패하면 항상 NULL입니다.

반환값

성공하면 #PDCOMM_OK를 반환합니다. out 또는 options가 NULL이거나, options->struct_size가 너무 작거나, format을 알 수 없거나 #PDCOMM_SECS_LIST이거나, length가 0이 아닌데 data가 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. length가 요소 너비와 맞지 않거나 ASCII 데이터에 0x7F보다 큰 바이트가 있으면 #PDCOMM_INVALID_DATA를 반환합니다. options의 한도를 넘으면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다. 그 밖에 #PDCOMM_ALLOCATION_FAILED 또는 #PDCOMM_INTERNAL_ERROR를 반환합니다.

참고

  • 소유권: pdcomm_secs_destroy()로 항목을 해제합니다.