/* * TransferSettingToIParameterProvider.cpp * * Created on: 31 авг. 2021 г. * Author: sozonov */ #include "TransferSettingToIParameterProvider.hh" #include "../systemic/CustomParameters.hpp" #include #include void systemic::TransferSettingToIParameterProvider::transfer_setting(){ provider.try_lock(); //Создаём буфер в который в будущем уложим настройку string = provider->createParameterBuff( id, sett_data.get().second ); //Пытаемся заблокировать буфер, на время выполнения функции std::lock_guard guard(string); std::memcpy( string.get().first, sett_data.get().first, sett_data.get().second ); //Сохраним настройку provider->flushParameterBuff(id); provider.unlock(); } systemic::TransferSettingToIParameterProvider::TransferSettingToIParameterProvider( ResourceKeeper &_provider, Id _id, systemic::SharedData _sett_data, Id _link_id ): provider ( _provider ) , id( _id ), sett_data ( _sett_data ), link_id ( _link_id ){}