Click or drag to resize

MemoryArchiveTEntity Class

Inheritance Hierarchy
SystemObject
  AGI.Foundation.TrackingTrackingArchiveTEntity
    AGI.Foundation.TrackingMemoryArchiveTEntity

Namespace:  AGI.Foundation.Tracking
Assembly:  AGI.Foundation.Tracking (in AGI.Foundation.Tracking.dll) Version: 19.5.402.0 (19.5.402.0)
Syntax
public class MemoryArchive<TEntity> : TrackingArchive<TEntity>
where TEntity : class, IEntityIdentifier, IEntityLastUpdate

Type Parameters

TEntity
The entity type to archive.

The MemoryArchiveTEntity type exposes the following members.

Constructors
Properties
  NameDescription
Public propertyContext
Gets the context for which to archives entities.
(Inherited from TrackingArchiveTEntity.)
Public propertyIsRunning
Gets a value indicating whether or not the archiver is currently archiving changes to entities in the Context.
(Inherited from TrackingArchiveTEntity.)
Public propertyMaximumQueueLength
Gets or sets the maximum length of the queue of committed transactions to be archived. If transactions are committed at a higher rate than they can be archived, the length of the queue will grow. When it reaches this maximum length, committing threads will block until the archiver catches up. Setting this value too high will result in excessive memory usage. Changes to this value while the archiver IsRunning will not take effect until it is restarted.
(Inherited from TrackingArchiveTEntity.)
Public propertyPrimitivePropertyComponents
Gets a list of the primitive components of the properties for this entity type. Each property in Properties will correspond to one or more properties in this collection. For example, a property in Properties of type JulianDate might have two properties in this collection: an integer called "Day" and a double called "SecondsOfDay". The exact relationship between Properties and this collection is dictated by the TypeArchivers being used by this archive.
(Inherited from TrackingArchiveTEntity.)
Public propertyProperties
Gets a list of archived properties for this entity type. There is one property in this collection for each property in the entity's EntitySchemaTEntity.
(Inherited from TrackingArchiveTEntity.)
Public propertyTypeArchivers
Gets the collection of TrackingTypeArchivers that is used to archive the properties of entities. The returned instance should be considered read-only. Attempts to modify the collection of archivers will result in an ObjectFrozenException.
(Inherited from TrackingArchiveTEntity.)
Top
Methods
  NameDescription
Protected methodArchiveEntities
Archives a set of entities.
(Overrides TrackingArchiveTEntityArchiveEntities(Transaction, IEnumerableTEntity).)
Public methodClear
Clears the contents of the archive.
(Overrides TrackingArchiveTEntityClear.)
Public methodDeserialize
Deserializes the archive from the provided stream.
Public methodDispose
Releases any resources associated with this instance.
(Inherited from TrackingArchiveTEntity.)
Protected methodDispose(Boolean)
Releases any resources associated with this instance.
(Inherited from TrackingArchiveTEntity.)
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 methodGetArchivedData(JulianDate, JulianDate, Int32, String)
Retrieves archived properties for all entities over the provided time period.
(Inherited from TrackingArchiveTEntity.)
Public methodGetArchivedData(Object, JulianDate, JulianDate, Int32, String)
Retrieves archived properties for the provided entity over the provided time period.
(Inherited from TrackingArchiveTEntity.)
Public methodGetArchivedInterval
Gets the overall interval that exists in the archive for any entity.
(Overrides TrackingArchiveTEntityGetArchivedInterval.)
Public methodGetArchivedInterval(Object)
Gets the overall interval that exists in the archive for the specified entity identifier.
(Overrides TrackingArchiveTEntityGetArchivedInterval(Object).)
Protected methodGetArchivedPrimitivePropertyComponents(IEnumerableArchivedProperty, JulianDate, JulianDate, Int32)
Retrieves archived primitive property components for all entities over the provided time period.
(Overrides TrackingArchiveTEntityGetArchivedPrimitivePropertyComponents(IEnumerableArchivedProperty, JulianDate, JulianDate, Int32).)
Protected methodGetArchivedPrimitivePropertyComponents(Object, IEnumerableArchivedProperty, JulianDate, JulianDate, Int32)
Retrieves archived primitive property components for the provided entity over the provided time period.
(Overrides TrackingArchiveTEntityGetArchivedPrimitivePropertyComponents(Object, IEnumerableArchivedProperty, JulianDate, JulianDate, Int32).)
Protected methodGetEntityPrimitivePropertyComponents
Fills an array with the archived properties of an entity.
(Inherited from TrackingArchiveTEntity.)
Public methodGetHashCode
Serves as the default hash function.
(Inherited from Object.)
Public methodGetMotionT(Object, JulianDate, JulianDate, String)
Gets time-varying data, such as position and velocity, from the archive.
(Inherited from TrackingArchiveTEntity.)
Public methodGetMotionT(Object, JulianDate, JulianDate, Int32, String)
Gets time-varying data, such as position and velocity, from the archive.
(Inherited from TrackingArchiveTEntity.)
Public methodGetOrientations(Object, JulianDate, JulianDate)
Gets a DateMotionCollectionT, TDerivative representing the archived orientation, rotational velocity and rotational acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
Public methodGetOrientations(Object, JulianDate, Int32)
Gets a DateMotionCollectionT, TDerivative representing the archived orientation, rotational velocity and rotational acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
Public methodGetOrientations(Object, JulianDate, JulianDate, Int32)
Gets a DateMotionCollectionT, TDerivative representing the archived orientation, rotational velocity and rotational acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
Public methodGetPositions(Object, JulianDate, JulianDate)
Gets a DateMotionCollectionT representing the archived position, velocity and acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
Public methodGetPositions(Object, JulianDate, Int32)
Gets a DateMotionCollectionT representing the archived position, velocity and acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
Public methodGetPositions(Object, JulianDate, JulianDate, Int32)
Gets a DateMotionCollectionT representing the archived position, velocity and acceleration of the specified entity beginning at the specified time and lasting for the specified duration.
(Inherited from TrackingArchiveTEntity.)
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 methodSerialize
Serializes the archive to the provided stream.
Public methodStartWriting
Starts the archiver. After this method is called, all updates to entities in the Context will be archived.
(Inherited from TrackingArchiveTEntity.)
Public methodStopWriting
Stops the archiver. After this method is called, updates to entities in the Context will no longer be archived. This method does not return until the current queue of updates to archive has been processed.
(Inherited from TrackingArchiveTEntity.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodWaitForArchiveQueue
Waits for the currently queued transactions to be archived before returning. Additional committed transactions may be queued while waiting and these will NOT be waited upon.
(Inherited from TrackingArchiveTEntity.)
Protected methodWritingShutdown (Inherited from TrackingArchiveTEntity.)
Protected methodWritingStartup (Inherited from TrackingArchiveTEntity.)
Top
See Also