include/orc/Reader.hh
/**
* Options for creating a RowReader.
*/
class RowReaderOptions {
private:
ORC_UNIQUE_PTR<RowReaderOptionsPrivate> privateBits;
src/Options.hh
/**
* RowReaderOptions Implementation
*/
struct RowReaderOptionsPrivate {
ColumnSelection selection;
std::list<uint64_t> includedColumnIndexes;
std::list<std::string> includedColumnNames;
uint64_t dataStart;
uint64_t dataLength;
bool throwOnHive11DecimalOverflow;
int32_t forcedScaleOnHive11Decimal;
bool enableLazyDecoding;
RowReaderOptionsPrivate() {
selection = ColumnSelection_NONE;
dataStart = 0;
dataLength = std::numeric_limits<uint64_t>::max();
throwOnHive11DecimalOverflow = true;
forcedScaleOnHive11Decimal = 6;
enableLazyDecoding = false;
}
};
RowReaderOptions& RowReaderOptions::range(uint64_t offset, uint64_t length) {
privateBits->dataStart = offset;
privateBits->dataLength = length;
return *this;
}