35 lines
883 B
C++
35 lines
883 B
C++
/*
|
|
* LateBindingSignal.cpp
|
|
*
|
|
* Created on: 28 ñåíò. 2020 ã.
|
|
* Author: LeonidTitov
|
|
*/
|
|
|
|
#include "LateBindingSignal.hh"
|
|
|
|
void application::schematic::LateBindingSignal::build( Environment & env ) {
|
|
|
|
typedef ::schematic::LateBindingValue<float> LateSignal;
|
|
|
|
LateSignal * late_signal = memories::instance_object<LateSignal>(env.static_data_ma, setting.default_value);
|
|
|
|
env.signals.add( links.late, late_signal );
|
|
env.rholder.share<LateSignal>( *late_signal, links.bind );
|
|
|
|
}
|
|
|
|
bool application::schematic::BindSignal::input( Environment & env ) {
|
|
|
|
typedef ::schematic::LateBindingValue<float> LateSignal;
|
|
|
|
return grab( late_signal, env.rholder.getShared<LateSignal>(links.bind) )
|
|
and ( origin = env.signals.get( links.origin ) );
|
|
|
|
}
|
|
|
|
void application::schematic::BindSignal::build( Environment & env ) {
|
|
|
|
late_signal->bind( origin );
|
|
|
|
}
|