26 lines
609 B
C++
26 lines
609 B
C++
|
|
/*
|
|||
|
|
* ApplySignal.cpp
|
|||
|
|
*
|
|||
|
|
* Created on: 10 <EFBFBD><EFBFBD><EFBFBD>. 2020 <EFBFBD>.
|
|||
|
|
* Author: LeonidTitov
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
#include "ApplySignal.hh"
|
|||
|
|
|
|||
|
|
bool application::schematic::ApplySignal::input( Environment & env ) {
|
|||
|
|
|
|||
|
|
return ( arg = env.signals.get( links.value ) )
|
|||
|
|
and grab( apply, env.rholder.getShared<Apply>( links.apply ) );
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void application::schematic::ApplySignal::build( Environment & env ) {
|
|||
|
|
|
|||
|
|
typedef ::schematic::functor::FunctorArgsSignal Object;
|
|||
|
|
|
|||
|
|
Object * action = memories::instance_object<Object>( env.static_object_ma, *arg, *apply );
|
|||
|
|
|
|||
|
|
env.rholder.share<Action>( *action, links.action );
|
|||
|
|
|
|||
|
|
}
|