pdcomm_gem_configure_formatted_program_queries
함수
엔드포인트에서 S7F25/S7F26 서비스를 활성화합니다.
PdcommStatus pdcomm_gem_configure_formatted_program_queries(PdcommTcpEndpoint *endpoint, const PdcommGemFormattedProgramQueryOptions *options)GEM 역할을 구성한 뒤 엔드포인트가 정지된 동안 엔드포인트마다 한 번 호출합니다. 두 역할 모두 구성할 수 있습니다. 호스트는 요청을 보내고, 장비는 프로그램 저장소에서 요청에 응답합니다. 장비에서는 이 호출이 정형 프로그램 저장소와 함께, 이후 헤더가 사용하는 로컬 선택 상태와 실행 상태도 만듭니다.
매개변수
| 이름 | 설명 |
|---|---|
endpoint | GEM 역할이 구성된 Stopped 상태의 엔드포인트입니다. |
options | 서비스와 저장소 한도입니다. 호출 중에만 읽습니다. |
반환값
성공하면 #PDCOMM_OK를 반환합니다. endpoint 또는 options가 NULL이거나, options->struct_size가 너무 작거나, version 또는 reserved가 잘못되었거나, 큐 한도(max_pending, max_received, max_results, max_history)가 0이거나, max_catalog_entries에 엔드포인트의 message_bytes 한도를 곱한 값이 오버플로하면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 엔드포인트가 정지 상태가 아니거나, 준비된 TCP 이벤트(staged event)가 있거나, GEM 역할이 없거나, 이미 이 서비스가 있으면 #PDCOMM_INVALID_STATE를 반환합니다. max_commands가 너무 크거나 max_catalog_entries에 필요한 저장 공간을 예약할 수 없으면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다. 큐를 할당할 수 없으면 #PDCOMM_ALLOCATION_FAILED를 반환합니다. 엔드포인트가 오염(poisoned) 상태이면 #PDCOMM_POISONED를 반환합니다.
참고
- 스레드 안전성:
endpoint에 대한 다른 모든 호출과 직렬화합니다.