IAgODProvideTrackingDataLib 13Send comments on this topic.
IAgODProvideTrackingData Interface

Description

Interface used to provide tracking data measurements to ODTK.

Public Methods

Public Method CloseFile

This method is called to close a tracking data file when ODTK is done reading from it.

Public Method GetObsSet

This method is called by ODTK to obtain a collection of observations sets to be processed. It must be implemented if you are trying to read tracking data. The method will read the tracking data file, create observation sets, and add them to the collection.

Any number of observation sets may be returned in a given call. If there are no more observation sets, it will return an empty collection. Typically it will return one observation set at a time, or a number of them (how many is purely a matter of convenience for the author). While it is certainly possible to process an entire file at once and return all the observation sets, this practice is not recommended, since some files can get quite large.

Observation sets must be returned in increasing time order. Out of order sets will generate a warning message in the ODTK message viewer and be ignored. If you suspect that your data is out of time order, you may want to read all the observations into an internal data structure within your plugin and sort them before adding them to the collection.

Public Method GetSupportedObsSet

This method is called to obtain a collection of all the observation sets that this tracking data provider can support for saving. For example, suppose that your format supports azimuth, elevation and range. These may be supported as independent observations (az, then el, then range) or as one complete set (a triplet of az, el, range), or as any combination in between. Your format might prefer them to come as a triplet because they will all be written out on one line. In this case you would return a collection containing a dummy observation set with three IAgOdGenericObs objects in it (each one having a different MeasureType parameter set appropriately).

When generating simulated observations, ODTK will check to see if the tracking data format to which you are trying to write actually supports the observations that you are simulating. If there is a mismatch, you will be notified in the message viewer.

Public Method OpenFile

This method is called to open up an existing tracking data file for reading or a new one for writing. It must be implemented if you are trying to read tracking data. The newVal parameter contains the full name of the file to be opened or created. The newFile parameter is used to indicate whether the file should be opened (for reading) or created (for writing). If creating a new file, it should be done so so that data may be appended to it.

The plugin is responsible for keeping track of the resulting file pointer and sharing it with the other methods (notably GetObsSet and Reset) so that they may use it to perform the necessary tasks.

The plugin is responsible for storing the file name internally so that it may be returned by the FileName property.

Public Method ResetThis method is called to reset the file pointer back to the beginning of the tracking data file. ODTK may read a tracking data file more than once depending on what type of processing you are doing (e.g., suppose you run an IOD, then least squares, then the filter). Typically this is done using a fseek (or equivalent call) to reposition the file pointer.
Public Method SaveObs

This method is called to save an enumerated list of observations to the file. The method must cycle through each of the observations in the list and write them out to the tracking data file.

Public Properties

Public Property FileNameThe name of the data file containing observations.
Public Property SupportsMultipleTrackersThis property indicates whether this tracking data provider supports observations from multiple trackers in the same data file. Some file formats by definition only contain observations from one tracker, while others support multiple trackers. This is used by ODTK to see if additional tracking data files should be created when generating simulated observations from multiple trackers.
Public Property SupportsSaveThis property indicates whether this tracking data provider supports saving observations to a file. Usually this returns 'false' (it is much easier to write a tracking data reader only than one that supports reading and writing).

CoClasses that Implement IAgODProvideTrackingData

© 2025 Analytical Graphics, Inc. All Rights Reserved.