diff --git a/datapoollocal/LocalPoolVariable.h b/datapoollocal/LocalPoolVariable.h index 73d691d7..93ac14b0 100644 --- a/datapoollocal/LocalPoolVariable.h +++ b/datapoollocal/LocalPoolVariable.h @@ -116,6 +116,8 @@ public: */ ReturnValue_t commit(dur_millis_t lockTimeout = MutexIF::BLOCKING) override; + + LocalPoolVar &operator=(T newValue); protected: /** * @brief Like #read, but without a lock protection of the global pool. @@ -170,4 +172,5 @@ using lp_int64_t = LocalPoolVar; using lp_float_t = LocalPoolVar; using lp_double_t = LocalPoolVar; + #endif diff --git a/datapoollocal/LocalPoolVariable.tpp b/datapoollocal/LocalPoolVariable.tpp index a16e1119..6e6f27aa 100644 --- a/datapoollocal/LocalPoolVariable.tpp +++ b/datapoollocal/LocalPoolVariable.tpp @@ -103,6 +103,13 @@ inline ReturnValue_t LocalPoolVar::commitWithoutLock() { return RETURN_OK; } +template +inline LocalPoolVar & LocalPoolVar::operator =(T newValue) { + value = newValue; + return *this; +} + + template inline pool_rwm_t LocalPoolVar::getReadWriteMode() const { return readWriteMode;