tatami
C++ API for different matrix representations
|
Extract an element of the target dimension in sparse form without an oracle. More...
#include <Extractor.hpp>
Public Member Functions | |
virtual SparseRange< Value_, Index_ > | fetch (Index_ i, Value_ *value_buffer, Index_ *index_buffer)=0 |
Extract an element of the target dimension in sparse form without an oracle.
Value_ | Data value type, should be numeric. |
Index_ | Row/column index type, should be integer. |
|
pure virtual |
value_buffer
may not necessarily be filled upon extraction if a pointer can be returned to the underlying data store. This be checked by comparing the returned SparseRange::value
pointer to value_buffer
; if they are the same, value_buffer
has been filled with SparseRange::number
values. The same applies for index_buffer
and the returned SparseRange::index
pointer.
If Options::sparse_extract_value
was set to false
during construction of this instance, value_buffer
is ignored and SparseRange::value
is set to NULL
in the output. Similarly, if Options::sparse_extract_index
was set to false
during construction of this instance, index_buffer
is ignored and SparseRange::index
is set to NULL
in the output.
i | Index of the target dimension element, i.e., the row or column index. | |
[out] | value_buffer | Pointer to an array with enough space for at least N values, where N is defined as described for MyopicDenseExtractor::fetch() . |
[out] | index_buffer | Pointer to an array with enough space for at least N indices, where N is defined as described for MyopicDenseExtractor::fetch() . |
SparseRange
object describing the contents of the i
-th dimension element.