40 explicit ERst(
const std::string& filename);
42 bool hasReportStepNumber(
int number)
const;
43 bool hasArray(
const std::string& name,
int number)
const;
44 bool hasLGR(
const std::string& gridname,
int reportStepNumber)
const;
46 void loadReportStepNumber(
int number);
49 const std::vector<T>& getRestartData(
const std::string& name,
int reportStepNumber)
51 return getRestartData<T>(name,reportStepNumber, 0);
55 const std::vector<T>& getRestartData(
const std::string& name,
int reportStepNumber,
int occurrence);
58 const std::vector<T>& getRestartData(
int index,
int reportStepNumber)
60 auto indRange = this->getIndexRange(reportStepNumber);
61 return this->get<T>(index + std::get<0>(indRange));
65 const std::vector<T>& getRestartData(
const std::string& name,
int reportStepNumber,
const std::string& lgr_name);
68 const std::vector<T>& getRestartData(
int index,
int reportStepNumber,
const std::string& lgr_name);
70 int occurrence_count(
const std::string& name,
int reportStepNumber)
const;
71 size_t numberOfReportSteps()
const {
return seqnum.size(); };
73 const std::vector<int>& listOfReportStepNumbers()
const {
return seqnum; }
75 std::vector<EclEntry> listOfRstArrays(
int reportStepNumber);
76 std::vector<EclEntry> listOfRstArrays(
int reportStepNumber,
const std::string& lgr_name);
82 std::vector<int> seqnum;
83 mutable std::unordered_map<int,bool> reportLoaded;
84 std::map<int, std::pair<int,int>> arrIndexRange;
85 std::vector<std::vector<std::string>> lgr_names;
88 void initSeparate(
const int number);
90 int get_start_index_lgrname(
int number,
const std::string& lgr_name);
92 int getArrayIndex(
const std::string& name,
int seqnum,
int occurrence);
93 int getArrayIndex(
const std::string& name,
int number,
const std::string& lgr_name);
95 std::tuple<int,int> getIndexRange(
int reportStepNumber)
const;
98 restartStepWritePosition(
const int seqnumValue)
const;
This class implements a small container which holds the transmissibility mulitpliers for all the face...
Definition Exceptions.hpp:30