![]() |
lingua-franca 0.10.1
Lingua Franca code generator
|
Representation of a compile-time instance of a reactor. More...
Inherits org.lflang.generator.NamedInstance< Instantiation >.
Public Member Functions | |
| ReactionInstanceGraph | assignLevels () |
| Assign levels to all reactions within the same root as this reactor. | |
| void | clearCaches () |
| Clear any cached data in this reactor and its children. | |
| void | clearCaches (boolean includingRuntimes) |
| Clear any cached data in this reactor and its children. | |
| ReactorInstance | getChildReactorInstance (Instantiation definition) |
| Return the instance of a child rector created by the specified definition or null if there is none. | |
| Set< NamedInstance<?> > | getCycles () |
| Return the set of ReactionInstance and PortInstance that form causality loops in the topmost parent reactor in the instantiation hierarchy. | |
| T | getDefinition () |
| Return the definition, which is the AST node for this object. | |
| int | getDepth () |
| Get the depth of the reactor instance. | |
| String | getFullName () |
| Return the full name of this instance, which has the form "a.b.c", where "c" is the name of this instance, "b" is the name of its container, and "a" is the name of its container, stopping at the container in main. | |
| String | getFullNameWithJoiner (String joiner) |
| Return a string of the form "a.b.c", where "." is replaced by the specified joiner, "c" is the name of this instance, "b" is the name of its container, and "a" is the name of its container, stopping at the container in main. | |
| PortInstance | getInput (String name) |
| Return the specified input by name or null if there is no such input. | |
| ModeInstance | getMode (boolean direct) |
| Returns the directly/indirectly enclosing mode. | |
| String | getName () |
| Override the base class to append [i_d], where d is the depth, if this reactor is in a bank of reactors. | |
| PortInstance | getOutput (String name) |
| Return the specified output by name or null if there is no such output. | |
| ParameterInstance | getParameter (String name) |
| Return a parameter matching the specified name if the reactor has one and otherwise return null. | |
| ReactorInstance | getParent () |
| Return the parent or null if this is a top-level reactor. | |
| TriggerInstance< BuiltinTriggerVariable > | getShutdownTrigger () |
| Return the shutdown trigger or null if not used in any reaction. | |
| TriggerInstance< BuiltinTriggerVariable > | getStartupTrigger () |
| Return the startup trigger or null if not used in any reaction. | |
| TimeValue | getTimeValue (Expression expr) |
| Assuming that the given expression denotes a valid time, return a time value. | |
| int | getTotalWidth () |
| If this reactor is a bank or any of its parents is a bank, return the total number of runtime instances, which is the product of the widths of all the parents. | |
| int | getTotalWidth (int atDepth) |
| If this reactor is a bank or any of its parents is a bank, return the total number of runtime instances, which is the product of the widths of all the parents. | |
| Set< TriggerInstance<? extends Variable > > | getTriggers () |
| Return the trigger instances (input ports, timers, and actions that trigger reactions) belonging to this reactor instance. | |
| Set< TriggerInstance<? extends Variable > > | getTriggersAndReads () |
| Return the trigger instances (input ports, timers, and actions that trigger reactions) together the ports that the reaction reads but that don't trigger it. | |
| int | getWidth () |
| Return the width of this instance, which in this base class is 1. | |
| boolean | hasCycles () |
| Return true if the top-level parent of this reactor has causality cycles. | |
| boolean | hasParent (ReactorInstance container) |
| Return true if this instance has the specified parent (possibly indirectly, anywhere up the hierarchy). | |
| Integer | initialIntParameterValue (Parameter parameter) |
| Given a parameter definition for this reactor, return the initial integer value of the parameter. | |
| List< Instantiation > | instantiations () |
| Return a list of Instantiation objects for evaluating parameter values. | |
| boolean | isBank () |
| Returns true if this is a bank of reactors. | |
| boolean | isGeneratedDelay () |
| Return true if this is a generated delay reactor that originates from an "after" delay on a connection. | |
| boolean | isMainOrFederated () |
| Returns whether this is a main or federated reactor. | |
| boolean | isParent (ReactorInstance r) |
| Return true if the specified reactor instance is either equal to this reactor instance or a parent of it. | |
| ActionInstance | lookupActionInstance (Action action) |
| Return the action instance within this reactor instance corresponding to the specified action reference. | |
| ModeInstance | lookupModeInstance (Mode mode) |
| Returns the mode instance within this reactor instance corresponding to the specified mode reference. | |
| ParameterInstance | lookupParameterInstance (Parameter parameter) |
| Given a parameter definition, return the parameter instance corresponding to that definition, or null if there is no such instance. | |
| PortInstance | lookupPortInstance (Port port) |
| Given a port definition, return the port instance corresponding to that definition, or null if there is no such instance. | |
| PortInstance | lookupPortInstance (VarRef reference) |
| Given a reference to a port belonging to this reactor instance, return the port instance. | |
| ReactionInstance | lookupReactionInstance (Reaction reaction) |
| Return the reaction instance within this reactor instance corresponding to the specified reaction. | |
| ReactorInstance | lookupReactorInstance (Instantiation instantiation) |
| Return the reactor instance within this reactor that has the specified instantiation. | |
| TimerInstance | lookupTimerInstance (Timer timer) |
| Return the timer instance within this reactor instance corresponding to the specified timer reference. | |
| WatchdogInstance | lookupWatchdogInstance (Watchdog watchdog) |
| Return the watchdog instance within this reactor instance corresponding to the specified watchdog reference. | |
| List< ReactorInstance > | parents () |
| Return a list of all the parents starting with the root(). | |
| ReactorInstance (Instantiation definition, ReactorInstance parent, MessageReporter reporter, int desiredDepth, List< Reactor > reactors) | |
| Create a runtime instance from the specified definition and with the specified parent that instantiated it. | |
| ReactorInstance (Reactor reactor, MessageReporter reporter) | |
| Create a new instantiation hierarchy that starts with the given top-level reactor. | |
| ReactorInstance (Reactor reactor, MessageReporter reporter, int desiredDepth) | |
| Create a new instantiation hierarchy that starts with the given top-level reactor but only creates contained reactors up to the specified depth. | |
| ReactorInstance (Reactor reactor, MessageReporter reporter, List< Reactor > reactors) | |
| Create a new instantiation hierarchy that starts with the given top-level reactor. | |
| ReactorInstance (Reactor reactor, ReactorInstance parent, MessageReporter reporter) | |
| Create a new instantiation with the specified parent. | |
| Expression | resolveParameters (Expression e) |
| ReactorInstance | root () |
| Return the root reactor, which is the top-level parent. | |
| void | setWidth (int width) |
| Set the width. | |
| String | toString () |
| Return a descriptive string. | |
| String | uniqueID () |
Static Public Member Functions | |
| static void | connectPortInstances (RuntimeRange< PortInstance > src, RuntimeRange< PortInstance > dst, Connection connection) |
| Connect the given left port range to the given right port range. | |
Public Attributes | |
| final List< ActionInstance > | actions = new ArrayList<>() |
| The action instances belonging to this reactor instance. | |
| final List< ReactorInstance > | children = new ArrayList<>() |
| The contained reactor instances, in order of declaration. | |
| CEnclaveInstance | containingEnclave |
| The enclave instance corresponding to the containing reactor that is an enclave. | |
| final ReactorInstance | containingEnclaveReactor |
| The nearest containing reactor instance that is an enclave. | |
| final List< PortInstance > | inputs = new ArrayList<>() |
| The input port instances belonging to this reactor instance. | |
| final List< ModeInstance > | modes = new ArrayList<>() |
| The mode instances belonging to this reactor instance. | |
| final List< PortInstance > | outputs = new ArrayList<>() |
| The output port instances belonging to this reactor instance. | |
| final List< ParameterInstance > | parameters = new ArrayList<>() |
| The parameters of this instance. | |
| final List< ReactionInstance > | reactions = new ArrayList<>() |
| List of reaction instances for this reactor instance. | |
| final ReactorDecl | reactorDeclaration |
| The reactor declaration in the AST. | |
| final Reactor | reactorDefinition |
| The reactor after imports are resolve. | |
| final boolean | recursive |
| Indicator that this reactor has itself as a parent, an error condition. | |
| final List< StateVariableInstance > | states = new ArrayList<>() |
| The state variable instances belonging to this reactor instance. | |
| final List< TimerInstance > | timers = new ArrayList<>() |
| The timer instances belonging to this reactor instance. | |
| final Integer | tpoLevel |
| The Total Port Order level with which this was annotated, or null if there is no TPO annotation. | |
| TypeParameterizedReactor | tpr |
| FIXME: What is this? | |
| final List< WatchdogInstance > | watchdogs = new ArrayList<>() |
| List of watchdog instances for this reactor instance. | |
Static Public Attributes | |
| static int | identifierLengthLimit |
| A limit on the number of characters returned by uniqueID. | |
Protected Member Functions | |
| void | createReactionInstances () |
| Create all the reaction instances of this reactor instance and record the dependencies and antidependencies between ports, actions, and timers and reactions. | |
| void | createWatchdogInstances () |
| Create all the watchdog instances of this reactor instance. | |
| TriggerInstance< BuiltinTriggerVariable > | getOrCreateBuiltinTrigger (BuiltinTriggerRef trigger) |
| Returns the built-in trigger or create a new one if none exists. | |
Protected Attributes | |
| List< Instantiation > | _instantiations |
| The nested list of instantiations that created this reactor instance. | |
| Map< BuiltinTrigger, TriggerInstance< BuiltinTriggerVariable > > | builtinTriggers |
| The map of used built-in triggers. | |
| int | depth |
| The depth in the hierarchy of this instance. | |
| MessageReporter | reporter |
| The generator that created this reactor instance. | |
Package Attributes | |
| T | definition |
| The Instantiation AST object from which this was created. | |
| ReactorInstance | parent |
| The reactor instance that creates this instance. | |
| HashMap< String, Integer > | uniqueIDCount |
| Map from a name of the form a_b_c to the number of unique IDs with that prefix that have been already assigned. | |
| int | width |
| The width of this instance. | |
Representation of a compile-time instance of a reactor.
If the reactor is instantiated as a bank of reactors, or if any of its parents is instantiated as a bank of reactors, then one instance of this ReactorInstance class represents all the runtime instances within these banks. The getTotalWidth() method returns the number of such runtime instances, which is the product of the bank width of this reactor instance and the bank widths of all of its parents. There is exactly one instance of this ReactorInstance class for each graphical rendition of a reactor in the diagram view.
For the main reactor, which has no parent, once constructed, this object represents the entire Lingua Franca program. If the program has causality loops (a programming error), then hasCycles() will return true and getCycles() will return the ports and reaction instances involved in the cycles.
| org.lflang.generator.ReactorInstance.ReactorInstance | ( | Reactor | reactor, |
| MessageReporter | reporter, | ||
| List< Reactor > | reactors ) |
Create a new instantiation hierarchy that starts with the given top-level reactor.
| reactor | The top-level reactor. |
| reporter | The error reporter. |
| reactors | The list of all reactors in the program. |
| org.lflang.generator.ReactorInstance.ReactorInstance | ( | Reactor | reactor, |
| MessageReporter | reporter ) |
Create a new instantiation hierarchy that starts with the given top-level reactor.
| reactor | The top-level reactor. |
| reporter | The error reporter. |
| org.lflang.generator.ReactorInstance.ReactorInstance | ( | Reactor | reactor, |
| MessageReporter | reporter, | ||
| int | desiredDepth ) |
Create a new instantiation hierarchy that starts with the given top-level reactor but only creates contained reactors up to the specified depth.
| reactor | The top-level reactor. |
| reporter | The error reporter. |
| desiredDepth | The depth to which to go, or -1 to construct the full hierarchy. |
| org.lflang.generator.ReactorInstance.ReactorInstance | ( | Reactor | reactor, |
| ReactorInstance | parent, | ||
| MessageReporter | reporter ) |
Create a new instantiation with the specified parent.
This constructor is here to allow for unit tests. It should not be used for any other purpose.
| reactor | The top-level reactor. |
| parent | The parent reactor instance. |
| reporter | The error reporter. |
| org.lflang.generator.ReactorInstance.ReactorInstance | ( | Instantiation | definition, |
| ReactorInstance | parent, | ||
| MessageReporter | reporter, | ||
| int | desiredDepth, | ||
| List< Reactor > | reactors ) |
Create a runtime instance from the specified definition and with the specified parent that instantiated it.
| definition | The instantiation statement in the AST. |
| parent | The parent, or null for the main rector. |
| reporter | An error reporter. |
| desiredDepth | The depth to which to expand the hierarchy. |
| reactors | The list of all reactors in the program. |
| ReactionInstanceGraph org.lflang.generator.ReactorInstance.assignLevels | ( | ) |
Assign levels to all reactions within the same root as this reactor.
The level of a reaction r is equal to the length of the longest chain of reactions that must have the opportunity to execute before r at each tag. This returns a non-empty graph if a causality cycle exists.
This method uses a variant of Kahn's algorithm, which is linear in V + E, where V is the number of vertices (reactions) and E is the number of edges (dependencies between reactions).
| void org.lflang.generator.ReactorInstance.clearCaches | ( | ) |
Clear any cached data in this reactor and its children.
This is useful if a mutation has been realized.
| void org.lflang.generator.ReactorInstance.clearCaches | ( | boolean | includingRuntimes | ) |
Clear any cached data in this reactor and its children.
This is useful if a mutation has been realized.
| includingRuntimes | If false, leave the runtime instances of reactions intact. This is useful for federated execution where levels are computed using the top-level connections, but then those connections are discarded. |
|
static |
Connect the given left port range to the given right port range.
NOTE: This method is public to enable its use in unit tests. Otherwise, it should be private. This is why it is defined here, in the section labeled "Private methods."
| src | The source range. |
| dst | The destination range. |
| connection | The connection establishing this relationship. |
|
protected |
Create all the reaction instances of this reactor instance and record the dependencies and antidependencies between ports, actions, and timers and reactions.
This also records the dependencies between reactions that follows from the order in which they are defined.
|
protected |
Create all the watchdog instances of this reactor instance.
| ReactorInstance org.lflang.generator.ReactorInstance.getChildReactorInstance | ( | Instantiation | definition | ) |
Return the instance of a child rector created by the specified definition or null if there is none.
| definition | The definition of the child reactor ("new" statement). |
| Set< NamedInstance<?> > org.lflang.generator.ReactorInstance.getCycles | ( | ) |
Return the set of ReactionInstance and PortInstance that form causality loops in the topmost parent reactor in the instantiation hierarchy.
This will return an empty set if there are no causality loops.
|
inherited |
Return the definition, which is the AST node for this object.
|
inherited |
Get the depth of the reactor instance.
This is 0 for the main reactor, 1 for reactors immediately contained therein, etc.
|
inherited |
Return the full name of this instance, which has the form "a.b.c", where "c" is the name of this instance, "b" is the name of its container, and "a" is the name of its container, stopping at the container in main.
If any reactor in the hierarchy is in a bank of reactors then, it will appear as a[index]. Similarly, if c is a port in a multiport, it will appear as c[index].
|
inherited |
Return a string of the form "a.b.c", where "." is replaced by the specified joiner, "c" is the name of this instance, "b" is the name of its container, and "a" is the name of its container, stopping at the container in main.
| PortInstance org.lflang.generator.ReactorInstance.getInput | ( | String | name | ) |
Return the specified input by name or null if there is no such input.
| name | The input name. |
|
inherited |
Returns the directly/indirectly enclosing mode.
| direct | flag whether to check only for direct enclosing mode or also consider modes of parent reactor instances. |
| String org.lflang.generator.ReactorInstance.getName | ( | ) |
Override the base class to append [i_d], where d is the depth, if this reactor is in a bank of reactors.
|
protected |
Returns the built-in trigger or create a new one if none exists.
| PortInstance org.lflang.generator.ReactorInstance.getOutput | ( | String | name | ) |
Return the specified output by name or null if there is no such output.
| name | The output name. |
| ParameterInstance org.lflang.generator.ReactorInstance.getParameter | ( | String | name | ) |
Return a parameter matching the specified name if the reactor has one and otherwise return null.
| name | The parameter name. |
|
inherited |
Return the parent or null if this is a top-level reactor.
| TriggerInstance< BuiltinTriggerVariable > org.lflang.generator.ReactorInstance.getShutdownTrigger | ( | ) |
Return the shutdown trigger or null if not used in any reaction.
| TriggerInstance< BuiltinTriggerVariable > org.lflang.generator.ReactorInstance.getStartupTrigger | ( | ) |
Return the startup trigger or null if not used in any reaction.
| TimeValue org.lflang.generator.ReactorInstance.getTimeValue | ( | Expression | expr | ) |
Assuming that the given expression denotes a valid time, return a time value.
If the value is given as a parameter reference, this will look up the precise time value assigned to this reactor instance.
| int org.lflang.generator.ReactorInstance.getTotalWidth | ( | ) |
If this reactor is a bank or any of its parents is a bank, return the total number of runtime instances, which is the product of the widths of all the parents.
Return -1 if the width cannot be determined.
| int org.lflang.generator.ReactorInstance.getTotalWidth | ( | int | atDepth | ) |
If this reactor is a bank or any of its parents is a bank, return the total number of runtime instances, which is the product of the widths of all the parents.
Return -1 if the width cannot be determined.
| atDepth | The depth at which to determine the width. Use 0 to get the total number of instances. Use 1 to get the number of instances within a single top-level bank member (this is useful for federates). |
| Set< TriggerInstance<? extends Variable > > org.lflang.generator.ReactorInstance.getTriggers | ( | ) |
Return the trigger instances (input ports, timers, and actions that trigger reactions) belonging to this reactor instance.
| Set< TriggerInstance<? extends Variable > > org.lflang.generator.ReactorInstance.getTriggersAndReads | ( | ) |
Return the trigger instances (input ports, timers, and actions that trigger reactions) together the ports that the reaction reads but that don't trigger it.
|
inherited |
Return the width of this instance, which in this base class is 1.
Subclasses PortInstance and ReactorInstance change this to the multiport and bank widths respectively.
| boolean org.lflang.generator.ReactorInstance.hasCycles | ( | ) |
Return true if the top-level parent of this reactor has causality cycles.
|
inherited |
Return true if this instance has the specified parent (possibly indirectly, anywhere up the hierarchy).
| Integer org.lflang.generator.ReactorInstance.initialIntParameterValue | ( | Parameter | parameter | ) |
Given a parameter definition for this reactor, return the initial integer value of the parameter.
If the parameter is overridden when instantiating this reactor or any of its containing reactors, use that value. Otherwise, use the default value in the reactor definition. If the parameter cannot be found or its value is not an integer, return null.
| parameter | The parameter definition (a syntactic object in the AST). |
| List< Instantiation > org.lflang.generator.ReactorInstance.instantiations | ( | ) |
Return a list of Instantiation objects for evaluating parameter values.
The first object in the list is the AST Instantiation that created this reactor instance, the second is the AST instantiation that created the containing reactor instance, and so on until there are no more containing reactor instances. This will return an empty list if this reactor instance is at the top level (is main).
| boolean org.lflang.generator.ReactorInstance.isBank | ( | ) |
Returns true if this is a bank of reactors.
| boolean org.lflang.generator.ReactorInstance.isGeneratedDelay | ( | ) |
Return true if this is a generated delay reactor that originates from an "after" delay on a connection.
| boolean org.lflang.generator.ReactorInstance.isMainOrFederated | ( | ) |
Returns whether this is a main or federated reactor.
| boolean org.lflang.generator.ReactorInstance.isParent | ( | ReactorInstance | r | ) |
Return true if the specified reactor instance is either equal to this reactor instance or a parent of it.
| r | The reactor instance. |
| ActionInstance org.lflang.generator.ReactorInstance.lookupActionInstance | ( | Action | action | ) |
Return the action instance within this reactor instance corresponding to the specified action reference.
| action | The action as an AST node. |
| ModeInstance org.lflang.generator.ReactorInstance.lookupModeInstance | ( | Mode | mode | ) |
Returns the mode instance within this reactor instance corresponding to the specified mode reference.
| mode | The mode as an AST node. |
| ParameterInstance org.lflang.generator.ReactorInstance.lookupParameterInstance | ( | Parameter | parameter | ) |
Given a parameter definition, return the parameter instance corresponding to that definition, or null if there is no such instance.
| parameter | The parameter definition (a syntactic object in the AST). |
| PortInstance org.lflang.generator.ReactorInstance.lookupPortInstance | ( | Port | port | ) |
Given a port definition, return the port instance corresponding to that definition, or null if there is no such instance.
| port | The port definition (a syntactic object in the AST). |
| PortInstance org.lflang.generator.ReactorInstance.lookupPortInstance | ( | VarRef | reference | ) |
Given a reference to a port belonging to this reactor instance, return the port instance.
Return null if there is no such instance.
| reference | The port reference. |
| ReactionInstance org.lflang.generator.ReactorInstance.lookupReactionInstance | ( | Reaction | reaction | ) |
Return the reaction instance within this reactor instance corresponding to the specified reaction.
| reaction | The reaction as an AST node. |
| ReactorInstance org.lflang.generator.ReactorInstance.lookupReactorInstance | ( | Instantiation | instantiation | ) |
Return the reactor instance within this reactor that has the specified instantiation.
Note that this may be a bank of reactors. Return null if there is no such reactor instance.
| TimerInstance org.lflang.generator.ReactorInstance.lookupTimerInstance | ( | Timer | timer | ) |
Return the timer instance within this reactor instance corresponding to the specified timer reference.
| timer | The timer as an AST node. |
| WatchdogInstance org.lflang.generator.ReactorInstance.lookupWatchdogInstance | ( | Watchdog | watchdog | ) |
Return the watchdog instance within this reactor instance corresponding to the specified watchdog reference.
| watchdog | The watchdog as an AST node. |
|
inherited |
Return a list of all the parents starting with the root().
| Expression org.lflang.generator.ReactorInstance.resolveParameters | ( | Expression | e | ) |
|
inherited |
Return the root reactor, which is the top-level parent.
|
inherited |
Set the width.
This method is here for testing only and should not be used for any other purpose.
| width | The new width. |
| String org.lflang.generator.ReactorInstance.toString | ( | ) |
Return a descriptive string.
| String org.lflang.generator.ReactorInstance.uniqueID | ( | ) |
Append _main to the name of the main reactor to allow instantiations within that reactor to have the same name.
|
protected |
The nested list of instantiations that created this reactor instance.
| final List<ActionInstance> org.lflang.generator.ReactorInstance.actions = new ArrayList<>() |
The action instances belonging to this reactor instance.
|
protected |
The map of used built-in triggers.
| final List<ReactorInstance> org.lflang.generator.ReactorInstance.children = new ArrayList<>() |
The contained reactor instances, in order of declaration.
For banks of reactors, this includes both the bank definition Reactor (which has bankIndex == -2) followed by each of the bank members (which have bankIndex >= 0).
| CEnclaveInstance org.lflang.generator.ReactorInstance.containingEnclave |
The enclave instance corresponding to the containing reactor that is an enclave.
| final ReactorInstance org.lflang.generator.ReactorInstance.containingEnclaveReactor |
The nearest containing reactor instance that is an enclave.
|
packageinherited |
The Instantiation AST object from which this was created.
|
protectedinherited |
The depth in the hierarchy of this instance.
This is 0 for main or federated, 1 for the reactors immediately contained, etc.
|
staticinherited |
A limit on the number of characters returned by uniqueID.
| final List<PortInstance> org.lflang.generator.ReactorInstance.inputs = new ArrayList<>() |
The input port instances belonging to this reactor instance.
| final List<ModeInstance> org.lflang.generator.ReactorInstance.modes = new ArrayList<>() |
The mode instances belonging to this reactor instance.
| final List<PortInstance> org.lflang.generator.ReactorInstance.outputs = new ArrayList<>() |
The output port instances belonging to this reactor instance.
| final List<ParameterInstance> org.lflang.generator.ReactorInstance.parameters = new ArrayList<>() |
The parameters of this instance.
|
packageinherited |
The reactor instance that creates this instance.
| final List<ReactionInstance> org.lflang.generator.ReactorInstance.reactions = new ArrayList<>() |
List of reaction instances for this reactor instance.
| final ReactorDecl org.lflang.generator.ReactorInstance.reactorDeclaration |
The reactor declaration in the AST.
This is either an import or Reactor declaration.
| final Reactor org.lflang.generator.ReactorInstance.reactorDefinition |
The reactor after imports are resolve.
| final boolean org.lflang.generator.ReactorInstance.recursive |
Indicator that this reactor has itself as a parent, an error condition.
|
protected |
The generator that created this reactor instance.
| final List<StateVariableInstance> org.lflang.generator.ReactorInstance.states = new ArrayList<>() |
The state variable instances belonging to this reactor instance.
| final List<TimerInstance> org.lflang.generator.ReactorInstance.timers = new ArrayList<>() |
The timer instances belonging to this reactor instance.
| final Integer org.lflang.generator.ReactorInstance.tpoLevel |
The Total Port Order level with which this was annotated, or null if there is no TPO annotation.
TPO is total port order. See https://github.com/icyphy/lf-pubs/blob/54af48a97cc95058dbfb3333b427efb70294f66c/federated/TOMACS/paper.tex#L1353
| TypeParameterizedReactor org.lflang.generator.ReactorInstance.tpr |
FIXME: What is this?
|
packageinherited |
Map from a name of the form a_b_c to the number of unique IDs with that prefix that have been already assigned.
If none have been assigned, then there is no entry in this map. This map should be non-null only for the main reactor (the top level).
| final List<WatchdogInstance> org.lflang.generator.ReactorInstance.watchdogs = new ArrayList<>() |
List of watchdog instances for this reactor instance.
|
packageinherited |
The width of this instance.
This is 1 for everything except a PortInstance representing a multiport and a ReactorInstance representing a bank.