next up previous contents
Next: File Input/Output and Utility Up: Volume Previous: Volume Access - Iterators   Contents


Volume Objects

The third part of the volume component of OpenVL is the Volume object. This object is encapsulated by the Volume API which is defined in a class called vlVolume. Objects of this class are the volumes which users' applications can use.

The vlVolume class does not store the volume data by itself. Instead, it uses the Volume Data Layout object to store the data. The main purpose of the Volume API is to provide information about the volume and file input/output functionality. The volume information such as the dimension, voxel units, etc., is simply fetched from the underlying data layout object and exported. There is also provision for associating additional information (metadata) with a volume such as author name, the name of the file from which the volume was loaded, date of creation, etc. Metadata of any type can be associated with a volume.

The Volume API provides two important functions for file i/o. The read() function is provided to read volumetric data from a file and write() function is provided to write the data to a file. The file format to be used is automatically detected (using the file extension) and the appropriate file format plugin is called to read or write. Optionally, the file format can be specified when calling read/write. The file i/o unit of OpenVL is discussed in the next section.


next up previous contents
Next: File Input/Output and Utility Up: Volume Previous: Volume Access - Iterators   Contents
Sarang Lakare 2002-12-23