ILNumerics Ultimate VS

H5DatasetGetT Method

ILNumerics Ultimate VS Documentation
ILNumerics - Technical Application Development
Retrieve (sub-)array from dataset

[ILNumerics HDF5 Module]

Namespace:  ILNumerics.IO.HDF5
Assembly:  ILNumerics.IO.HDF5 (in ILNumerics.IO.HDF5.dll) Version: 5.5.0.0 (5.5.7503.3146)
Syntax

public RetArray<T> Get<T>(
	params BaseArray[] range
)

Parameters

range
Type: ILNumericsBaseArray
[optional] subarray range specification

Type Parameters

T
The type of the elements to be returned

Return Value

Type: RetArrayT
Array or subarray of the specified type T and the size as determined by range
Remarks

This function is used to retrieve an array from the dataset or parts of the dataset. The range parameter is used to define the range to request. If range is ommited, the whole dataset is retrieved and its data returned as ILNumerics array.

The type of the elements for the array returned is specified by the generic parameter T. Note that T does not need to match the actual type of the elements stored in the dataset. HDF5 will convert between compatible types automatically.

As range parameter all options for addressing subarrays from Arrays are allowed. This includes any combination of ranged dimension specifiers, stepped ranges (increasing or decreasing), combined dimension specifiers and sequential indices. If range contains a single numeric array of arbitrary shape, its elements are interpreted as sequential indices into the dataset. Read all details about subarray addressing options in the ILNumerics Subarray Tutorial.

A note on performance: ILNumerics uses hyperslab selections from HDF5 in order to retrieve subarrays from datasets. This allows one to read parts of the dataset without accessing the whole dataset. For large datasets using hyperslab selections can drastically reduce the memory requirements and therefore improve the performance of the retrieval.

In order to use the hyperslab feature of HDF5, no actions are neccessary from the ILNumerics side. ILNumerics automatically translates the subarray specification given by range into corresponding hyperslab selections. However, since the way hyperslabs work is not 100% compatible with ILNumerics' subarray features, the conversion and highly efficient subarry access is only possible for certain subarray range specifications. See the ILNumerics HDF5 online manual for a comprehensive list of all conditions.

[ILNumerics HDF5 Module]

See Also

Reference

Other Resources