#include <ERft.hpp>

Inheritance diagram for Opm::EclIO::ERft:
Inheritance graph

Public Types

using RftDate = std::tuple< int, int, int >
 
using RftReportList = std::vector< std::tuple< std::string, RftDate, float > >
 
using EclEntry = std::tuple< std::string, eclArrType, int64_t >
 

Public Member Functions

 ERft (const std::string &filename)
 
template<typename T >
const std::vector< T > & getRft (const std::string &name, const std::string &wellName, const RftDate &date) const
 
template<typename T >
const std::vector< T > & getRft (const std::string &name, const std::string &wellName, int year, int month, int day) const
 
template<typename T >
const std::vector< T > & getRft (const std::string &name, int reportIndex) const
 
std::vector< std::stringlistOfWells () const
 
std::vector< RftDatelistOfdates () const
 
const RftReportListlistOfRftReports () const
 
bool hasRft (const std::string &wellName, const RftDate &date) const
 
bool hasRft (const std::string &wellName, int year, int month, int day) const
 
std::vector< EclEntrylistOfRftArrays (int reportIndex) const
 
std::vector< EclEntrylistOfRftArrays (const std::string &wellName, const RftDate &date) const
 
std::vector< EclEntrylistOfRftArrays (const std::string &wellName, int year, int month, int day) const
 
bool hasArray (const std::string &arrayName, const std::string &wellName, const RftDate &date) const
 
bool hasArray (const std::string &arrayName, int reportInd) const
 
int numberOfReports ()
 
bool formattedInput () const
 
void loadData ()
 
void loadData (const std::string &arrName)
 
void loadData (int arrIndex)
 
void loadData (const std::vector< int > &arrIndex)
 
void clearData ()
 
std::vector< EclEntrygetList () const
 
const std::vector< int > & getElementSizeList () const
 
template<typename T >
const std::vector< T > & get (int arrIndex)
 
template<typename T >
const std::vector< T > & get (const std::string &name)
 
bool hasKey (const std::string &name) const
 
std::size_t count (const std::string &name) const
 
const std::vector< std::string > & arrayNames () const
 
std::size_t size () const
 
bool is_ix () const
 

Protected Member Functions

template<class T >
const std::vector< T > & getImpl (int arrIndex, eclArrType type, const std::unordered_map< int, std::vector< T > > &array, const std::string &typeStr)
 
std::streampos seekPosition (const std::vector< std::string >::size_type arrIndex) const
 

Protected Attributes

bool formatted
 
std::string inputFilename
 
std::unordered_map< int, std::vector< int > > inte_array
 
std::unordered_map< int, std::vector< bool > > logi_array
 
std::unordered_map< int, std::vector< double > > doub_array
 
std::unordered_map< int, std::vector< float > > real_array
 
std::unordered_map< int, std::vector< std::string > > char_array
 
std::vector< std::stringarray_name
 
std::vector< eclArrTypearray_type
 
std::vector< int64_t > array_size
 
std::vector< int > array_element_size
 
std::vector< uint64_t > ifStreamPos
 
std::map< std::string, int > array_index
 

Member Typedef Documentation

◆ EclEntry

using Opm::EclIO::EclFile::EclEntry = std::tuple<std::string, eclArrType, int64_t>
inherited

◆ RftDate

using Opm::EclIO::ERft::RftDate = std::tuple<int,int,int>

◆ RftReportList

using Opm::EclIO::ERft::RftReportList = std::vector<std::tuple<std::string, RftDate, float> >

Constructor & Destructor Documentation

◆ ERft()

Opm::EclIO::ERft::ERft ( const std::string filename)
explicit

Member Function Documentation

◆ arrayNames()

const std::vector< std::string > & Opm::EclIO::EclFile::arrayNames ( ) const
inlineinherited

◆ clearData()

◆ count()

std::size_t Opm::EclIO::EclFile::count ( const std::string name) const
inherited

◆ formattedInput()

bool Opm::EclIO::EclFile::formattedInput ( ) const
inlineinherited

◆ get() [1/2]

template<typename T >
const std::vector< T > & Opm::EclIO::EclFile::get ( const std::string name)
inherited

◆ get() [2/2]

template<typename T >
const std::vector< T > & Opm::EclIO::EclFile::get ( int  arrIndex)
inherited

◆ getElementSizeList()

const std::vector< int > & Opm::EclIO::EclFile::getElementSizeList ( ) const
inlineinherited

◆ getImpl()

template<class T >
const std::vector< T > & Opm::EclIO::EclFile::getImpl ( int  arrIndex,
eclArrType  type,
const std::unordered_map< int, std::vector< T > > &  array,
const std::string typeStr 
)
inlineprotectedinherited

◆ getList()

std::vector< EclEntry > Opm::EclIO::EclFile::getList ( ) const
inherited

◆ getRft() [1/3]

template<typename T >
const std::vector< T > & Opm::EclIO::ERft::getRft ( const std::string name,
const std::string wellName,
const RftDate date 
) const

◆ getRft() [2/3]

template<typename T >
const std::vector< T > & Opm::EclIO::ERft::getRft ( const std::string name,
const std::string wellName,
int  year,
int  month,
int  day 
) const

◆ getRft() [3/3]

template<typename T >
const std::vector< T > & Opm::EclIO::ERft::getRft ( const std::string name,
int  reportIndex 
) const

◆ hasArray() [1/2]

bool Opm::EclIO::ERft::hasArray ( const std::string arrayName,
const std::string wellName,
const RftDate date 
) const

◆ hasArray() [2/2]

bool Opm::EclIO::ERft::hasArray ( const std::string arrayName,
int  reportInd 
) const

◆ hasKey()

bool Opm::EclIO::EclFile::hasKey ( const std::string name) const
inherited

◆ hasRft() [1/2]

bool Opm::EclIO::ERft::hasRft ( const std::string wellName,
const RftDate date 
) const

◆ hasRft() [2/2]

bool Opm::EclIO::ERft::hasRft ( const std::string wellName,
int  year,
int  month,
int  day 
) const

◆ is_ix()

bool Opm::EclIO::EclFile::is_ix ( ) const
inherited

◆ listOfdates()

std::vector< RftDate > Opm::EclIO::ERft::listOfdates ( ) const

◆ listOfRftArrays() [1/3]

std::vector< EclEntry > Opm::EclIO::ERft::listOfRftArrays ( const std::string wellName,
const RftDate date 
) const

◆ listOfRftArrays() [2/3]

std::vector< EclEntry > Opm::EclIO::ERft::listOfRftArrays ( const std::string wellName,
int  year,
int  month,
int  day 
) const

◆ listOfRftArrays() [3/3]

std::vector< EclEntry > Opm::EclIO::ERft::listOfRftArrays ( int  reportIndex) const

◆ listOfRftReports()

const RftReportList & Opm::EclIO::ERft::listOfRftReports ( ) const
inline

◆ listOfWells()

std::vector< std::string > Opm::EclIO::ERft::listOfWells ( ) const

◆ loadData() [1/4]

void Opm::EclIO::EclFile::loadData ( )
inherited

◆ loadData() [2/4]

void Opm::EclIO::EclFile::loadData ( const std::string arrName)
inherited

◆ loadData() [3/4]

void Opm::EclIO::EclFile::loadData ( const std::vector< int > &  arrIndex)
inherited

◆ loadData() [4/4]

void Opm::EclIO::EclFile::loadData ( int  arrIndex)
inherited

◆ numberOfReports()

int Opm::EclIO::ERft::numberOfReports ( )
inline

◆ seekPosition()

std::streampos Opm::EclIO::EclFile::seekPosition ( const std::vector< std::string >::size_type  arrIndex) const
protectedinherited

◆ size()

std::size_t Opm::EclIO::EclFile::size ( ) const
inherited

Member Data Documentation

◆ array_element_size

std::vector<int> Opm::EclIO::EclFile::array_element_size
protectedinherited

◆ array_index

std::map<std::string, int> Opm::EclIO::EclFile::array_index
protectedinherited

◆ array_name

std::vector<std::string> Opm::EclIO::EclFile::array_name
protectedinherited

◆ array_size

std::vector<int64_t> Opm::EclIO::EclFile::array_size
protectedinherited

◆ array_type

std::vector<eclArrType> Opm::EclIO::EclFile::array_type
protectedinherited

◆ char_array

std::unordered_map<int, std::vector<std::string> > Opm::EclIO::EclFile::char_array
protectedinherited

◆ doub_array

std::unordered_map<int, std::vector<double> > Opm::EclIO::EclFile::doub_array
protectedinherited

◆ formatted

bool Opm::EclIO::EclFile::formatted
protectedinherited

◆ ifStreamPos

std::vector<uint64_t> Opm::EclIO::EclFile::ifStreamPos
protectedinherited

◆ inputFilename

std::string Opm::EclIO::EclFile::inputFilename
protectedinherited

◆ inte_array

std::unordered_map<int, std::vector<int> > Opm::EclIO::EclFile::inte_array
protectedinherited

◆ logi_array

std::unordered_map<int, std::vector<bool> > Opm::EclIO::EclFile::logi_array
protectedinherited

◆ real_array

std::unordered_map<int, std::vector<float> > Opm::EclIO::EclFile::real_array
protectedinherited

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