/* * SetValue.hh * * Created on: 4 рту. 2020 у. * Author: LeonidTitov */ #ifndef UMLIBRARY_SCHEMATIC_ACTION_SETVALUE_HH_ #define UMLIBRARY_SCHEMATIC_ACTION_SETVALUE_HH_ #include "../../systemic/IFunctor.hh" #include "../../systemic/IValueAsync.hpp" namespace schematic { namespace functor { template class SetValue : public systemic::IFunctor { typedef systemic::IValueType Value; typedef systemic::IFunctor Action; Value & value; public: SetValue( Value & value ); virtual void operator()( ValueType new_value ); }; } } template inline schematic::functor::SetValue::SetValue( Value & value ) : value(value) {} template inline void schematic::functor::SetValue::operator()( ValueType new_value) { value.set( new_value ); } #endif /* UMLIBRARY_SCHEMATIC_ACTION_SETVALUE_HH_ */