Dreamine.Gem
Dreamine.Gem은 Dreamine SECS-II/HSMS Stack 위에 만든 Code-first GEM Equipment/Host 구현 Surface입니다.
상태 경계
| 범위 | 상태 | Evidence 경계 |
|---|---|---|
E30-0611 derived subset profile v1 구현 Surface |
IMPLEMENTED_UNVERIFIED |
동결된 Source 범위이며 적합성 판정이 아닙니다. |
| 로컬 Unit 및 수작업 Wire Fixture Evidence | PASS |
구조, 상태, ACK, 거부, No-mutation, Correlation을 확인합니다. |
| 로컬 별도 Host/Equipment Process 실제 TCP Evidence | PASS |
공개 QuickStart가 고정 Dialogue 전체와 명시적 Equipment-origin Direction을 실행합니다. |
| 외부 Simulator 또는 생산 장비 | NOT_RUN |
로컬 Evidence로 외부·Field 결과를 승격하지 않습니다. |
| E37.1 적합성 | BLOCKED_STANDARD |
필요한 라이선스 Revision을 사용할 수 없습니다. |
Target Source는 E30-0611과 E5-0813입니다. 최신 Revision 적합성, 인증 또는 외부 상호운용을 주장하지 않습니다.
공개 구현 Surface
GemEquipmentProfileBuilder는 검증된 Code-first Equipment Profile을 Freeze하며CreateContext를 호출할 때마다 격리된 Mutable Runtime 상태를 만듭니다.E30DemoEquipmentProfile.Create()는 고객 장비 의미가 없는 작은 범용 공개 Demo Profile을 제공합니다.E30HostClient는 고정 Host Surface의 형식화된 Call과 Outcome을 제공합니다.E30EquipmentRouter는 정확한 Equipment-side Dispatch와 명시적 Equipment-origin Operation을 담당합니다.E30IdentifierPolicy는 CEID/RPTID/VID/SVID/DVID/ECID/ALID/DATAID별 독립 정수 형식을 보존하며 Raw ACK 값도 관찰할 수 있습니다.HsmsGemTransport는 Application 소유ISecsMessageSession을 연결합니다. Runtime은 전달받은 Session을 소유하거나 Dispose하지 않습니다.- Variable, Constant, Event/Report Snapshot, Alarm, Remote Command, Process Program, Clock, 제한 용량 메모리 Spool 도메인 서비스도 제공합니다. 도메인 서비스의 존재는 Wire 지원을 뜻하지 않습니다.
고정 Dialogue Manifest
정확한 Profile 이름은 E30-0611 derived subset profile v1입니다. 20개 정상
Primary/Secondary Dialogue Definition은 다음과 같습니다.
| 공개 Demo 실행의 Direction | Dialogue |
|---|---|
| Host Request → Equipment Response | S1F1/F2, S1F3/F4, S1F11/F12, S1F13/F14, S1F15/F16, S1F17/F18; S2F13/F14, S2F15/F16, S2F17/F18, S2F29/F30, S2F31/F32, S2F33/F34, S2F35/F36, S2F37/F38, S2F41/F42; S5F3/F4, S5F5/F6; S6F15/F16 |
| Equipment Primary → Host Response | S5F1/F2, S6F11/F12 |
같은 실제 TCP 실행에서 Router의 Typed Operation으로 Equipment-initiated S1F1/F2와 S2F17/F18도 확인합니다. Router는 Equipment-initiated S1F13/F14도 공개합니다. Direction은 명시적이며 20개 Manifest를 모든 Dialogue의 양방향 지원으로 해석하면 안 됩니다.
Code-first Equipment 조립
var profile = E30DemoEquipmentProfile.Create();
var context = profile.CreateContext(new HsmsGemTransport(equipmentSession));
await using var router = new E30EquipmentRouter(
equipmentSession,
context,
new E30EquipmentRouterOptions
{
CommandCompletionEvents = new Dictionary<string, ulong>
{
[E30DemoEquipmentProfile.StartCommand] =
E30DemoEquipmentProfile.CommandCompletedEventId
}
});
Host Process는 선택한 Profile의 Identifier Policy를 사용합니다.
using var host = new E30HostClient(
hostSession,
new E30IdentifierPolicy(profile.IdentifierFormats));
var result = await host.ReadStatusAsync(
[E30DemoEquipmentProfile.EquipmentStateVariableId],
cancellationToken);
Session 연결, Select, Dispatcher 수명, 연결 해제는 Application 책임입니다. 별도 Process 명령은 빠른 시작을 참고하십시오.
WPF Demo 선택
공개 WPF Workbench의 기본값 **E30-0611 derived subset profile v1 (Demo)**는
E30DemoEquipmentProfile.Create()와 E30EquipmentRouter를 사용합니다. 대안
**Educational basic responder (Demo-only, not GEM)**은 일곱 Pair 교육용
Fallback입니다. 선택은 상호 배타적이므로 고정 Router와 Fallback Responder가 동시에
등록되지 않습니다. Workbench README를 참고하십시오.
명시적 제외와 차단된 의미
- 알 수 없는 RPTID의 S6F19/F20은
BLOCKED_STANDARD입니다. - S2F35 Empty Outer-list와 Empty RPTID-list Unlink/Delete Variant는
BLOCKED_STANDARD이며 v1은 상태 변경 없이 Transaction을 종료합니다. - S9F1, S9F9, S9F13은 현재 Safe Provider/Router 경계에서 임의 추정 없이 구성하는 데
필요한 Source Context를 제공하지 않으므로 고정 v1에서
INTENTIONALLY_EXCLUDED입니다. - Multi-block S2F39/F40·S6F5/F6, Trace, Limits, Wire Spooling, S7 Process
Program Wire Service, S10 Terminal Service, Material Handling, Enhanced
Remote Command는
INTENTIONALLY_EXCLUDED입니다.
알려진 제한, 요구사항 추적표, 공개 API Review를 참고하십시오.
라이선스
MIT.
구조 다이어그램
flowchart LR
Runtime["Dreamine.Gem"] --> Contracts["Dreamine.Gem.Abstractions"]
Runtime --> SecsContracts["Dreamine.Secs.Abstractions"]
Runtime --> SecsCom["Dreamine.Secs.Com"]
SecsCom --> SecsContractsAPI 문서
타입
\if KO 알람 wire 데이터입니다. \endif \if EN Represents alarm wire data. \endif
\if KO wire 요청 결과의 종료 형태입니다. ACK 승인과 명령 완료를 혼동하지 않습니다. \endif \if EN Defines how a wire request ended without conflating ACK acceptance with command completion. \endif
\if KO typed 값, raw ACK, timeout·취소를 함께 노출하는 host 호출 결과입니다. \endif \if EN Represents a host call result that exposes its typed value, raw ACK, timeout, and cancellation outcome. \endif
\if KO E30-0611 파생 부분 프로필의 기능 판정입니다. 표준 적합성 판정이 아닙니다. \endif \if EN Describes a capability disposition in the E30-0611 derived subset profile; it is not a standards-conformance verdict. \endif
\if KO 하나의 E30 파생 기능과 근거 제한을 설명합니다. \endif \if EN Describes one E30-derived capability and its evidence boundary. \endif
\if KO 명령 매개변수입니다. \endif \if EN Represents a command parameter. \endif
\if KO 공개 샘플과 Workbench가 함께 사용하는 작고 범용적인 Demo 장비 프로필입니다. 고객 장비 의미를 포함하지 않으며 SEMI/GEM 적합성을 주장하지 않습니다. \endif \if EN Provides the small generic Demo equipment profile shared by the public sample and Workbench. It contains no customer-equipment semantics and makes no SEMI/GEM conformance claim. \endif
\if KO 동결된 E30-0611 파생 부분 프로필 v1의 대화 목록과 명시적 제외 목록입니다. \endif \if EN Exposes the dialogue catalog and explicit exclusions for the frozen E30-0611 derived subset profile v1. \endif
\if KO E30-0611 파생 부분 프로필 v1에서 사용하는 정상 SECS 대화 정의입니다. \endif \if EN Defines the normal SECS dialogues used by the E30-0611 derived subset profile v1. \endif
\if KO 장비 상수 이름 응답 한 항목입니다. \endif \if EN Represents one equipment-constant name response entry. \endif
\if KO provider-neutral session의 exact dispatcher에 E30-0611 파생 부분 프로필 v1 장비 대화를 연결합니다. 표준 적합성 주장이 아닙니다. \endif \if EN Connects E30-0611 derived subset profile v1 equipment dialogues to a provider-neutral session's exact dispatcher; this is not a standards-conformance claim. \endif
\if KO E30 장비 router의 bounded queue와 single-block 경계를 설정합니다. \endif \if EN Configures the bounded queue and single-block boundary of an E30 equipment router. \endif
\if KO ordered RPTID 목록을 보존하는 event link입니다. \endif \if EN Represents an event link preserving ordered RPTID values. \endif
\if KO S6F11/F16 event report의 typed 표현입니다. \endif \if EN Represents a typed S6F11/F16 event report. \endif
\if KO provider-neutral session 위에서 동결 E30-0611 파생 부분 프로필 v1 대화를 제공하는 typed host client입니다. 표준 적합성 주장이 아닙니다. \endif \if EN Provides typed host dialogues for the frozen E30-0611 derived subset profile v1 over a provider-neutral session; this is not a standards-conformance claim. \endif
\if KO HCACK와 매개변수별 CPACK를 분리해 보존합니다. \endif \if EN Preserves HCACK separately from per-parameter CPACK values. \endif
\if KO E30 파생 프로필 ID에 사용하는 고정 무부호 정수 형식입니다. \endif \if EN Defines a fixed unsigned-integer representation for E30-derived identifiers. \endif
\if KO wire ID 계열별 고정 형식을 선택합니다. 동일한 컨텍스트에서 형식 추측을 허용하지 않습니다. \endif \if EN Selects a fixed wire format per identifier family and prevents per-message format guessing in one context. \endif
\if KO peer의 MDLN과 SOFTREV입니다. \endif \if EN Represents a peer's MDLN and SOFTREV. \endif
\if KO 거부된 명령 매개변수와 raw CPACK입니다. \endif \if EN Represents a rejected command parameter and its raw CPACK. \endif
\if KO ordered VID 목록을 보존하는 report 정의입니다. \endif \if EN Represents a report definition preserving ordered VID values. \endif
\if KO 한 report의 ordered 값 목록입니다. \endif \if EN Represents the ordered values in one report. \endif
\if KO 상태 변수 이름 응답 한 항목입니다. \endif \if EN Represents one status-variable name response entry. \endif
\if KO E5-0813 구조를 사용하는 E30-0611 파생 부분 프로필 v1 body codec입니다. \endif \if EN Encodes and decodes the E30-0611 derived subset profile v1 bodies using E5-0813 structures. \endif
\if KO 동결 E30 파생 구조와 맞지 않는 body를 나타냅니다. \endif \if EN Indicates that a body does not match a frozen E30-derived structure. \endif
\if KO 알람 설정과 보고 활성화를 독립적으로 관리합니다. \endif \if EN Manages alarm set state independently from reporting enablement. \endif
\if KO Dreamine GEM 구현 어셈블리를 검색하거나 등록할 때 사용하는 표식입니다. \endif \if EN Marks the assembly boundary used to discover or register Dreamine GEM implementations. \endif
\if KO 시스템 시계를 변경하지 않고 논리 오프셋을 적용하는 GEM 시계입니다. \endif \if EN Provides a GEM clock using a logical offset without changing the system clock. \endif
\if KO E30 통신 상태와 통신 수립 하위 상태를 직렬화합니다. \endif \if EN Serializes E30 communication and establishment state transitions. \endif
\if KO E30 장비 제어 상태 전이를 직렬화합니다. \endif \if EN Serializes E30 equipment-control transitions. \endif
\if KO 검증 가능한 스레드 안전 장비 상수 저장소입니다. \endif \if EN Provides a validated, thread-safe equipment-constant store. \endif
\if KO frozen 프로필과 context-local GEM 런타임을 묶습니다. \endif \if EN Associates a frozen profile with a context-local GEM runtime. \endif
\if KO E30-0611에서 파생한 명시적 subset v1의 불변 장비 프로필입니다. 전체 GEM 적합성 선언이 아닙니다. \endif \if EN Represents an immutable equipment profile for the explicit E30-0611-derived subset v1; it is not a full GEM conformance declaration. \endif
\if KO E30-0611 파생 subset v1 프로필을 코드 우선으로 구성하고 한 번 freeze합니다. \endif \if EN Builds and freezes an E30-0611-derived subset-v1 profile through a code-first API. \endif
\if KO 동적 보고서 연결과 이벤트 데이터 수집을 관리합니다. \endif \if EN Manages dynamic report links and event data collection. \endif
\if KO E30 장비 처리 상태 전이를 직렬화합니다. \endif \if EN Serializes E30 equipment-processing transitions. \endif
\if KO 불투명 PPBODY를 방어적으로 복사하는 메모리 공정 프로그램 저장소입니다. \endif \if EN Provides an in-memory process-program store with defensive PPBODY copies. \endif
\if KO E30-0611 근거의 S1 통신 수립·온라인 식별 시나리오를 처리합니다. 다른 GEM Stream/Function은 이 클래스가 지원한다고 주장하지 않습니다. \endif \if EN Handles E30-0611-based S1 communication-establishment and online-identification scenarios; it does not claim support for other GEM stream/functions. \endif
\if KO 취소와 주입 시간 기반 제한 시간을 지원하는 원격 명령 서비스입니다. \endif \if EN Provides remote commands with cancellation and injected-time timeouts. \endif
\if KO GEM의 독립 상태 모델과 기능별 서비스를 조립하는 런타임입니다. 전송 연결의 소유권은 호출자에게 있습니다. \endif \if EN Composes independent GEM state models and feature services; the caller owns the transport connection. \endif
\if KO 제한 용량 FIFO 메모리 스풀입니다. 영속 저장소나 완전한 wire 시나리오를 주장하지 않습니다. \endif \if EN Provides a bounded FIFO memory spool without claiming persistent storage or complete wire scenarios. \endif
\if KO 스레드 안전 GEM 변수 카탈로그입니다. \endif \if EN Provides a thread-safe GEM variable catalog. \endif
\if KO provider-neutral 을 GEM 메시지 전송 경계에 연결하며 기존 생성자와 호환됩니다. \endif \if EN Adapts a provider-neutral to the GEM message transport boundary while retaining the legacy constructor. \endif
E30AlarmData
\if KO 알람 wire 데이터입니다. \endif \if EN Represents alarm wire data. \endif
E30CallOutcome
\if KO 호출이 취소되었습니다. \endif \if EN The call was canceled. \endif
\if KO 정상 Secondary를 수신했습니다. \endif \if EN A normal secondary was received. \endif
\if KO 원격 측이 Function 0으로 transaction을 종료했습니다. \endif \if EN The peer terminated the transaction with Function 0. \endif
\if KO 정상 Secondary의 구조가 동결 프로필과 맞지 않습니다. \endif \if EN The normal secondary did not match the frozen profile structure. \endif
\if KO 상태 또는 보고 정책 때문에 wire 메시지를 전송하지 않았습니다. \endif \if EN No wire message was sent because state or reporting policy suppressed it. \endif
\if KO transaction 제한 시간이 만료되었습니다. \endif \if EN The transaction timed out. \endif
E30CallResult`1
\if KO 정상 결과를 만듭니다. \endif \if EN Creates a completed result. \endif
\if KO 값 없는 정상 ACK 결과를 만듭니다. \endif \if EN Creates a completed ACK result without a separate value. \endif
\if KO 비정상 종료 결과를 만듭니다. \endif \if EN Creates a non-normal outcome. \endif
\if KO 메시지에 ACK가 있을 때의 raw 한 바이트 값입니다. \endif \if EN Gets the raw one-byte ACK when the dialogue contains one. \endif
\if KO bounded 일반 오류 설명입니다. \endif \if EN Gets a bounded generalized error description. \endif
\if KO 정상 Secondary 수신 여부입니다. raw ACK 0 여부와는 독립적입니다. \endif \if EN Gets whether a normal secondary was received, independently of whether a raw ACK is zero. \endif
\if KO raw ACK가 0인지 나타냅니다. \endif \if EN Gets whether a present raw ACK is zero. \endif
\if KO 종료 형태입니다. \endif \if EN Gets the call outcome. \endif
\if KO 정상 typed 결과입니다. \endif \if EN Gets the normal typed value. \endif
E30CapabilityDisposition
\if KO 현재 provider/router 관찰 경계에서 필요한 원본 문맥을 얻을 수 없어 차단되었습니다. \endif \if EN Blocked because the current provider/router observation boundary does not expose the required original context. \endif
\if KO 현재 보유 표준 근거만으로 의미를 닫을 수 없어 차단되었습니다. \endif \if EN Blocked because the available standards evidence does not close the required semantics. \endif
\if KO 로컬 구조·상태·loopback 검증 범위에서 구현되었습니다. \endif \if EN Implemented within the local structural, state, and loopback verification boundary. \endif
\if KO 구현되었으나 독립 외부 검증이 남아 있습니다. \endif \if EN Implemented while independent external verification remains outstanding. \endif
\if KO 동결된 v1 범위에서 의도적으로 제외되었습니다. \endif \if EN Intentionally excluded from the frozen v1 scope. \endif
E30CapabilityEntry
\if KO 기능 항목을 만듭니다. \endif \if EN Creates a capability entry. \endif
\if KO 구현 판정입니다. \endif \if EN Gets the implementation disposition. \endif
\if KO 기능 이름입니다. \endif \if EN Gets the capability name. \endif
\if KO 판정 근거와 제한입니다. \endif \if EN Gets the rationale and limitation. \endif
E30CommandParameter
\if KO 명령 매개변수입니다. \endif \if EN Represents a command parameter. \endif
E30DemoEquipmentProfile
\if KO 불변이며 여러 장비 context에서 공유 가능한 Demo 프로필을 반환합니다. \endif \if EN Returns the immutable Demo profile that can be shared by multiple equipment contexts. \endif
\if KO Demo ALID입니다. \endif \if EN Gets the Demo ALID. \endif
\if KO Demo batch 크기 ECID입니다. \endif \if EN Gets the Demo batch-size ECID. \endif
\if KO 원격 명령 완료 CEID입니다. \endif \if EN Gets the remote-command-completion CEID. \endif
\if KO 완료 횟수 DVID입니다. \endif \if EN Gets the completed-count DVID. \endif
\if KO 장비 상태 SVID입니다. \endif \if EN Gets the equipment-state SVID. \endif
\if KO Demo 프로필 이름입니다. \endif \if EN Gets the Demo profile name. \endif
\if KO Demo 원격 명령 이름입니다. \endif \if EN Gets the Demo remote-command name. \endif
\if KO 상태 CEID입니다. \endif \if EN Gets the status CEID. \endif
\if KO 기본 RPTID입니다. \endif \if EN Gets the default RPTID. \endif
E30DerivedSubsetManifest
\if KO 구현·차단·제외 상태의 불변 목록입니다. \endif \if EN Gets the immutable capability disposition list. \endif
\if KO 정상 인접 Secondary를 갖는 포함 대화의 불변 목록입니다. \endif \if EN Gets the immutable list of included dialogues with adjacent normal secondaries. \endif
\if KO 표준 적합성 주장이 아닌 동결 프로필 이름입니다. \endif \if EN Gets the frozen profile name, which is not a standards-conformance claim. \endif
E30Dialogues
\if KO S1F1/F2 대화입니다. \endif \if EN Gets the S1F1/F2 dialogue. \endif
\if KO S1F11/F12 대화입니다. \endif \if EN Gets the S1F11/F12 dialogue. \endif
\if KO S1F13/F14 대화입니다. \endif \if EN Gets the S1F13/F14 dialogue. \endif
\if KO S1F15/F16 대화입니다. \endif \if EN Gets the S1F15/F16 dialogue. \endif
\if KO S1F17/F18 대화입니다. \endif \if EN Gets the S1F17/F18 dialogue. \endif
\if KO S1F3/F4 대화입니다. \endif \if EN Gets the S1F3/F4 dialogue. \endif
\if KO S2F13/F14 대화입니다. \endif \if EN Gets the S2F13/F14 dialogue. \endif
\if KO S2F15/F16 대화입니다. \endif \if EN Gets the S2F15/F16 dialogue. \endif
\if KO S2F17/F18 대화입니다. \endif \if EN Gets the S2F17/F18 dialogue. \endif
\if KO S2F29/F30 대화입니다. \endif \if EN Gets the S2F29/F30 dialogue. \endif
\if KO S2F31/F32 대화입니다. \endif \if EN Gets the S2F31/F32 dialogue. \endif
\if KO S2F33/F34 대화입니다. \endif \if EN Gets the S2F33/F34 dialogue. \endif
\if KO S2F35/F36 대화입니다. \endif \if EN Gets the S2F35/F36 dialogue. \endif
\if KO S2F37/F38 대화입니다. \endif \if EN Gets the S2F37/F38 dialogue. \endif
\if KO S2F41/F42 대화입니다. \endif \if EN Gets the S2F41/F42 dialogue. \endif
\if KO S5F1/F2 대화입니다. \endif \if EN Gets the S5F1/F2 dialogue. \endif
\if KO S5F3/F4 대화입니다. \endif \if EN Gets the S5F3/F4 dialogue. \endif
\if KO S5F5/F6 대화입니다. \endif \if EN Gets the S5F5/F6 dialogue. \endif
\if KO S6F11/F12 대화입니다. \endif \if EN Gets the S6F11/F12 dialogue. \endif
\if KO S6F15/F16 대화입니다. \endif \if EN Gets the S6F15/F16 dialogue. \endif
E30EquipmentConstantName
\if KO 장비 상수 이름 응답 한 항목입니다. \endif \if EN Represents one equipment-constant name response entry. \endif
E30EquipmentRouter
\if KO isolated profile context를 nonzero Session ID의 장비 session에 연결합니다. session 소유권은 호출자에게 있습니다. \endif \if EN Connects an isolated profile context to an equipment session with a nonzero Session ID; session ownership remains with the caller. \endif
\if KO 장비 주도 S1F1/F2로 host 존재를 확인하고 선택적 식별 정보를 읽습니다. \endif \if EN Performs equipment-initiated S1F1/F2 to verify host presence and read optional identity data. \endif
\if KO exact registrations와 bounded command worker를 종료합니다. session은 폐기하지 않습니다. \endif \if EN Stops exact registrations and the bounded command worker without disposing the session. \endif
\if KO 장비 주도 S1F13/F14를 수행하고 communication state를 갱신합니다. \endif \if EN Performs equipment-initiated S1F13/F14 and updates communication state. \endif
\if KO 현재 context-local event/report link 스냅샷을 반환합니다. \endif \if EN Returns the current context-local event/report-link snapshot. \endif
\if KO 현재 context-local wire report 정의 스냅샷을 반환합니다. \endif \if EN Returns the current context-local wire report-definition snapshot. \endif
\if KO enabled alarm 상태 변경을 S5F1/F2로 먼저 보고한 뒤 선택적 S6F11/F12 event를 보냅니다. \endif \if EN Reports an enabled alarm change with S5F1/F2 before sending an optional S6F11/F12 event. \endif
\if KO enabled CEID의 single-block S6F11/F12를 전송합니다. \endif \if EN Sends a single-block S6F11/F12 for an enabled CEID. \endif
\if KO 장비 주도 S2F17/F18로 host UTC 시각을 읽습니다. \endif \if EN Reads host UTC time with equipment-initiated S2F17/F18. \endif
E30EquipmentRouterOptions
\if KO 명령 이름별 완료 CEID입니다. 명령 승인 HCACK와 별도로 실행 후 발생합니다. \endif \if EN Gets completion CEIDs by command name; they are emitted after execution separately from acceptance HCACK. \endif
\if KO 명령 실행 queue 용량입니다. \endif \if EN Gets the command-work queue capacity. \endif
\if KO 한 명령 실행 제한 시간입니다. \endif \if EN Gets the execution timeout of one command. \endif
\if KO v1에서 허용하는 단일 block body 최대 바이트 수입니다. \endif \if EN Gets the maximum single-block body size permitted by v1. \endif
E30EventLink
\if KO event link를 만듭니다. \endif \if EN Creates an event link. \endif
\if KO CEID입니다. \endif \if EN Gets the CEID. \endif
\if KO 순서를 보존한 RPTID 목록입니다. \endif \if EN Gets the ordered RPTID list. \endif
E30EventReport
\if KO event report를 만듭니다. \endif \if EN Creates an event report. \endif
\if KO CEID입니다. \endif \if EN Gets the CEID. \endif
\if KO DATAID입니다. \endif \if EN Gets the DATAID. \endif
\if KO 정의 순서의 report 목록입니다. \endif \if EN Gets reports in definition order. \endif
E30HostClient
\if KO nonzero Session ID의 host client를 만들고 장비 주도 필수 대화를 정확한 S/F로 등록합니다. \endif \if EN Creates a host client for a nonzero Session ID and registers equipment-initiated fundamental dialogues by exact S/F. \endif
\if KO S1F1/F2로 장비 식별 정보를 조회합니다. \endif \if EN Reads equipment identification with S1F1/F2. \endif
\if KO single-block S2F33/F34로 report를 정의하고 raw DRACK를 반환합니다. \endif \if EN Defines reports with single-block S2F33/F34 and returns raw DRACK. \endif
\if KO exact dispatcher 등록을 해제합니다. session 소유권은 호출자에게 남습니다. \endif \if EN Removes exact dispatcher registrations; session ownership remains with the caller. \endif
\if KO host 주도 S1F13/F14를 수행합니다. \endif \if EN Performs host-initiated S1F13/F14. \endif
\if KO single-block S2F35/F36으로 event/report를 연결하고 raw LRACK를 반환합니다. \endif \if EN Links events and reports with single-block S2F35/F36 and returns raw LRACK. \endif
\if KO S5F5/F6으로 선택 alarm 데이터를 읽습니다. 빈 ID vector는 전체를 뜻합니다. \endif \if EN Reads selected alarm data with S5F5/F6; an empty ID vector means all. \endif
\if KO S2F29/F30으로 장비 상수 메타데이터를 읽습니다. \endif \if EN Reads equipment-constant metadata with S2F29/F30. \endif
\if KO S2F13/F14로 장비 상수 값을 요청 순서대로 읽습니다. \endif \if EN Reads equipment-constant values in request order with S2F13/F14. \endif
\if KO S6F15/F16으로 CEID의 현재 report를 읽습니다. \endif \if EN Reads the current report for a CEID with S6F15/F16. \endif
\if KO S1F3/F4로 선택 상태 값을 요청 순서대로 읽습니다. 빈 ID 목록은 전체를 뜻합니다. \endif \if EN Reads selected status values in request order with S1F3/F4; an empty ID list means all. \endif
\if KO S1F11/F12로 상태 변수 이름과 단위를 읽습니다. \endif \if EN Reads status-variable names and units with S1F11/F12. \endif
\if KO S2F17/F18로 장비 UTC 시각을 읽습니다. \endif \if EN Reads equipment UTC time with S2F17/F18. \endif
\if KO S1F15/F16 OFF-LINE 전환을 요청하고 raw OFLACK를 반환합니다. \endif \if EN Requests OFF-LINE with S1F15/F16 and returns raw OFLACK. \endif
\if KO S1F17/F18 ON-LINE 전환을 요청하고 raw ONLACK를 반환합니다. \endif \if EN Requests ON-LINE with S1F17/F18 and returns raw ONLACK. \endif
\if KO S2F41/F42 명령 승인 결과를 읽습니다. HCACK 0/4는 완료 증거가 아닙니다. \endif \if EN Reads S2F41/F42 command acceptance; HCACK 0/4 is not completion evidence. \endif
\if KO S5F3/F4로 하나 또는 모든 alarm 보고를 enable/disable하고 raw ACKC5를 반환합니다. \endif \if EN Enables or disables one or all alarm reports with S5F3/F4 and returns raw ACKC5. \endif
\if KO S2F15/F16으로 장비 상수를 일괄 변경하고 raw EAC를 반환합니다. \endif \if EN Changes equipment constants as one batch with S2F15/F16 and returns raw EAC. \endif
\if KO S2F37/F38로 event report를 enable/disable하고 raw ERACK를 반환합니다. \endif \if EN Enables or disables event reports with S2F37/F38 and returns raw ERACK. \endif
\if KO S2F31/F32로 UTC 시각을 설정하고 raw TIACK를 반환합니다. \endif \if EN Sets UTC time with S2F31/F32 and returns raw TIACK. \endif
\if KO 장비가 보낸 S5F1을 구조 검증한 뒤 발생합니다. \endif \if EN Raised after structural validation of an equipment S5F1. \endif
\if KO 장비가 보낸 S6F11을 구조 검증한 뒤 발생합니다. \endif \if EN Raised after structural validation of an equipment S6F11. \endif
E30HostCommandAcknowledgement
\if KO 명령 ACK 결과를 만듭니다. \endif \if EN Creates a command acknowledgement. \endif
\if KO raw HCACK입니다. \endif \if EN Gets the raw HCACK. \endif
\if KO HCACK=3일 때의 매개변수별 raw CPACK 목록입니다. \endif \if EN Gets per-parameter raw CPACK values when HCACK is 3. \endif
E30IdentifierFormat
\if KO U2 식별자 형식입니다. \endif \if EN Selects the U2 identifier format. \endif
\if KO U4 식별자 형식입니다. \endif \if EN Selects the U4 identifier format. \endif
\if KO U8 식별자 형식입니다. \endif \if EN Selects the U8 identifier format. \endif
\if KO U1 식별자 형식입니다. \endif \if EN Selects the U1 identifier format. \endif
E30IdentifierPolicy
\if KO 기본 U4 정책을 만듭니다. \endif \if EN Creates the default U4 policy. \endif
\if KO 장비 프로필의 계열별 형식 정책에서 wire 정책을 만듭니다. \endif \if EN Creates a wire policy from an equipment profile's per-family format policy. \endif
\if KO ALID 형식입니다. \endif \if EN Gets the ALID format. \endif
\if KO CEID 형식입니다. \endif \if EN Gets the CEID format. \endif
\if KO DATAID 형식입니다. \endif \if EN Gets the DATAID format. \endif
\if KO ECID 형식입니다. \endif \if EN Gets the ECID format. \endif
\if KO RPTID 형식입니다. \endif \if EN Gets the RPTID format. \endif
\if KO SVID 형식입니다. \endif \if EN Gets the SVID format. \endif
\if KO 일반 VID 형식입니다. \endif \if EN Gets the general VID format. \endif
E30PeerIdentity
\if KO peer의 MDLN과 SOFTREV입니다. \endif \if EN Represents a peer's MDLN and SOFTREV. \endif
E30RejectedCommandParameter
\if KO 거부된 명령 매개변수와 raw CPACK입니다. \endif \if EN Represents a rejected command parameter and its raw CPACK. \endif
E30ReportDefinition
\if KO report 정의를 만듭니다. 중복 VID는 의도적으로 보존됩니다. \endif \if EN Creates a report definition; duplicate VIDs are intentionally preserved. \endif
\if KO RPTID입니다. \endif \if EN Gets the RPTID. \endif
\if KO 순서와 중복을 보존한 VID 목록입니다. \endif \if EN Gets the ordered VID list with duplicates preserved. \endif
E30ReportValues
\if KO report 값 묶음을 만듭니다. \endif \if EN Creates a report-value group. \endif
\if KO RPTID입니다. \endif \if EN Gets the RPTID. \endif
\if KO VID 정의 순서를 따르는 값 목록입니다. \endif \if EN Gets values in VID-definition order. \endif
E30StatusVariableName
\if KO 상태 변수 이름 응답 한 항목입니다. \endif \if EN Represents one status-variable name response entry. \endif
E30WireCodec
\if KO 한 바이트 Binary ACK를 만듭니다. \endif \if EN Creates a one-byte Binary ACK. \endif
\if KO S5F1 alarm body를 만듭니다. \endif \if EN Creates an S5F1 alarm body. \endif
\if KO S5F3 enable/disable body를 만듭니다. ALID null은 전체 alarm을 의미합니다. \endif \if EN Creates an S5F3 enable/disable body; a null ALID means all alarms. \endif
\if KO S5F6 alarm 목록 body를 만듭니다. \endif \if EN Creates an S5F6 alarm-list body. \endif
\if KO COMMACK와 식별 데이터를 포함한 S1F14 body를 만듭니다. \endif \if EN Creates an S1F14 body containing COMMACK and identification data. \endif
\if KO zero를 허용하는 DATAID item을 만듭니다. \endif \if EN Creates a DATAID item, for which zero is permitted. \endif
\if KO S2F30 장비 상수 이름 body를 만듭니다. \endif \if EN Creates an S2F30 equipment-constant name body. \endif
\if KO S2F15 ECID/ECV body를 만듭니다. \endif \if EN Creates an S2F15 ECID/ECV body. \endif
\if KO S2F37 enable/disable body를 만듭니다. 빈 CEID 목록은 전체 event를 의미합니다. \endif \if EN Creates an S2F37 enable/disable body; an empty CEID list means all events. \endif
\if KO S2F35 event/report link body를 만듭니다. \endif \if EN Creates an S2F35 event/report-link body. \endif
\if KO S6F11/F16 event report body를 만듭니다. \endif \if EN Creates an S6F11/F16 event-report body. \endif
\if KO 동일 Session ID·Stream·System Bytes를 보존한 expert Function 0을 만듭니다. \endif \if EN Creates an expert Function 0 preserving the same session ID, stream, and System Bytes. \endif
\if KO S2F41 명령 body를 만듭니다. \endif \if EN Creates an S2F41 command body. \endif
\if KO S2F42 HCACK/CPACK body를 만듭니다. \endif \if EN Creates an S2F42 HCACK/CPACK body. \endif
\if KO ID 형식에 맞는 단일 무부호 정수 item을 만듭니다. \endif \if EN Creates one unsigned-integer item in the selected identifier format. \endif
\if KO 새 구현용 ID list 구조를 만듭니다. \endif \if EN Creates the list-of-ID structure used by new implementations. \endif
\if KO 선택 형식의 ID vector를 만듭니다. 빈 vector는 'all' 의미에 사용할 수 있습니다. \endif \if EN Creates an ID vector in the selected format; an empty vector may represent 'all' where defined. \endif
\if KO MDLN/SOFTREV body를 만듭니다. \endif \if EN Creates an MDLN/SOFTREV body. \endif
\if KO offending message의 10-byte HSMS data header를 MHEAD/SHEAD로 만듭니다. \endif \if EN Creates the 10-byte HSMS data header of an offending message for MHEAD/SHEAD. \endif
\if KO 한 바이트 Binary ACK를 읽습니다. \endif \if EN Reads a one-byte Binary ACK. \endif
\if KO S5F1 alarm body를 읽습니다. \endif \if EN Reads an S5F1 alarm body. \endif
\if KO S5F3 enable/disable body를 읽습니다. \endif \if EN Reads an S5F3 enable/disable body. \endif
\if KO S5F6 alarm 목록 body를 읽습니다. \endif \if EN Reads an S5F6 alarm-list body. \endif
\if KO S1F14 body를 읽습니다. \endif \if EN Reads an S1F14 body. \endif
\if KO zero를 허용하는 단일 DATAID를 읽습니다. \endif \if EN Reads one DATAID, for which zero is permitted. \endif
\if KO S2F30 장비 상수 이름 body를 읽습니다. \endif \if EN Reads an S2F30 equipment-constant name body. \endif
\if KO S2F15 ECID/ECV body를 stage용 불변 목록으로 읽습니다. \endif \if EN Reads an S2F15 ECID/ECV body into an immutable staging list. \endif
\if KO S2F37 enable/disable body를 stage용으로 읽습니다. \endif \if EN Reads an S2F37 enable/disable body for staging. \endif
\if KO S2F35 event/report link를 stage용으로 읽습니다. \endif \if EN Reads S2F35 event/report links for staging. \endif
\if KO S6F11/F16 event report body를 읽고 report/value 순서를 보존합니다. \endif \if EN Reads an S6F11/F16 event-report body while preserving report and value order. \endif
\if KO S2F41 명령 body를 stage용으로 읽습니다. \endif \if EN Reads an S2F41 command body for staging. \endif
\if KO S2F42 HCACK/CPACK body를 읽습니다. \endif \if EN Reads an S2F42 HCACK/CPACK body. \endif
\if KO 선택 형식의 단일 ID를 엄격히 읽습니다. \endif \if EN Strictly reads one identifier in the selected format. \endif
\if KO 새 구현용 ID list 구조를 엄격히 읽습니다. \endif \if EN Strictly reads the list-of-ID structure used by new implementations. \endif
\if KO 선택 형식의 ID vector를 엄격히 읽습니다. \endif \if EN Strictly reads an identifier vector in the selected format. \endif
\if KO MDLN/SOFTREV 또는 host zero-length list를 읽습니다. \endif \if EN Reads MDLN/SOFTREV or the host zero-length list. \endif
\if KO S2F33 report 정의를 stage용으로 읽고 report·VID 순서를 보존합니다. \endif \if EN Reads S2F33 report definitions for staging while preserving report and VID order. \endif
\if KO S1F12 상태 변수 이름 body를 읽습니다. \endif \if EN Reads an S1F12 status-variable name body. \endif
\if KO 12 또는 16자리 TIME을 엄격히 UTC로 읽습니다. \endif \if EN Strictly reads a 12- or 16-character TIME as UTC. \endif
\if KO value list를 읽습니다. \endif \if EN Reads a value list. \endif
\if KO S2F33 report 정의 body를 만듭니다. \endif \if EN Creates an S2F33 report-definition body. \endif
\if KO S1F12 상태 변수 이름 body를 만듭니다. \endif \if EN Creates an S1F12 status-variable name body. \endif
\if KO offending header와 System Bytes를 연결한 expert S9 message를 만듭니다. \endif \if EN Creates an expert S9 message correlated with the offending header and System Bytes. \endif
\if KO 12 또는 16자리 UTC TIME을 만듭니다. \endif \if EN Creates a 12- or 16-character UTC TIME. \endif
\if KO 요청 순서의 value list를 만듭니다. \endif \if EN Creates a value list in request order. \endif
E30WireFormatException
\if KO 일반화된 구조 오류를 만듭니다. \endif \if EN Creates a generalized structural error. \endif
GemAlarmService
\if KO 보고 활성화를 변경하고 unknown/no-change/changed를 결정적으로 구분합니다. \endif \if EN Changes reporting enablement and deterministically distinguishes unknown, no-change, and changed results. \endif
\if KO ALID 순서의 정의·enable·set 불변 스냅샷을 반환합니다. \endif \if EN Returns immutable definition/enable/set snapshots ordered by ALID. \endif
GemClockService
\if KO 시간 공급자로 시계를 만듭니다. \endif \if EN Creates the clock with a time provider. \endif
GemCommunicationStateMachine
\if KO 통신 수립 수락을 기록합니다. 동시 수립 시도에도 사용할 수 있습니다. \endif \if EN Records accepted communication establishment, including simultaneous attempts. \endif
\if KO 수립된 통신의 손실을 기록합니다. \endif \if EN Records loss of established communication. \endif
\if KO 통신 기능을 비활성화합니다. \endif \if EN Disables communication. \endif
\if KO 통신 기능을 활성화합니다. \endif \if EN Enables communication. \endif
\if KO 장비 주도 통신 요청의 전송을 기록합니다. \endif \if EN Records transmission of an equipment-initiated communication request. \endif
\if KO 통신 요청 거부 또는 제한 시간 만료 후 재시도를 예약합니다. \endif \if EN Schedules a retry after rejection or timeout. \endif
\if KO 현재 통신 수립 하위 상태입니다. \endif \if EN Gets the current establishment substate. \endif
\if KO 현재 통신 상태입니다. \endif \if EN Gets the current communication state. \endif
GemControlStateMachine
\if KO 온라인 시도를 로컬 상태로 수락합니다. \endif \if EN Accepts an online attempt into local control. \endif
\if KO 장비가 온라인 전환을 시도하게 합니다. \endif \if EN Starts an equipment-initiated online attempt. \endif
\if KO 장비 오프라인으로 전환합니다. \endif \if EN Transitions to equipment offline. \endif
\if KO 호스트 오프라인으로 전환합니다. \endif \if EN Transitions to host offline. \endif
\if KO 온라인 시도를 거부하여 장비 오프라인으로 돌아갑니다. \endif \if EN Rejects an online attempt and returns equipment offline. \endif
\if KO 온라인 로컬로 전환합니다. \endif \if EN Selects online local control. \endif
\if KO 온라인 원격으로 전환합니다. \endif \if EN Selects online remote control. \endif
\if KO 현재 제어 상태입니다. \endif \if EN Gets the current control state. \endif
GemEquipmentConstantService
\if KO ECID 순서의 정의·현재값 불변 스냅샷을 반환합니다. \endif \if EN Returns an immutable definition/current-value snapshot ordered by ECID. \endif
\if KO 정확한 SECS Item 형식을 포함해 상수를 등록합니다. \endif \if EN Registers a constant with an exact SECS item format. \endif
\if KO 모든 항목을 먼저 stage·검증한 후 한 번에 적용합니다. 실패 시 어떤 값도 변경하지 않습니다. \endif \if EN Stages and validates every entry before applying them together; no value changes on failure. \endif
GemEquipmentContext
\if KO 공유 가능한 불변 프로필입니다. \endif \if EN Gets the shareable immutable profile. \endif
\if KO 이 컨텍스트만의 mutable 상태와 서비스를 소유하는 런타임입니다. \endif \if EN Gets the runtime owning mutable state and services for this context only. \endif
GemEquipmentProfile
\if KO 이 frozen 프로필에서 완전히 격리된 mutable 장비 컨텍스트를 만듭니다. 전송 소유권은 호출자에게 있습니다. \endif \if EN Creates a fully isolated mutable equipment context from this frozen profile; the caller owns the transport. \endif
\if KO ALID 순서의 알람 정의 스냅샷입니다. \endif \if EN Gets alarm definitions ordered by ALID. \endif
\if KO 고정 기능 스냅샷입니다. \endif \if EN Gets the frozen capability snapshot. \endif
\if KO CEID 순서의 기본 수집 이벤트 스냅샷입니다. \endif \if EN Gets default collection events ordered by CEID. \endif
\if KO ECID 순서의 장비 상수 정의 스냅샷입니다. \endif \if EN Gets equipment-constant definitions ordered by ECID. \endif
\if KO 식별자 계열별 형식 정책입니다. \endif \if EN Gets the identifier-family format policy. \endif
\if KO 장비 식별 정보입니다. \endif \if EN Gets the equipment identity. \endif
\if KO 프로필 이름입니다. \endif \if EN Gets the profile name. \endif
\if KO 이름 순서의 원격 명령 정의 스냅샷입니다. \endif \if EN Gets remote-command definitions ordered by name. \endif
\if KO RPTID 순서의 기본 보고서 스냅샷입니다. \endif \if EN Gets default reports ordered by RPTID. \endif
\if KO 명시적 대상 Revision/범위 라벨입니다. \endif \if EN Gets the explicit target revision/scope label. \endif
\if KO subset v1의 고정 기능 스냅샷입니다. Process Program, Spool, Trace, Limits 및 Terminal은 포함하지 않습니다. \endif \if EN Gets the fixed subset-v1 capability snapshot; Process Program, Spool, Trace, Limits, and Terminal are not included. \endif
\if KO ID 순서의 변수 정의 스냅샷입니다. \endif \if EN Gets variable definitions ordered by ID. \endif
GemEquipmentProfileBuilder
\if KO 프로필 builder를 만듭니다. 기본 식별자 형식은 모든 계열 U4입니다. \endif \if EN Creates a profile builder; every identifier family defaults to U4. \endif
\if KO 알람을 추가합니다. \endif \if EN Adds an alarm. \endif
\if KO 기본 수집 이벤트를 추가합니다. \endif \if EN Adds a default collection event. \endif
\if KO 장비 상수와 검증·제어 상태 정책을 추가합니다. \endif \if EN Adds an equipment constant with validation and control-state policy. \endif
\if KO 형식화된 원격 명령과 실행기를 추가합니다. \endif \if EN Adds a typed remote command and handler. \endif
\if KO 기본 보고서를 추가합니다. \endif \if EN Adds a default report. \endif
\if KO 상태 또는 데이터 변수와 판독기를 추가합니다. \endif \if EN Adds a status or data variable and its reader. \endif
\if KO 모든 참조·중복·범위를 검증하고 프로필을 영구 freeze합니다. \endif \if EN Validates every reference, duplicate, and range and permanently freezes the profile. \endif
\if KO 식별자 형식 정책입니다. \endif \if EN Gets the identifier format policy. \endif
\if KO 장비 식별 정보입니다. \endif \if EN Gets the equipment identity. \endif
\if KO 프로필 이름입니다. \endif \if EN Gets the profile name. \endif
\if KO 대상 Revision/범위 라벨입니다. \endif \if EN Gets the target revision/scope label. \endif
GemEventReportService
\if KO 변수 카탈로그와 시간 공급자로 서비스를 만듭니다. \endif \if EN Creates the service with a variable catalog and time provider. \endif
\if KO 여러 이벤트의 연결을 검증하고 선택적으로 기존 연결을 거부하며, 연결 교체와 disable을 하나의 원자적 commit으로 적용합니다. \endif \if EN Validates links for multiple events, optionally rejects existing links, and applies link replacement plus disablement in one atomic commit. \endif
\if KO 보고서 추가와 삭제를 하나의 candidate 구성에서 검증하고 원자적으로 적용합니다. 삭제된 보고서의 이벤트 연결도 같은 commit에서 제거합니다. \endif \if EN Validates report additions and deletions in one candidate configuration and applies them atomically; event links to removed reports are pruned in the same commit. \endif
\if KO 보고서 정의 묶음을 전체 검증한 뒤 원자적으로 추가합니다. Wire ACK를 생성하지 않습니다. \endif \if EN Validates a report-definition batch completely before adding it atomically; this does not produce a wire ACK. \endif
\if KO 모든 수집 이벤트의 보고서 연결을 하나의 원자적 변경으로 제거합니다. Wire 의미는 상위 프로필이 결정합니다. \endif \if EN Removes report links from every collection event as one atomic change; the upper profile decides wire semantics. \endif
\if KO 모든 보고서 정의와 이벤트 연결을 하나의 원자적 변경으로 제거합니다. \endif \if EN Removes every report definition and event link as one atomic change. \endif
\if KO RPTID 묶음을 전체 검증한 뒤 원자적으로 삭제합니다. 연결 중인 보고서가 있으면 변경하지 않습니다. \endif \if EN Validates an RPTID batch before deleting it atomically; no change occurs when a selected report is linked. \endif
\if KO CEID 순서의 정의·연결·enable 스냅샷을 반환합니다. \endif \if EN Returns definition/link/enablement snapshots ordered by CEID. \endif
\if KO RPTID 순서의 불변 보고서 정의 스냅샷을 반환합니다. \endif \if EN Returns immutable report definitions ordered by RPTID. \endif
\if KO 여러 이벤트의 보고서 연결을 전체 검증한 뒤 원자적으로 교체합니다. \endif \if EN Validates and atomically replaces report links for multiple events. \endif
\if KO 모든 이벤트의 enable 상태를 원자적으로 설정합니다. \endif \if EN Atomically sets enablement for every event. \endif
\if KO 여러 이벤트의 enable 상태를 전체 검증한 뒤 원자적으로 적용합니다. \endif \if EN Validates and atomically applies enablement updates for multiple events. \endif
GemProcessingStateMachine
\if KO 활성 공정을 중단하고 유휴 상태로 돌아갑니다. \endif \if EN Aborts an active process and returns idle. \endif
\if KO 공정 설정을 시작합니다. \endif \if EN Begins process setup. \endif
\if KO 실행을 완료하고 유휴 상태로 돌아갑니다. \endif \if EN Completes execution and returns idle. \endif
\if KO 초기화를 완료합니다. \endif \if EN Completes initialization. \endif
\if KO 공정 실행을 시작합니다. \endif \if EN Starts execution. \endif
\if KO 실행을 일시 정지합니다. \endif \if EN Pauses execution. \endif
\if KO 공정 실행 준비를 완료합니다. \endif \if EN Marks the process ready. \endif
\if KO 일시 정지된 실행을 재개합니다. \endif \if EN Resumes paused execution. \endif
\if KO 현재 처리 상태입니다. \endif \if EN Gets the current processing state. \endif
GemProcessProgramService
GemProtocolEngine
\if KO 주입된 전송, 상태, 식별 정보 및 시간 정책으로 엔진을 만듭니다. \endif \if EN Creates the engine from injected transport, state, identity, and time policy. \endif
\if KO 장비 주도 S1F13을 한 번 수행합니다. 거부 시 재시도 대기 상태를 반환합니다. \endif \if EN Performs one equipment-initiated S1F13 attempt and enters retry-wait state on rejection. \endif
\if KO 지원되는 host-initiated S1 primary를 처리하고 응답 여부를 반환합니다. \endif \if EN Handles a supported host-initiated S1 primary and returns whether it responded. \endif
GemRemoteCommandService
\if KO 시간 공급자로 서비스를 만듭니다. \endif \if EN Creates the service with a time provider. \endif
\if KO 필수/선택 및 형식화된 매개변수를 가진 프로필 명령을 등록합니다. \endif \if EN Registers a profile command with required/optional typed parameters. \endif
GemRuntime
\if KO 전송, 장비 식별 정보, 시간 정책 및 스풀 용량으로 런타임을 만듭니다. \endif \if EN Creates a runtime from transport, equipment identity, time policy, and spool capacity. \endif
\if KO 알람 서비스입니다. \endif \if EN Gets the alarm service. \endif
\if KO 논리 GEM 시계입니다. \endif \if EN Gets the logical GEM clock. \endif
\if KO 원격 명령 서비스입니다. \endif \if EN Gets the remote-command service. \endif
\if KO 통신 상태 모델입니다. \endif \if EN Gets the communication state model. \endif
\if KO 장비 상수 서비스입니다. \endif \if EN Gets the equipment-constant service. \endif
\if KO 제어 상태 모델입니다. \endif \if EN Gets the control state model. \endif
\if KO 이벤트·보고서 서비스입니다. \endif \if EN Gets the event/report service. \endif
\if KO 장비 처리 상태 모델입니다. \endif \if EN Gets the equipment-processing state model. \endif
\if KO 공정 프로그램 서비스입니다. \endif \if EN Gets the process-program service. \endif
\if KO 이 런타임을 구성한 frozen 장비 프로필입니다. 기존 생성자로 만든 런타임은 null입니다. \endif \if EN Gets the frozen equipment profile that configured this runtime; null for runtimes created by the legacy constructor. \endif
\if KO 지원되는 S1 시나리오 엔진입니다. \endif \if EN Gets the supported S1 scenario engine. \endif
\if KO 제한 용량 메모리 스풀입니다. \endif \if EN Gets the bounded memory spool. \endif
\if KO GEM 메시지 전송 경계입니다. \endif \if EN Gets the GEM message transport. \endif
\if KO 변수 카탈로그입니다. \endif \if EN Gets the variable catalog. \endif
GemSpoolService
\if KO 양의 용량으로 스풀을 만듭니다. \endif \if EN Creates a spool with positive capacity. \endif
GemVariableCatalog
\if KO 정확한 SECS Item 형식과 함께 변수를 등록합니다. 판독 결과 형식은 매번 확인됩니다. \endif \if EN Registers a variable with an exact SECS item format that is checked on every read. \endif
HsmsGemTransport
\if KO HSMS 세션과 SECS Session ID로 어댑터를 만듭니다. 세션 소유권은 호출자에게 있습니다. \endif \if EN Creates an adapter from an HSMS session and SECS session ID; the caller retains session ownership. \endif
\if KO provider-neutral 메시지 세션으로 어댑터를 만들고 설정된 Session ID를 사용합니다. 세션 소유권은 호출자에게 있습니다. \endif \if EN Creates an adapter from a provider-neutral message session, uses its configured session ID, and leaves session ownership with the caller. \endif