Click or drag to resize

AGI.Foundation.Infrastructure Namespace

Contains types which support various aspects of the DME Component Libraries infrastructure.
Classes
  ClassDescription
Public classAccessQueryReplacementCopyContext
Copies an AccessQuery while replacing all references of a specified instance with a new specified instance.
Public classAverageSubCalculationProgress
An implementation of ITrackCalculationProgress that averages the progress of a number of sub-calculations and reports the result to another ITrackCalculationProgress instance. The return value of ForSubCalculation(Double) should be passed to each sub-calculation.
Public classCachingEvaluator<T>
A wrapper for any IEvaluator<T> that caches the last evaluated result. This way, if a second evaluation is requested for the same date, the value is returned without recomputing it. This class is intended to be returned by GetCachingWrapper().
Public classCachingMotionEvaluator<T>
A wrapper for any MotionEvaluator<T> that caches the last evaluated result. This way, if a second evaluation is requested for the same date, the value is returned without recomputing it. This class is intended to be returned by GetCachingWrapper().
Public classCalculationContext
The context in which calculations are performed. This holds a number of facets which describe the problem. Facets can include things like central bodies and leap seconds. To use a facet, call the facet's static method that returns the context. Avoid calling GetFacet(Int32) directly.
Public classCalculationContextFacet
A facet of a CalculationContext.
Public classChildrenExtension
An ObjectExtension which can provide a list of children for a given ExtensibleObject. These children can either be separate objects which are related to the parent or subcomponents which provide completely separate sets of services in conjunction with the parent. For example, a spacecraft (parent) may have several sensors (children) which are each located and pointed separately with respect to the spacecraft.
Public classCollectionAlgorithms
Contains algorithms that operate on collections.
Public classConstantAuthorizationProvider
An authorization provider which stores a constant authorization token which will be used for all resources.
Public classConstantParameterizedEvaluator1<TParameter1, TResult>
An evaluator that takes a JulianDate and one additional parameter and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator2<TParameter1, TParameter2, TResult>
An evaluator that takes a JulianDate and two additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator3<TParameter1, TParameter2, TParameter3, TResult>
An evaluator that takes a JulianDate and three additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator4<TParameter1, TParameter2, TParameter3, TParameter4, TResult>
An evaluator that takes a JulianDate and four additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult>
An evaluator that takes a JulianDate and five additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult>
An evaluator that takes a JulianDate and six additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantParameterizedEvaluator7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult>
An evaluator that takes a JulianDate and seven additional parameters and produces a constant return value of a given type, ignoring all parameters.
Public classConstantValueDefinition<T>
Defines a constant value used in a broader computation. This object produces a ValueEvaluator<T> which by definition cannot vary with time.
Public classCopyContext
A context that identifies a complete copy operation. It is used to map old references to new references when doing a deep copy of a hierarchy of objects.
Public classCode exampleCopyForAnotherThread
Enables copying of IThreadAware objects for use in another thread.
Public classDefinitionalObject

The base class for all definitional objects. A definitional object has a few characteristics:

Public classDefinitionalObjectCollection<T>
A collection of DefinitionalObject objects.
Public classDependencyEnumerator
Enumerates the dependencies of an object.
Public classEndianBitConverter
BitConverter assumes that the byte arrays given to it are always in the system's native byte order. If you want to convert bytes that come from a file that is always in the same byte order regardless of the system's endianness, this class will do the byte reordering for you.
Public classEvaluatorHelper
A collection of methods that are helpful when writing evaluators.
Public classExtensibleObject
An object that can be extended at run-time with various ObjectExtension instances in order to add additional properties and behaviors.
Public classExtensibleObjectCollection
A collection of instances that implement ExtensibleObject.
Public classExtensionCollection
A collection of extensions to an ExtensibleObject.
Public classFileStreamFactory
A factory that can produce FileStream instances on demand. This type is used by classes that need to work with data from a stream from multiple threads simultaneously. They can use it to open the stream in each thread.
Public classFormatConverter<T, TFormatType>
Converts between different formats of a given type, where a format is specified as an indexed format object. This class can chain conversions in cases where a direct conversion is not possible.
Public classGeospatialContentServerAuthorizationProvider
An authorization provider which obtains an authorization token for a given Geospatial Content Server (GCS) application token.
Public classHashCode
Contains static methods for working with hash codes.
Public classHierarchicalLogger
A simple hierarchical logging mechanism. Multiple sub-tasks (indicated by a call to Push()) can log simultaneously from different threads and the output will be serialized in the log file.
Public classIdentifierExtension
An extension that defines a unique identifier for an object.
Public classObjectExtension
The base class for extensions that can be added at run-time to ExtensibleObject instances in order to give them additional properties and behaviors.
Public classParameterEvaluator<T>
Public classParameterizedEvaluator<TResult>
An abstract base implementation of an IEvaluator that has been parameterized with zero additional parameters.
Public classParameterizedEvaluator1<TParameter1, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with one additional parameter.
Public classParameterizedEvaluator2<TParameter1, TParameter2, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with two additional parameters.
Public classParameterizedEvaluator3<TParameter1, TParameter2, TParameter3, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with three additional parameters.
Public classParameterizedEvaluator4<TParameter1, TParameter2, TParameter3, TParameter4, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with four additional parameters.
Public classParameterizedEvaluator5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with five additional parameters.
Public classParameterizedEvaluator6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with six additional parameters.
Public classParameterizedEvaluator7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult>
An abstract base implementation of an IEvaluator that has been parameterized with seven additional parameters.
Public classParameterizedEvaluatorWithIntervals<TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals1<TParameter1, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals2<TParameter1, TParameter2, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals3<TParameter1, TParameter2, TParameter3, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals4<TParameter1, TParameter2, TParameter3, TParameter4, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult, TResultOverIntervals>
Public classParameterizedEvaluatorWithIntervals7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult, TResultOverIntervals>
Public classParameterizedMotionEvaluator<TResult>
Public classParameterizedMotionEvaluator1<TParameter1, TResult>
Public classParameterizedMotionEvaluator2<TParameter1, TParameter2, TResult>
Public classParameterizedMotionEvaluator3<TParameter1, TParameter2, TParameter3, TResult>
Public classParameterizedMotionEvaluator4<TParameter1, TParameter2, TParameter3, TParameter4, TResult>
Public classParameterizedMotionEvaluator5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult>
Public classParameterizedMotionEvaluator6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult>
Public classParameterizedMotionEvaluator7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult>
Public classParameterizedMotionEvaluatorWithDerivativeType<TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType1<TParameter1, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType2<TParameter1, TParameter2, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType3<TParameter1, TParameter2, TParameter3, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType4<TParameter1, TParameter2, TParameter3, TParameter4, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult, TResultDerivative>
Public classParameterizedMotionEvaluatorWithDerivativeType7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult, TResultDerivative>
Public classParameterizedValueDefinition<T>
Defines a value used in a broader computation, which is defined by a parameter at the time of evaluation.
Public classParameterizedValueEvaluator1<TParameter1, TResult>
Public classParameterizedValueEvaluator2<TParameter1, TParameter2, TResult>
Public classParameterizedValueEvaluator3<TParameter1, TParameter2, TParameter3, TResult>
Public classParameterizedValueEvaluator4<TParameter1, TParameter2, TParameter3, TParameter4, TResult>
Public classParameterizedValueEvaluator5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult>
Public classParameterizedValueEvaluator6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult>
Public classParameterizedValueEvaluator7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult>
Public classParentExtension
An ObjectExtension which can provide a reference to the parent of the owner of this extension. The parent tends to be an object that has services at a higher level than the child or services which are used implicitly to define the child's services. For example, a spacecraft (parent) may have several sensors (children) which are each located and pointed separately with respect to the spacecraft (parent).
Public classServiceHelper
Contains helpful methods for working with services and IServiceProvider.
Public classStreamFactory
The base class for a factory that can produce streams on demand. This type is used by classes that need to work with data from a stream from multiple threads simultaneously. They can use it to open the stream in each thread. Consider using FileStreamFactory.
Public classThreadStaticCalculationContextStorageStrategy
An ICalculationContextStorageStrategy that gets the context from a thread static member variable. Thus, each thread has its own context.
Public classValueDefinition<T>
Public classValueEvaluator<T>
An abstract base class for evaluators that takes no parameters and produces a return value of a given type. By definition, all subclasses must not vary with respect to time.
Public classValueParameter<T>
Represents an arbitrary value as a parameter.
Interfaces
  InterfaceDescription
Public interfaceIAuthorizationProvider
Provides an authorization token that will be used when accessing a given resource.
Public interfaceICachingEvaluator
An interface to an evaluator that caches values between evaluations.
Public interfaceICalculationContextStorageStrategy
A strategy for getting the current CalculationContext instance.
Public interfaceIChildrenService
A service that defines a collection of children for a given parent. These children can either be separate objects which are related to the parent or subcomponents which provide completely separate sets of services in conjunction with the parent. For example, a spacecraft (parent) may have several sensors (children) which are each located and pointed separately with respect to the spacecraft.
Public interfaceICloneWithContext
An interface for an object that can make a copy of itself that is guided by a CopyContext instance. Objects that implement this interface enable a great deal of flexibility in how "deeply" they are copied.
Public interfaceIEnumerateDependencies
An interface to an object that can identify its dependencies. See EnumerateDependencies(DependencyEnumerator) for more information on implementing this interface.
Public interfaceIEquatableDefinition
An interface to an object that can compare its definition to other objects.
Public interfaceIEquatableEpsilon<T>
Defines a method for determining equality of instances within a specified tolerance.
Public interfaceIEvaluatorParameter<T>
A placeholder for a parameter within an evaluator.
Public interfaceIFreezable
An interface to an object that can be frozen such that no further changes to the object can be made.
Public interfaceIIdentifierService
A service that defines a unique identifier for an object.
Public interfaceIIndexedFormat
Public interfaceIIsTimeVarying
An interface to an object that can specify whether or not it varies with time.
Public interfaceINameService
A service that provides the name to either a platform or link.
Public interfaceIParameterizedEvaluator1<TParameter1, TResult>
An interface for an evaluator that takes a JulianDate and one additional parameter and produces a return value of a given type.
Public interfaceIParameterizedEvaluator2<TParameter1, TParameter2, TResult>
An interface for an evaluator that takes a JulianDate and two additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluator3<TParameter1, TParameter2, TParameter3, TResult>
An interface for an evaluator that takes a JulianDate and three additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluator4<TParameter1, TParameter2, TParameter3, TParameter4, TResult>
An interface for an evaluator that takes a JulianDate and four additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluator5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult>
An interface for an evaluator that takes a JulianDate and five additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluator6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult>
An interface for an evaluator that takes a JulianDate and six additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluator7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult>
An interface for an evaluator that takes a JulianDate and seven additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals1<TParameter1, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and one additional parameter and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals2<TParameter1, TParameter2, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and two additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals3<TParameter1, TParameter2, TParameter3, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and three additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals4<TParameter1, TParameter2, TParameter3, TParameter4, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and four additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals5<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and five additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals6<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and six additional parameters and produces a return value of a given type.
Public interfaceIParameterizedEvaluatorWithIntervals7<TParameter1, TParameter2, TParameter3, TParameter4, TParameter5, TParameter6, TParameter7, TResult, TResultOverIntervals>
An interface for an evaluator that takes a JulianDate and seven additional parameters and produces a return value of a given type.
Public interfaceIParentService
A service that identifies the parent of this object.
Public interfaceIPlaceHolderService
A service that denotes this object as a place holder
Public interfaceIThreadAware
An interface to an instance that is thread-aware. A thread-aware instance can report whether or not its instance methods are thread safe. It also offers the option to make a copy of itself that can simultaneously be used with this instance from two different threads.
Public interfaceIValueEvaluator<T>
An interface for an evaluator that takes no parameters and produces a return value of a given type. By definition, all implementations must not vary with respect to time.
Delegates
Enumerations
  EnumerationDescription
Public enumerationParameterAction
Indicates the action taken by the EvaluatorGroup when an evaluator is parameterized with a parameter on which it does not actually depend