IODA Bundle
odc::core::Table Class Reference

#include <Table.h>

Collaboration diagram for odc::core::Table:
[legend]

Public Member Functions

eckit::Offset startPosition () const
 
eckit::Offset nextPosition () const
 
eckit::Length encodedDataSize () const
 
size_t rowCount () const
 
size_t columnCount () const
 
int32_t byteOrder () const
 
bool otherByteOrder () const
 
const MetaDatacolumns () const
 
const Propertiesproperties () const
 
eckit::Buffer readEncodedData ()
 
void decode (DecodeTarget &target)
 
Span span (const std::vector< std::string > &columns, bool onlyConstant=false)
 
Span decodeSpan (const std::vector< std::string > &columns)
 

Static Public Member Functions

static std::unique_ptr< TablereadTable (ThreadSharedDataHandle &dh)
 

Private Member Functions

 Table (const ThreadSharedDataHandle &dh)
 
const std::map< std::string, size_t > & columnLookup ()
 Lookups used for decoding. Memoised for efficiency. More...
 
const std::map< std::string, size_t > & simpleColumnLookup ()
 

Private Attributes

ThreadSharedDataHandle dh_
 
eckit::Offset startPosition_
 
eckit::Offset dataPosition_
 
eckit::Length dataSize_
 
eckit::Offset nextPosition_
 
int32_t byteOrder_
 
MetaData metadata_
 
Properties properties_
 
std::map< std::string, size_t > columnLookup_
 
std::map< std::string, size_t > simpleColumnLookup_
 

Detailed Description

Definition at line 36 of file Table.h.

Constructor & Destructor Documentation

◆ Table()

odc::core::Table::Table ( const ThreadSharedDataHandle dh)
private

Definition at line 34 of file Table.cc.

Here is the caller graph for this function:

Member Function Documentation

◆ byteOrder()

int32_t odc::core::Table::byteOrder ( ) const

Definition at line 58 of file Table.cc.

Here is the caller graph for this function:

◆ columnCount()

size_t odc::core::Table::columnCount ( ) const

Definition at line 54 of file Table.cc.

Here is the caller graph for this function:

◆ columnLookup()

const std::map< std::string, size_t > & odc::core::Table::columnLookup ( )
private

Lookups used for decoding. Memoised for efficiency.

Definition at line 83 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ columns()

const MetaData & odc::core::Table::columns ( ) const

Definition at line 66 of file Table.cc.

Here is the caller graph for this function:

◆ decode()

void odc::core::Table::decode ( DecodeTarget target)

Definition at line 114 of file Table.cc.

Here is the call graph for this function:

◆ decodeSpan()

Span odc::core::Table::decodeSpan ( const std::vector< std::string > &  columns)

Definition at line 295 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ encodedDataSize()

Length odc::core::Table::encodedDataSize ( ) const

Definition at line 46 of file Table.cc.

◆ nextPosition()

Offset odc::core::Table::nextPosition ( ) const

Definition at line 42 of file Table.cc.

Here is the caller graph for this function:

◆ otherByteOrder()

bool odc::core::Table::otherByteOrder ( ) const

Definition at line 62 of file Table.cc.

Here is the caller graph for this function:

◆ properties()

const Properties & odc::core::Table::properties ( ) const

Definition at line 70 of file Table.cc.

◆ readEncodedData()

Buffer odc::core::Table::readEncodedData ( )

Definition at line 74 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readTable()

std::unique_ptr< Table > odc::core::Table::readTable ( ThreadSharedDataHandle dh)
static

Definition at line 386 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ rowCount()

size_t odc::core::Table::rowCount ( ) const

Definition at line 50 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ simpleColumnLookup()

const std::map< std::string, size_t > & odc::core::Table::simpleColumnLookup ( )
private

Definition at line 104 of file Table.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ span()

Span odc::core::Table::span ( const std::vector< std::string > &  columns,
bool  onlyConstant = false 
)

Definition at line 211 of file Table.cc.

Here is the call graph for this function:

◆ startPosition()

Offset odc::core::Table::startPosition ( ) const

Definition at line 37 of file Table.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ byteOrder_

int32_t odc::core::Table::byteOrder_
private

Definition at line 81 of file Table.h.

◆ columnLookup_

std::map<std::string, size_t> odc::core::Table::columnLookup_
private

Definition at line 88 of file Table.h.

◆ dataPosition_

eckit::Offset odc::core::Table::dataPosition_
private

Definition at line 78 of file Table.h.

◆ dataSize_

eckit::Length odc::core::Table::dataSize_
private

Definition at line 79 of file Table.h.

◆ dh_

ThreadSharedDataHandle odc::core::Table::dh_
private

Definition at line 75 of file Table.h.

◆ metadata_

MetaData odc::core::Table::metadata_
private

Definition at line 83 of file Table.h.

◆ nextPosition_

eckit::Offset odc::core::Table::nextPosition_
private

Definition at line 80 of file Table.h.

◆ properties_

Properties odc::core::Table::properties_
private

Definition at line 84 of file Table.h.

◆ simpleColumnLookup_

std::map<std::string, size_t> odc::core::Table::simpleColumnLookup_
private

Definition at line 89 of file Table.h.

◆ startPosition_

eckit::Offset odc::core::Table::startPosition_
private

Definition at line 77 of file Table.h.


The documentation for this class was generated from the following files: