org.omg.space.xtce.MathOperationType Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of xtcetools Show documentation
Show all versions of xtcetools Show documentation
This project contains software to support the Object Management Group (OMG) Space Domain Task Force (SDTF) maintained XML Telemetry and Command Exchange (XTCE) specification.
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.3.0
// See https://javaee.github.io/jaxb-v2/
// Any modifications to this file will be lost upon recompilation of the source schema.
// Generated on: 2019.03.16 at 05:52:46 PM MST
//
package org.omg.space.xtce;
import java.util.ArrayList;
import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElements;
import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlType;
/**
* Postfix (aka Reverse Polish Notation (RPN)) notation is used to describe mathmatical equations. It uses a stack where operands (either fixed values or ParameterInstances) are pushed onto the stack from first to last in the XML. As the operators are specified, each pops off operands as it evaluates them, and pushes the result back onto the stack. In this case postfix is used to avoid having to specify parenthesis. To convert from infix to postfix, use Dijkstra's "shunting yard" algorithm.
*
* Java class for MathOperationType complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="MathOperationType">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <choice maxOccurs="unbounded">
* <element name="ValueOperand" type="{http://www.w3.org/2001/XMLSchema}double"/>
* <element name="ThisParameterOperand" type="{http://www.w3.org/2001/XMLSchema}anyType"/>
* <element name="ParameterInstanceRefOperand" type="{http://www.omg.org/space/xtce}ParameterInstanceRefType"/>
* <element name="Operator" type="{http://www.omg.org/space/xtce}MathOperatorsType"/>
* </choice>
* </restriction>
* </complexContent>
* </complexType>
*
*
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "MathOperationType", propOrder = {
"valueOperandOrThisParameterOperandOrParameterInstanceRefOperand"
})
@XmlSeeAlso({
org.omg.space.xtce.MetaCommandType.ParameterToSetList.ParameterToSet.Derivation.class,
org.omg.space.xtce.CalibratorType.MathOperationCalibrator.class,
org.omg.space.xtce.MathAlgorithmType.MathOperation.class
})
public class MathOperationType {
@XmlElements({
@XmlElement(name = "ValueOperand", type = Double.class),
@XmlElement(name = "ThisParameterOperand"),
@XmlElement(name = "ParameterInstanceRefOperand", type = ParameterInstanceRefType.class),
@XmlElement(name = "Operator", type = String.class)
})
protected List