pdcomm_gem_spool_capture_event
함수
S6F11 이벤트 보고서를 만들어 스풀(spool)에 제공합니다.
PdcommStatus pdcomm_gem_spool_capture_event(PdcommTcpEndpoint *endpoint, uint32_t data_id, uint32_t event_id, const PdcommGemDataSample *samples, size_t count, uint64_t now, PdcommGemSpoolWriteInfo *info)보고서는 pdcomm_gem_equipment_publish_event_with_data()가 만드는 것과 똑같이, 등록되고 링크되고 활성화된 수집 이벤트(collection event)에 대한 S6F11 W1 메시지로 만들어집니다. 그런 다음 pdcomm_gem_spool_capture()와 같은 방식으로 캡처됩니다.
매개변수
| 이름 | 설명 |
|---|---|
endpoint | 스풀과 이벤트 보고서를 갖춘 GEM 장비로 구성된 Synchronized 상태의 엔드포인트입니다. |
data_id | 보고서의 DATAID입니다. |
event_id | 수집 이벤트의 CEID입니다. |
samples | 캐시된 값 대신 사용할 count개의 데이터 샘플 배열입니다. count가 0이면 NULL일 수 있습니다. |
count | 샘플 개수입니다. |
now | 캡처 시각으로 저장되는 애플리케이션 타임스탬프입니다. |
info | 결과 유형(outcome)을 받습니다. NULL이 아니어야 합니다. |
반환값
pdcomm_gem_spool_capture()와 같습니다. 추가로, 보고서가 구성되지 않았거나, 데이터 변수 없이 샘플을 지정했거나, 이벤트를 알 수 없거나 비활성 상태이거나, 보고할 데이터 값을 얻을 수 없으면 #PDCOMM_INVALID_STATE를 반환합니다. 샘플 값이 NULL이거나, count가 0이 아닌데 samples가 NULL이거나, 샘플이 알 수 없거나 중복된 DVID를 지정하거나 형식 또는 개수가 잘못되었으면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 보고할 VID에 값 출처가 없으면 #PDCOMM_OUT_OF_RANGE를 반환합니다. 샘플 개수나 바이트 수, 또는 만든 보고서가 한도를 넘으면 #PDCOMM_LIMIT_EXCEEDED를 반환합니다.
참고
- 보고서 값과 샘플은 pdcomm_gem_equipment_publish_event_with_data()와 같은 상태 코드로 처리됩니다. 알 수 없거나 비활성인 이벤트 또는 보고서 저장소가 없는 경우는 여기서는 #PDCOMM_INVALID_STATE이고 그 함수에서는 #PDCOMM_INVALID_DATA입니다. 링크된 보고서가 없는 활성 이벤트는 빈 보고서 목록으로 보관됩니다.