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

pdcomm::replaceFormattedProgramCapabilityCatalog

함수

S7F21에 응답하는 장비의 기능 카탈로그(capability catalog)를 교체합니다.

inline uint64_t replaceFormattedProgramCapabilityCatalog(GemEndpoint &endpoint, const std::string &model, const std::string &softwareRevision, uint8_t commandMaximum, uint32_t byteMaximum, const std::vector<GemFormattedProgramCapabilityCommand> &commands)

선언 위치: #include <pdcomm_gem_formatted_program_capabilities.hpp>

카탈로그 전체를 검증한 뒤 복사합니다. 실패하면 이전 카탈로그가 그대로 유지됩니다. 끝점이 실행 중일 때도 호출할 수 있습니다.

pdcomm::GemFormattedProgramCapabilityCommand command;
command.code = "MOVE"; command.name = "Move"; command.required = true;
command.blockDefinition = -1; command.before = {3, 7}; command.after = 9;
command.immediateAfter = {11}; command.parameters = {&parameter};
const auto revision = pdcomm::replaceFormattedProgramCapabilityCatalog(
    equipment, "MODEL", "REV", 8, 4096, {command});

매개변수

이름설명
endpoint기능 교환이 구성된 장비 끝점(endpoint)입니다.
modelMDLN입니다. ASCII이며 최대 20바이트입니다.
softwareRevisionSOFTREV입니다. ASCII이며 최대 20바이트입니다.
commandMaximumCMDMAX입니다.
byteMaximumBYTMAX입니다.
commands순서대로 나열한 명령 설명입니다.

반환값

새 카탈로그 리비전입니다.

참고

  • 예외 pdcomm::Error: 호스트이거나 구성되지 않았으면 PDCOMM_INVALID_STATE, 텍스트, BLKDEF 또는 파라미터 구조가 잘못되면 PDCOMM_INVALID_ARGUMENT, 한도를 넘으면 PDCOMM_LIMIT_EXCEEDED입니다.