Skip to content
  • Sebastian Marsching's avatar
    Improve initialization logic. · ecb22a27
    Sebastian Marsching authored
    ApplicationCore expects that each process variable that is writable from
    the control-system is written once during initialization. This was
    already ensured, but the way how it was done meant that this write might
    happen with initial (zero) value instead of the restored value when
    using Autosave.
    
    This is improved now, so that when setting the PINI field of an output
    record to YES, RUN, or RUNNING, a value that is restored through
    Autosave will be the first value that is sent to the application.
    
    In addition to that, ApplicationBase::optimiseUnmappedVariables is now
    called with the set of process variables that is provided by the
    application but not mapped to any EPICS records. This allows
    ApplicationCore to skip updates for these PVs, improving performance.
    
    All these changes only affect the use of the control-system adapter with
    applications (through the ChimeraTK Control System Adapter). When
    directly accessing a device through Device Access, these changes have no
    effect.
    ecb22a27
Loading