Click or drag to resize

ScalarDelayedByLink Class

A scalar which wraps another scalar while delaying it by a time specified by a LinkDelayEvaluator obtained from a LinkPath. When evaluating this scalar at a given time, the resulting value will represent the value of the wrapped scalar at the delayed time. The time delay is either positive or negative, depending on the LinkRole of this scalar.
Inheritance Hierarchy

Namespace:  AGI.Foundation.Geometry
Assembly:  AGI.Foundation.Core (in AGI.Foundation.Core.dll) Version: 24.1.418.0 (24.1.418.0)
Syntax
public sealed class ScalarDelayedByLink : Scalar

The ScalarDelayedByLink type exposes the following members.

Constructors
  NameDescription
Public methodScalarDelayedByLink
Initializes a new instance.
Public methodScalarDelayedByLink(Scalar, LinkPath, LinkRole)
Initialize a new instance based on the given scalar delayed by the given link.
Public methodScalarDelayedByLink(Scalar, IServiceProvider, LinkRole)
Initialize a new instance based on the given scalar delayed by the given link.
Top
Properties
  NameDescription
Public propertyDirectionOfDelay
Gets or sets an enumeration indicating the direction of the delay to apply to ScalarToDelay. If the direction is receiving, the ScalarToDelay will be evaluated at a time prior to this scalar, representing the offset to the time of transmission. If the role is transmitting, the ScalarToDelay will be evaluated at a time after this scalar, representing the offset to the time of reception. By default, the value is: receiving.
Public propertyIsFrozen
Gets a value indicating whether this object is frozen. A frozen object cannot be modified and an ObjectFrozenException will be thrown if an attempt is made to do so.
(Inherited from DefinitionalObject.)
Public propertyPathForTimeDelay
Gets or sets the path from which to obtain the link delay.
Public propertyScalarToDelay
Gets or sets the scalar which is delayed by the PathForTimeDelay.
Top
Methods
  NameDescription
Public methodAdd(Double)
Adds a fixed scalar to this one.
(Inherited from Scalar.)
Public methodAdd(Scalar)
Adds another scalar to this one.
(Inherited from Scalar.)
Public methodClone
Clones this object using the specified context.
(Overrides DefinitionalObjectClone(CopyContext).)
Public methodCreateScalarDerivative
Constructs a scalar which represents a derivative of this scalar.
(Inherited from Scalar.)
Public methodDivide(Double)
Divides this scalar (numerator) by a fixed value (denominator).
(Inherited from Scalar.)
Public methodDivide(Scalar)
Divides this scalar (numerator) by another one (denominator).
(Inherited from Scalar.)
Public methodEnumerateDependencies
Enumerates the dependencies of this object by calling EnumerateT(T) for each object that this object directly depends upon. Derived classes which contain additional dependencies MUST override this method, call the base implementation, and enumerate dependencies introduced by the derived class.
(Overrides DefinitionalObjectEnumerateDependencies(DependencyEnumerator).)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public methodFreeze
Freezes this object. Further attempts to modify it will result in an ObjectFrozenException.
(Inherited from DefinitionalObject.)
Public methodGetDefinitionHashCode
Gets a hash code representing the definition of this object.
(Inherited from DefinitionalObject.)
Public methodGetEvaluator
Gets an evaluator that can be used to find the value of this scalar function at a given JulianDate.
(Inherited from Scalar.)
Public methodGetEvaluator(EvaluatorGroup)
Get an evaluator which evaluates the ScalarToDelay by applying the delay from the PathForTimeDelay which will be positive or negative depending on the DirectionOfDelay.
(Overrides ScalarGetEvaluator(EvaluatorGroup).)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIsSameDefinition
Determines if this object has the same definition as another object.
(Inherited from DefinitionalObject.)
Public methodMultiply(Double)
Multiplies this scalar with a fixed value.
(Inherited from Scalar.)
Public methodMultiply(Scalar)
Multiplies another scalar with this one.
(Inherited from Scalar.)
Public methodPower
Raises this scalar to the given fixed exponent.
(Inherited from Scalar.)
Public methodSubtract(Double)
Subtracts a fixed scalar from this one.
(Inherited from Scalar.)
Public methodSubtract(Scalar)
Subtracts another scalar from this one.
(Inherited from Scalar.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks
Usually, the ScalarDelayedByLink will act as a Receiver and the time delay will evaluate the wrapped scalar by applying the "offset to time of transmission" to the time at which this scalar is evaluated.
See Also