Click or drag to resize
Dfs123File Class
Abstract class, implementing common functionality for dfs1, dfs2 and dfs3 files.
Inheritance Hierarchy

Namespace: DHI.Generic.MikeZero.DFS.dfs123
Assembly: DHI.Generic.MikeZero.DFS (in DHI.Generic.MikeZero.DFS.dll) Version: 16.0.0.0 (11.1.1.1111)
Syntax
public abstract class Dfs123File : IDfs123File, 
	IDfsFileIO, IDfsFileStaticIO, IDisposable

The Dfs123File type exposes the following members.

Properties
  NameDescription
Public propertyFileInfo
File info
Public propertyFileName
Name of file.
Public propertyItemInfo
Information on all the dynamic items in the file.
Public propertySpatialAxis
Spatial axis that are valid for all dynamic and static items.
Top
Methods
  NameDescription
Public methodClose
Public methodDispose
Close file and release ressources on the unmanaged side.
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodFindItem
Positions the file pointer at the location in the file where the specified dynamic item at the specified time step starts.
Public methodFindTimeStep
Positions the file pointer at the location in the file where the specified time step starts.
Public methodFlush
Public methodFlushTimeStep
Public methodGetHashCode
Serves as a hash function for a particular type.
(Inherited from Object.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodReadStaticItem
Public methodReadStaticItemNext
Public methodReset
Resets the file pointer to point on the first dynamic item time step in the file.

Can also be used if it is required to restart reading the static items.

Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodWriteItemTimeStep
Writes data to the specified item and timestep in the file.

If the item-timestep exists already, data is updated. If it does not exist, the item number and timestep index must match exactly the next item-timestep after the last one in the file.

The size of the data must match the data size of the item that is to be written.

The time value is only relevant for files with non-equidistant time axis. For files with an equidistant time axis, the time value is ignored, and a zero can be used.

Public methodWriteItemTimeStepNext

Writes the next dynamic item-timestep.

If the file pointer points to the end of the file, this will append a new item-timestep to the file. If the file pointer points to an existing item-timestep, the data of that item-timestep is updated.

Remember that the file pointer position depends on the mode that the file was opened: In edit mode the file pointer points at the first item-timestep. In append mode the file pointer points initially at the end of file.

It iterates over the item-timesteps as the ReadItemTimeStepNext, see there for more details.

This is the most efficient way to iterate through and update/append the items and timesteps in a file, since it iterates exactly as the data is stored on the disk.

The size of the data must match the data size of the item that is to be written.

The time value is only relevant for files with non-equidistant time axis. For files with an equidistant time axis, the time value is ignored, and a zero can be used.

Public methodWriteStaticItemData
Top
Remarks
When loading, check that all axis (dynamic and static) are equal, otherwise throw an exception.
See Also