MotorControlModuleSDFM_TMS3.../Projects/EFC_Communication/UMLibrary/application/basic/PrivateParamProvider.hh

59 lines
1.7 KiB
C++
Raw Normal View History

2024-06-07 11:12:56 +03:00
/*
* PrivateParamProvider.hh
*
* Created on: 30 авг. 2021 г.
* Author: sozonov
*/
#ifndef UMLIBRARY_APPLICATION_BASIC_PRIVATEPARAMPROVIDER_HH_
#define UMLIBRARY_APPLICATION_BASIC_PRIVATEPARAMPROVIDER_HH_
#include "../ISetupStep.hh"
#include "../../systemic/IFunctor.hh"
#include "../../systemic/IParameterProvider.hh"
#include "../../communication/service/FailureOperator.hh"
namespace application { namespace basic {
//!Копирование интерфейса предоставления параметров.
struct PrivateParamProvider : public ISetupStep {
typedef systemic::IFunctor<void> Action;
systemic::IParameterProvider * provider_interface = nullptr;
ResourceKeeper<systemic::IParameterProvider> * provider = nullptr;
systemic::SharedData platform_string;
const systemic::CustomParameters::ProviderId const_prov = 0;
struct Links {
Environment::Id param_provider; //!<Интерфейс проводника параметров..
Environment::SettingId params; //!<Пользовательские настроки.
Environment::Id transfer; //!<Передача данных из поля с настройками во внешную память.
};
const Links & links;
struct Setting {
uint32_t parameter_id; //!<Идентификатор настроек.
};
const Setting & setting;
bool input( Environment & env );
bool prepare();
void build( Environment & env );
PrivateParamProvider( const Links & links , const Setting & setting);
};
}}
#endif /* UMLIBRARY_APPLICATION_BASIC_PRIVATEPARAMPROVIDER_HH_ */