diff options
Diffstat (limited to 'extensions')
-rw-r--r-- | extensions/openpower-pels/mtms.cpp | 13 | ||||
-rw-r--r-- | extensions/openpower-pels/mtms.hpp | 26 |
2 files changed, 33 insertions, 6 deletions
diff --git a/extensions/openpower-pels/mtms.cpp b/extensions/openpower-pels/mtms.cpp index 9f4144e..3ef8e87 100644 --- a/extensions/openpower-pels/mtms.cpp +++ b/extensions/openpower-pels/mtms.cpp @@ -62,7 +62,7 @@ MTMS::MTMS(Stream& stream) } } -Stream& operator<<(Stream& s, MTMS& mtms) +Stream& operator<<(Stream& s, const MTMS& mtms) { for (size_t i = 0; i < MTMS::mtmSize; i++) { @@ -79,16 +79,23 @@ Stream& operator<<(Stream& s, MTMS& mtms) Stream& operator>>(Stream& s, MTMS& mtms) { + std::array<uint8_t, MTMS::mtmSize> mtm; + for (size_t i = 0; i < MTMS::mtmSize; i++) { - s >> mtms.machineTypeAndModelRaw()[i]; + s >> mtm[i]; } + mtms.setMachineTypeAndModel(mtm); + + std::array<uint8_t, MTMS::snSize> sn; for (size_t i = 0; i < MTMS::snSize; i++) { - s >> mtms.machineSerialNumberRaw()[i]; + s >> sn[i]; } + mtms.setMachineSerialNumber(sn); + return s; } } // namespace pels diff --git a/extensions/openpower-pels/mtms.hpp b/extensions/openpower-pels/mtms.hpp index 6b76ec7..928fb74 100644 --- a/extensions/openpower-pels/mtms.hpp +++ b/extensions/openpower-pels/mtms.hpp @@ -63,12 +63,22 @@ class MTMS * * @return std::array<uint8_t, mtmSize>& - The TM value */ - std::array<uint8_t, mtmSize>& machineTypeAndModelRaw() + const std::array<uint8_t, mtmSize>& machineTypeAndModelRaw() const { return _machineTypeAndModel; } /** + * @brief Sets the machine type and model field + * + * @param[in] mtm - The new value + */ + void setMachineTypeAndModel(const std::array<uint8_t, mtmSize>& mtm) + { + _machineTypeAndModel = mtm; + } + + /** * @brief Returns the machine type/model value * * @return std::string - The TM value @@ -91,12 +101,22 @@ class MTMS * * @return std::array<uint8_t, snSize>& - The SN value */ - std::array<uint8_t, snSize>& machineSerialNumberRaw() + const std::array<uint8_t, snSize>& machineSerialNumberRaw() const { return _serialNumber; } /** + * @brief Sets the machine serial number field + * + * @param[in] sn - The new value + */ + void setMachineSerialNumber(const std::array<uint8_t, snSize>& sn) + { + _serialNumber = sn; + } + + /** * @brief Returns the machine serial number value * * @return std::string - The SN value @@ -157,7 +177,7 @@ Stream& operator>>(Stream& s, MTMS& mtms); * * @return Stream& */ -Stream& operator<<(Stream& s, MTMS& mtms); +Stream& operator<<(Stream& s, const MTMS& mtms); } // namespace pels } // namespace openpower |