allow constructing FoamConfig from tables

also add accessors and equality operator
This commit is contained in:
Arne Morten Kvarving
2019-11-29 09:57:25 +01:00
parent b56cef3103
commit d13b9a0a15
2 changed files with 22 additions and 0 deletions

View File

@@ -65,8 +65,10 @@ class FoamConfig
public:
FoamConfig() = default;
explicit FoamConfig(const Deck&);
FoamConfig(const std::vector<FoamData>& data);
const FoamData& getRecord(std::size_t index) const;
const std::vector<FoamData>& records() const;
std::size_t size() const;
bool empty() const;
@@ -75,6 +77,8 @@ public:
const_iterator begin() const;
const_iterator end() const;
bool operator==(const FoamConfig& data) const;
private:
std::vector<FoamData> data_;
};

View File

@@ -161,12 +161,23 @@ FoamConfig::FoamConfig(const Deck& deck)
}
}
FoamConfig::FoamConfig(const std::vector<FoamData>& data)
: data_(data)
{
}
const FoamData&
FoamConfig::getRecord(std::size_t index) const
{
return this->data_.at(index);
}
const std::vector<FoamData>&
FoamConfig::records() const
{
return this->data_;
}
std::size_t
FoamConfig::size() const
{
@@ -190,4 +201,11 @@ FoamConfig::end() const
{
return this->data_.end();
}
bool
FoamConfig::operator==(const FoamConfig& data) const
{
return data_ == data.data_;
}
} // namespace Opm