MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/application/schematic/ApplySignal.hh

47 lines
1.1 KiB
C++

/*
* ApplySignal.hh
*
* Created on: 10 èþí. 2020 ã.
* Author: LeonidTitov
*/
#ifndef UMLIBRARY_APPLICATION_SCHEMATIC_APPLYSIGNAL_HH_
#define UMLIBRARY_APPLICATION_SCHEMATIC_APPLYSIGNAL_HH_
#include "../ISetupStep.hh"
#include "../../schematic/functor/FunctorArgsSignal.hh"
namespace application { namespace schematic {
//!Ìîäóëü ïðèìåíÿåò ñèãíàë êàê àðãóìåíò - ê ôóíêöèè-äåéñòâèþ.
struct ApplySignal : public ISetupStep {
typedef systemic::IFunctor<void> Action;
typedef systemic::IFunctor<void, float> Apply;
Apply * apply = nullptr;
systemic::ISignal * arg = nullptr;
bool input( Environment & env );
void build( Environment & env );
struct Links {
Environment::StatusId value; //!<Ïðèìåíÿåìûé â êà÷åñòâå àðãóìåíòà ôóíêöèè ñèãíàë.
Environment::Id apply; //!<Ôóíêöèÿ ïðèìåíåíèÿ ñèãíàëà.
Environment::Id action; //!<Èòîãîâîå äåéñòâèå.
};
const Links & links;
ApplySignal( const Links & links ) : links(links) {}
};
}}
#endif /* UMLIBRARY_APPLICATION_SCHEMATIC_APPLYSIGNAL_HH_ */