Package ptolemy.actor.lib.logic
Class LogicFunction
- java.lang.Object
-
- All Implemented Interfaces:
java.lang.Cloneable
,Actor
,Executable
,FiringsRecordable
,Initializable
,TypedActor
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
- Direct Known Subclasses:
NonStrictLogicFunction
@Deprecated public class LogicFunction extends Transformer
Deprecated.Use LogicGate instead.Produce an output token on each firing with a value that is equal to the specified logic operator of the input(s). The functions are:
- and: The logical and operator. This is the default function for this actor.
- or: The logical or operator.
- xor: The logical xor operator.
- nand: The logical nand operator. Equivalent to the negation of and.
- nor: The logical nor operator. Equivalent to the negation of or.
- xnor: The logical xnor operator. Equivalent to the negation of xor.
NOTE: All operators have a single input port, which is a multiport, and a single output port, which is not a multiport. All ports have type boolean.
This actor does not require that each input channel have a token upon firing. As long as one channel contains a token, output will be produced. If no input tokens are available at all, then no output is produced. At most one token is consumed on each input channel.
- Since:
- Ptolemy II 1.0
- Version:
- $Id$
- Author:
- Paul Whitaker
- Pt.AcceptedRating:
- Green (pwhitake)
- Pt.ProposedRating:
- Green (pwhitake)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.Entity
Entity.ContainedObjectsIterator
-
-
Field Summary
Fields Modifier and Type Field Description protected static int
_AND
Deprecated.Perform a logical AND.protected int
_function
Deprecated.An indicator for the function to compute.protected boolean
_negate
Deprecated.True if the intermediate results should be negated.protected static int
_OR
Deprecated.Perform a logical OR.protected static int
_XOR
Deprecated.Perform a logical XOR.StringAttribute
function
Deprecated.The function to compute.-
Fields inherited from class ptolemy.actor.lib.Transformer
input, output
-
Fields inherited from class ptolemy.actor.TypedAtomicActor
_typesValid
-
Fields inherited from class ptolemy.actor.AtomicActor
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
-
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
-
Fields inherited from interface ptolemy.actor.Executable
COMPLETED, NOT_READY, STOP_ITERATING
-
-
Constructor Summary
Constructors Constructor Description LogicFunction(CompositeEntity container, java.lang.String name)
Deprecated.Construct an actor with the given container and name.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected BooleanToken
_updateFunction(BooleanToken in, BooleanToken old)
Deprecated.Calculate the function on the given arguments.void
attributeChanged(Attribute attribute)
Deprecated.Override the base class to determine which function is being specified.void
fire()
Deprecated.Consume at most one input token from each input channel, and produce a token on the output port.-
Methods inherited from class ptolemy.actor.TypedAtomicActor
_containedTypeConstraints, _customTypeConstraints, _defaultTypeConstraints, _fireAt, _fireAt, attributeTypeChanged, clone, clone, isBackwardTypeInferenceEnabled, newPort, typeConstraintList, typeConstraints
-
Methods inherited from class ptolemy.actor.AtomicActor
_actorFiring, _actorFiring, _declareDelayDependency, addActorFiringListener, addInitializable, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, initialize, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, prefire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate, wrapup
-
Methods inherited from class ptolemy.kernel.ComponentEntity
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
-
Methods inherited from class ptolemy.kernel.Entity
_addPort, _description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName
-
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ptolemy.actor.Actor
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
-
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
-
Methods inherited from interface ptolemy.actor.Executable
isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate
-
Methods inherited from interface ptolemy.actor.Initializable
addInitializable, initialize, preinitialize, removeInitializable, wrapup
-
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getContainer, getDisplayName, getFullName, getName, getName, setName
-
-
-
-
Field Detail
-
function
public StringAttribute function
Deprecated.The function to compute. This is a string-valued attribute that defaults to "and".
-
_function
protected int _function
Deprecated.
-
_negate
protected boolean _negate
Deprecated.True if the intermediate results should be negated.
-
_AND
protected static final int _AND
Deprecated.Perform a logical AND.- See Also:
- Constant Field Values
-
_OR
protected static final int _OR
Deprecated.Perform a logical OR.- See Also:
- Constant Field Values
-
_XOR
protected static final int _XOR
Deprecated.Perform a logical XOR.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
LogicFunction
public LogicFunction(CompositeEntity container, java.lang.String name) throws NameDuplicationException, IllegalActionException
Deprecated.Construct an actor with the given container and name. Set the logic function to the default ("and"). Set the types of the ports to boolean.- Parameters:
container
- The container.name
- The name of this actor.- Throws:
IllegalActionException
- If the actor cannot be contained by the proposed container.NameDuplicationException
- If the container already has an actor with this name.
-
-
Method Detail
-
attributeChanged
public void attributeChanged(Attribute attribute) throws IllegalActionException
Deprecated.Override the base class to determine which function is being specified. Read the value of the function attribute and set the cached value appropriately.- Overrides:
attributeChanged
in classNamedObj
- Parameters:
attribute
- The attribute that changed.- Throws:
IllegalActionException
- If the function is not recognized.
-
fire
public void fire() throws IllegalActionException
Deprecated.Consume at most one input token from each input channel, and produce a token on the output port. If there is no input on any channel, then produce no output.- Specified by:
fire
in interfaceExecutable
- Overrides:
fire
in classAtomicActor<TypedIOPort>
- Throws:
IllegalActionException
- If there is no director.
-
_updateFunction
protected BooleanToken _updateFunction(BooleanToken in, BooleanToken old) throws IllegalActionException
Deprecated.Calculate the function on the given arguments.- Parameters:
in
- The new input value. Should never be null.old
- The old result value, or null if there is none.- Returns:
- The result of applying the function.
- Throws:
IllegalActionException
- If thrown by BooleanToken operations.
-
-