From 08b6eb0d25de45a51c7bae9140e9d3064cb355b1 Mon Sep 17 00:00:00 2001 From: Byeong-gil Jun Date: Fri, 18 Aug 2023 21:27:29 +0900 Subject: [PATCH] First commit to separate util functions for the federation --- src/core/federation.ts | 21 ++++++++++++++++++++- src/core/reactor.ts | 2 +- 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/core/federation.ts b/src/core/federation.ts index 6de896547..48c08f9c6 100644 --- a/src/core/federation.ts +++ b/src/core/federation.ts @@ -7,7 +7,8 @@ import type { Reaction, Variable, TaggedEvent, - SchedulableAction + SchedulableAction, + UtilityFunctions } from "./internal"; import { Log, @@ -1184,6 +1185,24 @@ class RTIClient extends EventEmitter { }); } } +interface FedreateUtilityFunctions extends UtilityFunctions { + sendRTIMessage: ( + data: T, + destFederateID: number, + destPortID: number + ) => void; + sendRTITimedMessage: ( + data: T, + destFederateID: number, + destPortID: number, + time: TimeValue | undefined + ) => void; + sendRTIPortAbsent: ( + destFederateID: number, + destPortID: number, + additionalDelay: TimeValue | undefined + ) => void; +} /** * Enum type to store the state of stop request. diff --git a/src/core/reactor.ts b/src/core/reactor.ts index 806bf2af7..5f4ede72b 100644 --- a/src/core/reactor.ts +++ b/src/core/reactor.ts @@ -1753,7 +1753,7 @@ export interface Runtime { delete: (r: Reactor) => void; isRunning: () => boolean; } -interface UtilityFunctions { +export interface UtilityFunctions { requestStop: () => void; reportError: (message?: string) => void; requestErrorStop: (message?: string) => void;