Click or drag to resize

PropagateSegmentConfiguration Class

The configuration of a PropagateSegment which stores and allows the modification what StoppablePropagator will be used at propagation time of the PropagateSegment.
Inheritance Hierarchy

Namespace:  AGI.Foundation.SegmentPropagation
Assembly:  AGI.Foundation.SegmentPropagation (in AGI.Foundation.SegmentPropagation.dll) Version: 19.5.402.0 (19.5.402.0)
Syntax
public class PropagateSegmentConfiguration : SegmentListConfiguration, 
	IThreadAware, ICloneWithContext

The PropagateSegmentConfiguration type exposes the following members.

Constructors
Properties
  NameDescription
Public propertyDefaultInitialState
Gets or sets the initial state of the segment. Note that this property may not be edited by a SegmentPropagatorVariable.
(Inherited from SegmentConfiguration.)
Public propertyIsNonNominalRunDifferent
Gets a value indicating whether the associated SegmentPropagator will behave differently if it is being run nominally or not. You should overload this property to return if the specific segment type might behave differently in an unofficial propagation. By default this returns indicating that there is no difference.
(Inherited from SegmentListConfiguration.)
Public propertyIsThreadSafe
Gets a value indicating whether the methods on this instance are safe to call from multiple threads simultaneously.
Public propertyNominalRun
Gets or sets a value indicating whether this segment is being run normally and as such its results should be included as the final results, or if this segment is being run as part of some other operation (commonly this is set to to indicate if the segment is being run in a TargetedSegmentListOperator). By default this is . Override this property when one SegmentConfiguration manages another SegmentConfiguration (as in the case of a SegmentList) and have the overridden setter set the property on all wrapped configuration.
(Inherited from SegmentListConfiguration.)
Public propertyPropagator
Gets or sets the StoppablePropagator to use during propagation of the segment. Note that you are able to override the type of propagator being propagated in any PropagateSegment. For example, you can configure your segment to initially propagate with a TwoBodyStoppablePropagator but specify a StoppableNumericalPropagator here.
Public propertyUseOriginalPropagator
Gets or sets a value indicating whether the original propagator in the PropagateSegment should be used, or if the propagator in this configuration should be used.
Top
Methods
  NameDescription
Public methodClone
Clones this object using the specified context.
(Overrides SegmentListConfigurationClone(CopyContext).)
Public methodContainsSegmentConfiguration(String)
Checks to see if a segment configuration with the segmentName exists in this. This will search recursively through all SegmentListConfigurations that are stored in this.
(Inherited from SegmentListConfiguration.)
Public methodContainsSegmentConfiguration(SegmentDefinition)
Checks to see if the segment has a configuration stored in this.
(Inherited from SegmentListConfiguration.)
Public methodEquals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Protected methodFinalize
Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetSegmentsConfiguration(String)
Gets the segment configuration for the segment with the segmentName, or if there is no configuration in this for such a SegmentPropagator.
(Inherited from SegmentListConfiguration.)
Public methodGetSegmentsConfiguration(SegmentDefinition)
Gets the segment configuration for the segment, or if there is no configuration for the segment in this.
(Inherited from SegmentListConfiguration.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Protected methodMemberwiseClone
Creates a shallow copy of the current Object.
(Inherited from Object.)
Public methodRemoveSegmentConfiguration
Removes the configuration of the segment from this configuration.
(Inherited from SegmentListConfiguration.)
Public methodSetSegmentConfiguration
Stores the configuration of the segment. When attempting to add the segment that happens to be stored in a nested SegmentList, this method will drill down to the SegmentListConfiguration of the segment immediate parent SegmentList.
(Inherited from SegmentListConfiguration.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Top
Remarks

The segment configurations are mutable objects that store all of the editable settings that a SegmentPropagator needs to run. These settings can be edited by operator evaluators. The configurations should be designed to be able to easily get to and modify the data you need to. When a SegmentPropagator is propagated, the updated configuration will be passed into the method, and it is the responsibility of the PropagateSegment(SegmentListResults, SegmentConfiguration, ITrackCalculationProgress) method to use the data in the configuration properly.

See Also