35 lines
883 B
C++
35 lines
883 B
C++
|
|
/*
|
|||
|
|
* LateBindingSignal.cpp
|
|||
|
|
*
|
|||
|
|
* Created on: 28 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. 2020 <EFBFBD>.
|
|||
|
|
* 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 );
|
|||
|
|
|
|||
|
|
}
|