Package jmri.jmrit.logixng
Interface MaleAnalogExpressionSocket
- All Superinterfaces:
AnalogExpression,AnalogExpressionBean,Base,Comparable<NamedBean>,Debugable,MaleSocket,NamedBean,PropertyChangeProvider
- All Known Implementing Classes:
DebuggerMaleAnalogExpressionSocket,DefaultMaleAnalogExpressionSocket
A LogixNG male AnalogExpressionBean socket.
-
Nested Class Summary
Nested classes/interfaces inherited from interface jmri.jmrit.logixng.Base
Base.PrintTreeSettings, Base.RunnableWithBase, Base.RunnableWithBaseThrowExceptionNested classes/interfaces inherited from interface jmri.jmrit.logixng.Debugable
Debugable.DebugConfigNested classes/interfaces inherited from interface jmri.jmrit.logixng.MaleSocket
MaleSocket.ErrorHandlingTypeNested classes/interfaces inherited from interface jmri.NamedBean
NamedBean.BadNameException, NamedBean.BadSystemNameException, NamedBean.BadUserNameException, NamedBean.DisplayOptions, NamedBean.DuplicateSystemNameException -
Field Summary
Fields inherited from interface jmri.jmrit.logixng.Base
PRINT_LINE_NUMBERS_FORMAT, PROPERTY_CHILD_COUNT, PROPERTY_CHILD_REORDER, PROPERTY_LAST_RESULT_CHANGED, PROPERTY_SOCKET_CONNECTED, PROPERTY_SOCKET_DISCONNECTED, SEPARATOR, SOCKET_CONNECTED, SOCKET_DISCONNECTEDFields inherited from interface jmri.NamedBean
DISPLAY_NAME_FORMAT, INCONSISTENT, PROPERTY_COMMENT, PROPERTY_ENABLED, PROPERTY_KNOWN_STATE, PROPERTY_STATE, PROPERTY_USERNAME, QUOTED_NAME_FORMAT, UNKNOWN -
Method Summary
Methods inherited from interface jmri.jmrit.logixng.AnalogExpression
getTriggerOnChange, setTriggerOnChangeMethods inherited from interface jmri.jmrit.logixng.Base
addPropertyChangeListener, addPropertyChangeListener, deepCopyChildren, dispose, doSocketOperation, existsInTree, forEntireTree, forEntireTreeWithException, getCategory, getChild, getChildCount, getComment, getConditionalNG, getDeepCopy, getListenerRef, getListenerRefs, getListenerRefsIncludingChildren, getLogixNG, getLongDescription, getLongDescription, getModule, getNumPropertyChangeListeners, getParent, getPropertyChangeListenersByReference, getRoot, getShortDescription, getShortDescription, getSystemName, getUsageDetail, getUsageTree, getUserName, hasChild, isActive, isSocketOperationAllowed, printTree, printTree, printTree, printTree, printTree, registerListeners, setComment, setParent, setParentForAllChildren, setUserName, unregisterListeners, updateListenerRef, vetoableChangeMethods inherited from interface jmri.jmrit.logixng.Debugable
createDebugConfig, getDebugConfig, setDebugConfigMethods inherited from interface jmri.jmrit.logixng.MaleSocket
addLocalVariable, addLocalVariable, clearLocalVariables, find, getCatchAbortExecution, getErrorHandlingType, getListen, getLocalVariables, getManager, getObject, handleError, handleError, handleError, isEnabled, isLocked, isSupportingLocalVariables, isSystem, setCatchAbortExecution, setEnabled, setEnabledFlag, setErrorHandlingType, setListen, setLocked, setSystem, setupMethods inherited from interface jmri.NamedBean
addPropertyChangeListener, addPropertyChangeListener, compareSystemNameSuffix, compareTo, describeState, dispose, getBeanType, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListenersByReference, getPropertyKeys, getRecommendedToolTip, getState, getSystemName, getUsageReport, getUserName, removeProperty, setComment, setProperty, setState, setUserName, toString, updateListenerRef, vetoableChangeMethods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Method Details
-
evaluate
Evaluate this expression.This method must ensure that the result is not a Double.NaN, negative infinity or positive infinity. If that is the case, it must throw an IllegalArgumentException before checking if an error has occured.
If the socket is not enabled, the method returns the value 0.0f.
If an error occurs and are handled, the method returns the value 0.0f.
- Specified by:
evaluatein interfaceAnalogExpression- Returns:
- the result of the evaluation. The male socket that holds this expression throws an exception if this value is a Double.NaN or an infinite number.
- Throws:
JmriException- when an exception occursIllegalArgumentException- if the result a Double.NaN, negative infinity or positive infinity
-