/* * StatusSample.cpp * * Created on: 22 èþë. 2020 ã. * Author: LeonidTitov */ #include "StatusSample.hh" #include "../../schematic/ValueSample.hpp" bool application::schematic::StatusSample::input( Environment & env ) { return status = env.statuses.get( links.status ); } void application::schematic::StatusSample::build( Environment & env ) { typedef typename ::schematic::ValueSample StsSample; StsSample * sample = memories::instance_object( env.static_object_ma, *status ); systemic::ProcScheduler::ProcessParameter proc = { .priority = params.priority, .period = params.period, .phase = params.phase, .controlled = true }; env.scheduler.registerProcess( params.processor_id, *sample, proc ); env.statuses.create( links.sampled, sample->getSample() ); } application::schematic::StatusSample::StatusSample( const Links & links, const configuration::ProcessConfig & params ) : links(links), params(params) {}