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

pdcomm_gem_equipment_configure_constants

함수

장비에 장비 상수(equipment constant) 저장소를 설치합니다.

PdcommStatus pdcomm_gem_equipment_configure_constants(PdcommTcpEndpoint *endpoint, const PdcommGemConstantOptions *options, const PdcommGemConstantDefinition *definitions, size_t count)

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

정의로부터 완전한 임시 저장소를 만들고, 이 저장소(ID, ASCII 메타데이터, 형식, 개수, 경계, NaN과 JIS-8 거부, 바이트 예산)와 기존 보고서 바인딩 및 디렉터리를 검증한 뒤, 모두 유효할 때만 설치합니다. 저장소는 TCP 엔드포인트가 Stopped 상태인 동안 한 번만 구성할 수 있습니다. 실패하면 아무것도 바뀌지 않습니다. 설치 후 장비는 S2F13과 S2F29에 자동으로 응답하고, S2F15는 #PDCOMM_GEM_CONSTANT_CHANGES_RECEIVED로 보고합니다.

매개변수

이름설명
endpoint장비 엔드포인트입니다.
options저장소 한도입니다. version은 #PDCOMM_GEM_CONSTANT_OPTIONS_VERSION, reserved는 0이어야 합니다.
definitionscount개의 정의 배열입니다. count가 0이면 NULL일 수 있습니다.
count정의 개수입니다. 최대 options->max_constants입니다.

반환값

성공하면 #PDCOMM_OK를 반환합니다. endpoint 또는 options가 NULL이거나, 옵션 또는 그 항목 한도가 유효하지 않거나, 필수 항목이 NULL이거나, 길이가 0이 아닌데 문자열 포인터가 NULL이거나, ID 또는 메타데이터가 유효하지 않거나 중복되거나, 값이 형식, 개수, 경계, NaN, JIS-8 규칙을 위반하면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 개수, 식별자, 메타데이터, 값, 항목 한도를 넘으면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다. 엔드포인트가 Stopped 상태가 아니거나, 준비된 TCP 이벤트(staged event)가 있거나, 장비가 아니거나, 이미 상수 저장소가 있거나, GEM 통신이 활성 상태이면 #PDCOMM_INVALID_STATE를 반환합니다. 기존 바인딩이나 디렉터리 대상이 유효하지 않게 되면 #PDCOMM_INVALID_DATA를 반환합니다. 그 밖에 #PDCOMM_ALLOCATION_FAILED 또는 #PDCOMM_POISONED를 반환합니다.