PDComm.GemProgramInfo
구조체
수신한 스트림 7 프로세스 프로그램 요청 또는 응답의 상태를 나타냅니다.
public readonly record struct GemProgramInfo응답은 전송된 사실만 제공합니다. 호스트는 응답만으로 상대방이 프로그램을 저장했는지, 얼마나 영구적으로 저장했는지 추론할 수 없습니다.
매개변수
| 이름 | 설명 |
|---|---|
RequestKind | 거래이며 GemRequestKind.ProgramGrant부터 GemRequestKind.ProgramDirectory까지입니다. |
DeclaredLength | 수신한 S7F1 요청이 선언한 본문 길이(LENGTH)입니다. 그 밖에는 0입니다. |
Durability | 수신한 S7F3 또는 S7F17 요청이 GemEquipment.RespondProgram으로 설치된 내구성 수준입니다. 응답이거나 변경이 설치되기 전이면 GemProgramDurability.None입니다. |
PersistenceStatus | 설치를 확인되지 않은 상태로 남긴 영구 저장 실패의 숫자 PdcommStatus입니다. 그 밖에는 0입니다. |
IdCount | PPID 수입니다. S7F1, S7F3, S7F5 요청은 1, S7F17 요청은 선택 크기(0은 전체), S7F19는 0입니다. 프로그램이 있는 S7F6 응답은 1, 알 수 없는 프로그램이면 0입니다. S7F20 응답은 디렉터리 길이이고, 확인 응답은 0입니다. |
IsRequest | 수신한 1차 메시지이면 true이고, 응답이면 false입니다. |
Responded | 수신한 1차 메시지에 대한 응답을 보냈는지 여부입니다. |
Acknowledgement | S7F1/S7F2이면 PPGNT, S7F3/S7F4와 S7F17/S7F18이면 ACKC7입니다. 응답에서 받은 코드이거나 수신 요청에 대해 준비한 코드이며, 없으면 null입니다. |
Applied | 수신한 S7F3 또는 S7F17 요청이 로컬 저장소를 변경했는지 여부입니다. |
ReplyReady | 준비된 응답이 송신을 기다리는지 여부입니다. 다시 쓰지 않고 보내려면 같은 모드와 결정으로 GemEquipment.RespondProgram을 다시 호출합니다. |
ConfirmationRequired | 설치가 확인되지 않아 GemEquipment.ConfirmProgramReply가 불확실성을 수락할 때까지 응답이 보류되는지 여부입니다. |
GrantActivated | 수신한 S7F1에 대한 응답이 허가를 활성화했는지 여부입니다. 허가가 아직 남아 있는지가 아니라 원래의 활성화 여부를 보고합니다. |
멤버
GemProgramInfo
생성자
수신한 스트림 7 프로세스 프로그램 요청 또는 응답의 상태를 나타냅니다.
public GemProgramInfo(GemRequestKind RequestKind, uint DeclaredLength, GemProgramDurability Durability, int PersistenceStatus, nuint IdCount, bool IsRequest, bool Responded, byte? Acknowledgement, bool Applied, bool ReplyReady, bool ConfirmationRequired, bool GrantActivated)응답은 전송된 사실만 제공합니다. 호스트는 응답만으로 상대방이 프로그램을 저장했는지, 얼마나 영구적으로 저장했는지 추론할 수 없습니다.
매개변수
| 이름 | 설명 |
|---|---|
RequestKind | 거래이며 GemRequestKind.ProgramGrant부터 GemRequestKind.ProgramDirectory까지입니다. |
DeclaredLength | 수신한 S7F1 요청이 선언한 본문 길이(LENGTH)입니다. 그 밖에는 0입니다. |
Durability | 수신한 S7F3 또는 S7F17 요청이 GemEquipment.RespondProgram으로 설치된 내구성 수준입니다. 응답이거나 변경이 설치되기 전이면 GemProgramDurability.None입니다. |
PersistenceStatus | 설치를 확인되지 않은 상태로 남긴 영구 저장 실패의 숫자 PdcommStatus입니다. 그 밖에는 0입니다. |
IdCount | PPID 수입니다. S7F1, S7F3, S7F5 요청은 1, S7F17 요청은 선택 크기(0은 전체), S7F19는 0입니다. 프로그램이 있는 S7F6 응답은 1, 알 수 없는 프로그램이면 0입니다. S7F20 응답은 디렉터리 길이이고, 확인 응답은 0입니다. |
IsRequest | 수신한 1차 메시지이면 true이고, 응답이면 false입니다. |
Responded | 수신한 1차 메시지에 대한 응답을 보냈는지 여부입니다. |
Acknowledgement | S7F1/S7F2이면 PPGNT, S7F3/S7F4와 S7F17/S7F18이면 ACKC7입니다. 응답에서 받은 코드이거나 수신 요청에 대해 준비한 코드이며, 없으면 null입니다. |
Applied | 수신한 S7F3 또는 S7F17 요청이 로컬 저장소를 변경했는지 여부입니다. |
ReplyReady | 준비된 응답이 송신을 기다리는지 여부입니다. 다시 쓰지 않고 보내려면 같은 모드와 결정으로 GemEquipment.RespondProgram을 다시 호출합니다. |
ConfirmationRequired | 설치가 확인되지 않아 GemEquipment.ConfirmProgramReply가 불확실성을 수락할 때까지 응답이 보류되는지 여부입니다. |
GrantActivated | 수신한 S7F1에 대한 응답이 허가를 활성화했는지 여부입니다. 허가가 아직 남아 있는지가 아니라 원래의 활성화 여부를 보고합니다. |
Acknowledgement
속성
S7F1/S7F2이면 PPGNT, S7F3/S7F4와 S7F17/S7F18이면 ACKC7입니다. 응답에서 받은 코드이거나 수신 요청에 대해 준비한 코드이며, 없으면 null입니다.
public byte? Acknowledgement { get; init; }Applied
속성
수신한 S7F3 또는 S7F17 요청이 로컬 저장소를 변경했는지 여부입니다.
public bool Applied { get; init; }ConfirmationRequired
속성
설치가 확인되지 않아 GemEquipment.ConfirmProgramReply가 불확실성을 수락할 때까지 응답이 보류되는지 여부입니다.
public bool ConfirmationRequired { get; init; }DeclaredLength
속성
수신한 S7F1 요청이 선언한 본문 길이(LENGTH)입니다. 그 밖에는 0입니다.
public uint DeclaredLength { get; init; }Durability
속성
수신한 S7F3 또는 S7F17 요청이 GemEquipment.RespondProgram으로 설치된 내구성 수준입니다. 응답이거나 변경이 설치되기 전이면 GemProgramDurability.None입니다.
public GemProgramDurability Durability { get; init; }GrantActivated
속성
수신한 S7F1에 대한 응답이 허가를 활성화했는지 여부입니다. 허가가 아직 남아 있는지가 아니라 원래의 활성화 여부를 보고합니다.
public bool GrantActivated { get; init; }IdCount
속성
PPID 수입니다. S7F1, S7F3, S7F5 요청은 1, S7F17 요청은 선택 크기(0은 전체), S7F19는 0입니다. 프로그램이 있는 S7F6 응답은 1, 알 수 없는 프로그램이면 0입니다. S7F20 응답은 디렉터리 길이이고, 확인 응답은 0입니다.
public nuint IdCount { get; init; }IsRequest
속성
수신한 1차 메시지이면 true이고, 응답이면 false입니다.
public bool IsRequest { get; init; }PersistenceStatus
속성
설치를 확인되지 않은 상태로 남긴 영구 저장 실패의 숫자 PdcommStatus입니다. 그 밖에는 0입니다.
public int PersistenceStatus { get; init; }ReplyReady
속성
준비된 응답이 송신을 기다리는지 여부입니다. 다시 쓰지 않고 보내려면 같은 모드와 결정으로 GemEquipment.RespondProgram을 다시 호출합니다.
public bool ReplyReady { get; init; }RequestKind
속성
거래이며 GemRequestKind.ProgramGrant부터 GemRequestKind.ProgramDirectory까지입니다.
public GemRequestKind RequestKind { get; init; }Responded
속성
수신한 1차 메시지에 대한 응답을 보냈는지 여부입니다.
public bool Responded { get; init; }