Skip to content

Adjusting access to utils for federated execution after fed-gen is done #112

@hokeun

Description

@hokeun

After fed-gen is done, the generated .lf files from a federated LF program will be the main reactors, which is currently generated as App class rather than FederatedApp class.
However, inside the network sender body (reaction body), this.util.sendRTITimedMessage will be called in the main reactor. This is currently not possible since App class doesn't implement sendRTIMessage or sendRTITimedMessage like this.

    protected sendRTIMessage<T extends Present>(data: T, destFederateID: number, destPortID: number) {
        throw new Error("Cannot call sendRTIMessage from an App. sendRTIMessage may be called only from a FederatedApp");
    }

    protected sendRTITimedMessage<T extends Present>(data: T, destFederateID: number, destPortID: number) {
        throw new Error("Cannot call sendRTIMessage from an App. sendRTIMessage may be called only from a FederatedApp");
    }

Possible solutions:

  1. Somehow we distinguish a reactor to be generated as FederatedApp and a reactor to be generated as App.
  2. Allow sendRTITimedMessage to be called inside App
  3. Other suggestions? (@lhstrh)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions