Class ComponentVariableFmi2Api

  • All Implemented Interfaces:
    org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.ProvidesTypedReferenceExp, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.NamedVariable<org.intocps.maestro.ast.node.PStm>>, IndexedVariableFmi2Api<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.NamedVariable<org.intocps.maestro.ast.node.PStm>>

    public class ComponentVariableFmi2Api
    extends VariableFmi2Api<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.NamedVariable<org.intocps.maestro.ast.node.PStm>>
    implements org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  ComponentVariableFmi2Api.FmiFunctionType  
      • Nested classes/interfaces inherited from interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable

        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortExpressionValueMap, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortValueMap<V extends java.lang.Object>, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortVariableMap<S extends java.lang.Object,​V extends java.lang.Object>
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void enterInitializationMode()  
      void enterInitializationMode​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)  
      void exitInitializationMode()  
      void exitInitializationMode​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get()  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(int... valueReferences)  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(java.lang.String... names)  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)  
      java.util.List<PortFmi2Api> getAllConnectedOutputs()  
      <V> java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> getAndShare()  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> getAndShare​(java.lang.String... names)
      Stores the final value in rootScope Uses the rootScope for valueReferences
      <V> java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> getAndShare​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)  
      java.util.Map<PortFmi2Api,​java.util.List<VariableFmi2Api<java.lang.Object>>> getDerivatives​(java.util.List<PortFmi2Api> ports, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)  
      java.lang.String getEnvironmentName()  
      org.intocps.maestro.fmi.Fmi2ModelDescription getModelDescription()  
      java.lang.String getName()  
      FmuVariableFmi2Api getOwner()  
      PortFmi2Api getPort​(int valueReference)  
      PortFmi2Api getPort​(java.lang.String name)  
      java.util.List<PortFmi2Api> getPorts()  
      java.util.List<PortFmi2Api> getPorts​(int... valueReferences)  
      java.util.List<PortFmi2Api> getPorts​(java.lang.String... names)  
      VariableFmi2Api getShared​(java.lang.String name)  
      VariableFmi2Api getShared​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port)  
      VariableFmi2Api getSingle​(java.lang.String name)  
      <V> VariableFmi2Api<V> getSingle​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port)  
      org.intocps.maestro.framework.fmi2.api.Fmi2Builder.StateVariable<org.intocps.maestro.ast.node.PStm> getState()  
      org.intocps.maestro.framework.fmi2.api.Fmi2Builder.StateVariable<org.intocps.maestro.ast.node.PStm> getState​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)  
      <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> getTentative​(IMablScope scope, java.lang.String... names)  
      java.util.List<PortFmi2Api> getVariablesToLog()  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortExpressionValueMap value)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortValueMap<V> value)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortVariableMap<org.intocps.maestro.ast.node.PStm,​V> value)  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port p, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.ExpressionValue v)  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value value)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, java.util.List<PortFmi2Api> selectedPorts, java.util.function.Function<PortFmi2Api,​java.util.Map.Entry<org.intocps.maestro.ast.node.PExp,​org.intocps.maestro.ast.node.PType>> portToValue)  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortExpressionValueMap value)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortValueMap<V> value)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortVariableMap<org.intocps.maestro.ast.node.PStm,​V> value)  
      void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port p, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.ExpressionValue v)  
      <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)  
      void setDebugLogging​(java.util.List<java.lang.String> categories, boolean enableLogging)  
      void setDerivatives​(ArrayVariableFmi2Api derValInBuf, ArrayVariableFmi2Api derOrderInBuf, ArrayVariableFmi2Api derRefInBuf, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
      If two derivative ports 'Out1' (linked to 'In1') and 'Out2' (linked to 'In2') with a max derivative order of 2 and 1 then derValInBuf = [der(Out1), der(der(Out1)), der(Out2))], derOrderInBuf = [1,2,1], derRefInBuf = [In1, In1, In2]
      void setInt​(java.util.Map<? extends java.lang.Integer,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value<java.lang.Integer>> values)  
      void setLinked()  
      void setLinked​(long... filterValueReferences)  
      void setLinked​(java.lang.String... filterNames)  
      void setLinked​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... filterPorts)  
      void setLinked​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... filterPorts)  
      void setString​(java.util.Map<? extends java.lang.String,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value<java.lang.String>> value)  
      void setupExperiment​(double startTime, java.lang.Double endTime, java.lang.Double tolerance)  
      void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> startTime, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> endTime, java.lang.Double tolerance)  
      void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, double startTime, java.lang.Double endTime, java.lang.Double tolerance)  
      void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> startTime, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> endTime, java.lang.Double tolerance)  
      void setVariablesToLog​(java.util.List<org.intocps.maestro.framework.fmi2.RelationVariable> variablesToLog)  
      <V> void share​(java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> values)  
      <V> void share​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)  
      java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize)  
      java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm> noSetFMUStatePriorToCurrentPoint)  
      java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize)  
      java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize, org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm> noSetFMUStatePriorToCurrentPoint)  
      void terminate()  
      void terminate​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable

        getDeclaredScope, setValue, setValue, setValue, setValue
    • Constructor Detail

      • ComponentVariableFmi2Api

        public ComponentVariableFmi2Api​(org.intocps.maestro.ast.node.PStm declaration,
                                        FmuVariableFmi2Api parent,
                                        java.lang.String name,
                                        ModelDescriptionContext modelDescriptionContext,
                                        MablApiBuilder builder,
                                        IMablScope declaringScope,
                                        org.intocps.maestro.ast.node.PStateDesignator designator,
                                        org.intocps.maestro.ast.node.PExp referenceExp)
      • ComponentVariableFmi2Api

        public ComponentVariableFmi2Api​(org.intocps.maestro.ast.node.PStm declaration,
                                        FmuVariableFmi2Api parent,
                                        java.lang.String name,
                                        ModelDescriptionContext modelDescriptionContext,
                                        MablApiBuilder builder,
                                        IMablScope declaringScope,
                                        org.intocps.maestro.ast.node.PStateDesignator designator,
                                        org.intocps.maestro.ast.node.PExp referenceExp,
                                        java.lang.String environmentName)
    • Method Detail

      • getModelDescription

        public org.intocps.maestro.fmi.Fmi2ModelDescription getModelDescription()
      • getVariablesToLog

        public java.util.List<PortFmi2Api> getVariablesToLog()
      • setVariablesToLog

        public void setVariablesToLog​(java.util.List<org.intocps.maestro.framework.fmi2.RelationVariable> variablesToLog)
      • share

        public <V> void share​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port,
                              org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)
        Specified by:
        share in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setDebugLogging

        public void setDebugLogging​(java.util.List<java.lang.String> categories,
                                    boolean enableLogging)
        Specified by:
        setDebugLogging in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setupExperiment

        public void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> startTime,
                                    org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> endTime,
                                    java.lang.Double tolerance)
        Specified by:
        setupExperiment in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setupExperiment

        public void setupExperiment​(double startTime,
                                    java.lang.Double endTime,
                                    java.lang.Double tolerance)
        Specified by:
        setupExperiment in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • enterInitializationMode

        public void enterInitializationMode()
        Specified by:
        enterInitializationMode in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • exitInitializationMode

        public void exitInitializationMode()
        Specified by:
        exitInitializationMode in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setupExperiment

        public void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                    org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> startTime,
                                    org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> endTime,
                                    java.lang.Double tolerance)
        Specified by:
        setupExperiment in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setupExperiment

        public void setupExperiment​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                    double startTime,
                                    java.lang.Double endTime,
                                    java.lang.Double tolerance)
        Specified by:
        setupExperiment in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • enterInitializationMode

        public void enterInitializationMode​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
        Specified by:
        enterInitializationMode in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • exitInitializationMode

        public void exitInitializationMode​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
        Specified by:
        exitInitializationMode in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • step

        public java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm> noSetFMUStatePriorToCurrentPoint)
        Specified by:
        step in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • step

        public java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize)
        Specified by:
        step in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • step

        public java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm> noSetFMUStatePriorToCurrentPoint)
        Specified by:
        step in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • step

        public java.util.Map.Entry<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.BoolVariable<org.intocps.maestro.ast.node.PStm>,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm>> step​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> currentCommunicationPoint,
                                                                                                                                                                                                                                                       org.intocps.maestro.framework.fmi2.api.Fmi2Builder.DoubleVariable<org.intocps.maestro.ast.node.PStm> communicationStepSize)
        Specified by:
        step in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getPorts

        public java.util.List<PortFmi2Api> getPorts()
        Specified by:
        getPorts in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getPorts

        public java.util.List<PortFmi2Api> getPorts​(java.lang.String... names)
        Specified by:
        getPorts in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getPorts

        public java.util.List<PortFmi2Api> getPorts​(int... valueReferences)
        Specified by:
        getPorts in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getPort

        public PortFmi2Api getPort​(java.lang.String name)
        Specified by:
        getPort in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getPort

        public PortFmi2Api getPort​(int valueReference)
        Specified by:
        getPort in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • get

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)
        Specified by:
        get in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • get

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                                                                           org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)
        Specified by:
        get in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getDerivatives

        public java.util.Map<PortFmi2Api,​java.util.List<VariableFmi2Api<java.lang.Object>>> getDerivatives​(java.util.List<PortFmi2Api> ports,
                                                                                                                 org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
        Parameters:
        ports - The ports for which derivatives should be retrieved
        scope - The builder scope.
        Returns:
        Derivative ports with a list of derivative values up to max derivative order
      • get

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get()
        Specified by:
        get in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • get

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(int... valueReferences)
        Specified by:
        get in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • get

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> get​(java.lang.String... names)
        Specified by:
        get in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getAndShare

        public <V> java.util.Map<PortFmi2Api,​VariableFmi2Api<V>> getAndShare​(java.lang.String... names)
        Stores the final value in rootScope Uses the rootScope for valueReferences
        Specified by:
        getAndShare in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getAndShare

        public <V> java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> getAndShare​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... ports)
        Specified by:
        getAndShare in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getAndShare

        public <V> java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> getAndShare()
        Specified by:
        getAndShare in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getShared

        public VariableFmi2Api getShared​(java.lang.String name)
        Specified by:
        getShared in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getShared

        public VariableFmi2Api getShared​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port)
        Specified by:
        getShared in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getSingle

        public <V> VariableFmi2Api<V> getSingle​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port)
        Specified by:
        getSingle in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getSingle

        public VariableFmi2Api getSingle​(java.lang.String name)
        Specified by:
        getSingle in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port p,
                        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.ExpressionValue v)
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port p,
                        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.ExpressionValue v)
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortExpressionValueMap value)
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortExpressionValueMap value)
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                            org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortValueMap<V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                            org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortVariableMap<org.intocps.maestro.ast.node.PStm,​V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                        java.util.List<PortFmi2Api> selectedPorts,
                        java.util.function.Function<PortFmi2Api,​java.util.Map.Entry<org.intocps.maestro.ast.node.PExp,​org.intocps.maestro.ast.node.PType>> portToValue)
      • setDerivatives

        public void setDerivatives​(ArrayVariableFmi2Api derValInBuf,
                                   ArrayVariableFmi2Api derOrderInBuf,
                                   ArrayVariableFmi2Api derRefInBuf,
                                   org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
        If two derivative ports 'Out1' (linked to 'In1') and 'Out2' (linked to 'In2') with a max derivative order of 2 and 1 then derValInBuf = [der(Out1), der(der(Out1)), der(Out2))], derOrderInBuf = [1,2,1], derRefInBuf = [In1, In1, In2]
        Parameters:
        derValInBuf - derivative values
        derOrderInBuf - derivative value orders
        derRefInBuf - ports for which to set the derivative
        scope - the builder scope
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortValueMap<V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port,
                            org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                            org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port,
                            org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port port,
                        org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • set

        public <V> void set​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable.PortVariableMap<org.intocps.maestro.ast.node.PStm,​V> value)
        Specified by:
        set in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setLinked

        public void setLinked​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope,
                              org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... filterPorts)
        Specified by:
        setLinked in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setLinked

        public void setLinked()
        Specified by:
        setLinked in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setLinked

        public void setLinked​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port... filterPorts)
        Specified by:
        setLinked in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setLinked

        public void setLinked​(java.lang.String... filterNames)
        Specified by:
        setLinked in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setLinked

        public void setLinked​(long... filterValueReferences)
        Specified by:
        setLinked in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setInt

        public void setInt​(java.util.Map<? extends java.lang.Integer,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value<java.lang.Integer>> values)
        Specified by:
        setInt in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • setString

        public void setString​(java.util.Map<? extends java.lang.String,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Value<java.lang.String>> value)
        Specified by:
        setString in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • terminate

        public void terminate()
        Specified by:
        terminate in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • terminate

        public void terminate​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
        Specified by:
        terminate in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • share

        public <V> void share​(java.util.Map<? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Port,​? extends org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​V>> values)
        Specified by:
        share in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
      • getState

        public org.intocps.maestro.framework.fmi2.api.Fmi2Builder.StateVariable<org.intocps.maestro.ast.node.PStm> getState()
                                                                                                                     throws javax.xml.xpath.XPathExpressionException
        Specified by:
        getState in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
        Throws:
        javax.xml.xpath.XPathExpressionException
      • getState

        public org.intocps.maestro.framework.fmi2.api.Fmi2Builder.StateVariable<org.intocps.maestro.ast.node.PStm> getState​(org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Scope<org.intocps.maestro.ast.node.PStm> scope)
                                                                                                                     throws javax.xml.xpath.XPathExpressionException
        Specified by:
        getState in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Fmi2ComponentVariable<org.intocps.maestro.ast.node.PStm>
        Throws:
        javax.xml.xpath.XPathExpressionException
      • getAllConnectedOutputs

        public java.util.List<PortFmi2Api> getAllConnectedOutputs()
      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface org.intocps.maestro.framework.fmi2.api.Fmi2Builder.Variable<org.intocps.maestro.ast.node.PStm,​org.intocps.maestro.framework.fmi2.api.Fmi2Builder.NamedVariable<org.intocps.maestro.ast.node.PStm>>
        Overrides:
        getName in class VariableFmi2Api<org.intocps.maestro.framework.fmi2.api.Fmi2Builder.NamedVariable<org.intocps.maestro.ast.node.PStm>>
      • getEnvironmentName

        public java.lang.String getEnvironmentName()