1#ifndef TATAMI_EXTRACTOR_HPP
2#define TATAMI_EXTRACTOR_HPP
23template<
typename Value_,
typename Index_>
40 virtual const Value_*
fetch(Index_ i, Value_* buffer) = 0;
59 template<
class Oracle_>
60 void set_oracle(Oracle_) {}
71template<
typename Value_,
typename Index_>
85 const Value_*
fetch(Value_* buffer) {
86 return fetch(0, buffer);
108 virtual const Value_*
fetch(Index_ i, Value_* buffer) = 0;
127 template<
class Oracle_>
128 void set_oracle(Oracle_) {}
139template<
typename Value_,
typename Index_>
180 template<
class Oracle_>
181 void set_oracle(Oracle_) {}
192template<
typename Value_,
typename Index_>
215 return fetch(0, value_buffer, index_buffer);
257 template<
class Oracle_>
258 void set_oracle(Oracle_) {}
272template<
bool oracle_,
typename Value_,
typename Index_>
283template<
bool oracle_,
typename Value_,
typename Index_>
Store information about extracted sparse elements.
Flexible representations for matrix data.
Definition Extractor.hpp:15
typename std::conditional< oracle_, OracularDenseExtractor< Value_, Index_ >, MyopicDenseExtractor< Value_, Index_ > >::type DenseExtractor
Definition Extractor.hpp:273
typename std::conditional< oracle_, OracularSparseExtractor< Value_, Index_ >, MyopicSparseExtractor< Value_, Index_ > >::type SparseExtractor
Definition Extractor.hpp:284
A range of a sparse vector.
Definition SparseRange.hpp:32