Class MablApiBuilder

  • All Implemented Interfaces:
    Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>

    public class MablApiBuilder
    extends java.lang.Object
    implements Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
    • Constructor Detail

      • MablApiBuilder

        public MablApiBuilder()
      • MablApiBuilder

        public MablApiBuilder​(MablApiBuilder.MablSettings settings,
                              org.intocps.maestro.ast.node.INode lastNodePriorToBuilderTakeOver)
        Create a MablApiBuilder
        Parameters:
        settings -
    • Method Detail

      • setRuntimeLogger

        public void setRuntimeLogger​(LoggerFmi2Api runtimeLogger)
      • getDerivativeEstimator

        public org.intocps.maestro.framework.fmi2.api.DerivativeEstimator getDerivativeEstimator()
      • getDataWriter

        public DataWriter getDataWriter()
      • getRealTimeModule

        public RealTime getRealTimeModule()
      • getRootScope

        public IMablScope getRootScope()
        Description copied from interface: Fmi2Builder
        Gets the default scope
        Specified by:
        getRootScope in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
        Returns:
      • getDynamicScope

        public DynamicActiveBuilderScope getDynamicScope()
        Specified by:
        getDynamicScope in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • getCurrentLinkedValue

        public <V,​T> Fmi2Builder.Variable<T,​V> getCurrentLinkedValue​(Fmi2Builder.Port port)
        Description copied from interface: Fmi2Builder
        Gets a tag to the last value obtained for the given port
        Specified by:
        getCurrentLinkedValue in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
        Returns:
      • getDoubleVariableFrom

        public DoubleVariableFmi2Api getDoubleVariableFrom​(org.intocps.maestro.ast.node.PExp exp)
        Specified by:
        getDoubleVariableFrom in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • getIntVariableFrom

        public IntVariableFmi2Api getIntVariableFrom​(org.intocps.maestro.ast.node.PExp exp)
        Specified by:
        getIntVariableFrom in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • getStringVariableFrom

        public StringVariableFmi2Api getStringVariableFrom​(org.intocps.maestro.ast.node.PExp exp)
        Specified by:
        getStringVariableFrom in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • getBooleanVariableFrom

        public BooleanVariableFmi2Api getBooleanVariableFrom​(org.intocps.maestro.ast.node.PExp exp)
        Specified by:
        getBooleanVariableFrom in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • getFmuVariableFrom

        public FmuVariableFmi2Api getFmuVariableFrom​(org.intocps.maestro.ast.node.PExp exp)
        Specified by:
        getFmuVariableFrom in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • buildRaw

        public org.intocps.maestro.ast.node.PStm buildRaw()
                                                   throws org.intocps.maestro.ast.analysis.AnalysisException
        Specified by:
        buildRaw in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
        Throws:
        org.intocps.maestro.ast.analysis.AnalysisException
      • loadRuntimeModule

        public RuntimeModuleVariable loadRuntimeModule​(java.lang.String name,
                                                       java.lang.Object... args)
        Specified by:
        loadRuntimeModule in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • loadRuntimeModule

        public RuntimeModuleVariable loadRuntimeModule​(Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                                       java.lang.String name,
                                                       java.lang.Object... args)
        Specified by:
        loadRuntimeModule in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
      • loadRuntimeModule

        public RuntimeModuleVariable loadRuntimeModule​(Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                                       java.util.function.BiConsumer<Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.ast.node.PStm> variableStoreFunc,
                                                       java.lang.String name,
                                                       java.lang.Object... args)
      • build

        public org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit build()
                                                                                   throws org.intocps.maestro.ast.analysis.AnalysisException
        Specified by:
        build in interface Fmi2Builder<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.ast.node.ASimulationSpecificationCompilationUnit,​org.intocps.maestro.ast.node.PExp>
        Throws:
        org.intocps.maestro.ast.analysis.AnalysisException
      • addExternalLoadedModuleIdentifier

        public void addExternalLoadedModuleIdentifier​(java.lang.String name)
      • getExternalLoadedModuleIdentifiers

        public java.util.Set<java.lang.String> getExternalLoadedModuleIdentifiers()