This section defines requirements to an accessor implementation and introduces several accessor types.
Each accessor implementation shall:
Define a single format of the data for the access. Every accessor type shall return and use only one data format.
Provide read-only access to the data in the table types.
pull()method for obtaining the values from the table.
Be lightweight. Its constructors shall not have computationally intensive operations such data copy, reading, or conversion. These operations shall be performed by method
pull(). Support of copy- and move- constructors by the accessor is not required since it shall be designed for use in a local scope - directly in a place when it is created.
pull()method shall avoid data copy and conversion when it is possible to return the pointer to the memory block in the table. This is applicable for cases such as when the data format and data types of the data within the table are the same as the data format and data type for the access.
oneDAL defines a set of accessor classes. Each class supports one specific way of obtaining data from the table.
All accessor classes in oneDAL are listed below:
List of supported types
Provides access to the range of rows as one contiguous homogeneous block of memory.
Provides access to the range of values within a single column as one contiguous homogeneous block of memory.