diff --git a/opm/parser/eclipse/Deck/DeckKeyword.cpp b/opm/parser/eclipse/Deck/DeckKeyword.cpp index 6a491a4f6..df91bd431 100644 --- a/opm/parser/eclipse/Deck/DeckKeyword.cpp +++ b/opm/parser/eclipse/Deck/DeckKeyword.cpp @@ -24,11 +24,21 @@ namespace Opm { DeckKeyword::DeckKeyword(const std::string& keywordName) { m_knownKeyword = true; m_keywordName = keywordName; + m_deckIndex = -1; } DeckKeyword::DeckKeyword(const std::string& keywordName, bool knownKeyword) { m_knownKeyword = knownKeyword; m_keywordName = keywordName; + m_deckIndex = -1; + } + + ssize_t DeckKeyword::getDeckIndex() const { + return m_deckIndex; + } + + void DeckKeyword::setDeckIndex(size_t deckIndex) { + m_deckIndex = deckIndex; } std::string DeckKeyword::name() const { diff --git a/opm/parser/eclipse/Deck/DeckKeyword.hpp b/opm/parser/eclipse/Deck/DeckKeyword.hpp index 91353c400..b8866d569 100644 --- a/opm/parser/eclipse/Deck/DeckKeyword.hpp +++ b/opm/parser/eclipse/Deck/DeckKeyword.hpp @@ -28,6 +28,9 @@ namespace Opm { DeckRecordConstPtr getDataRecord() const; bool isKnown() const; + ssize_t getDeckIndex() const; + void setDeckIndex(size_t deckIndex); + const std::vector& getIntData() const; const std::vector& getDoubleData() const; const std::vector& getStringData() const; @@ -36,7 +39,7 @@ namespace Opm { std::string m_keywordName; std::vector m_recordList; bool m_knownKeyword; - + ssize_t m_deckIndex; }; typedef boost::shared_ptr DeckKeywordPtr; typedef boost::shared_ptr DeckKeywordConstPtr; diff --git a/opm/parser/eclipse/Deck/tests/DeckKeywordTests.cpp b/opm/parser/eclipse/Deck/tests/DeckKeywordTests.cpp index c5cde38b2..6116f6556 100644 --- a/opm/parser/eclipse/Deck/tests/DeckKeywordTests.cpp +++ b/opm/parser/eclipse/Deck/tests/DeckKeywordTests.cpp @@ -69,6 +69,15 @@ BOOST_AUTO_TEST_CASE(setUnknown_wasknown_nowunknown) { } +BOOST_AUTO_TEST_CASE(DeckIndex) { + DeckKeywordPtr deckKeyword(new DeckKeyword("KW")); + BOOST_CHECK_EQUAL( -1 , deckKeyword->getDeckIndex()); + deckKeyword->setDeckIndex( 10); + BOOST_CHECK_EQUAL(10 , deckKeyword->getDeckIndex()); +} + + +