Beispiel #1
0
        public ScanEngineHelper(ScanEnginePartConfig config, params IScanEnginePlugin [] pluginParamsArray)
        {
            Config = new ScanEnginePartConfig(config);
            Logger = new Logging.Logger(Name);

            AddRange(Config.PluginsToAddSet);
            AddRange(pluginParamsArray);
        }
Beispiel #2
0
        public ScanEnginePart(ScanEnginePartConfig config, params IScanEnginePlugin[] pluginParamsArray)
            : base(config.Name, initialSettings: SimpleActivePartBaseSettings.DefaultVersion2.Build(waitTimeLimit: config.NominalServicePeriod, partBaseIVI: config.PartBaseIVI, disableBusyBehavior: true))
        {
            ActionLoggingConfig = Modular.Action.ActionLoggingConfig.Debug_Debug_Trace_Trace;    // redefine the log levels for actions

            Config = new ScanEnginePartConfig(config);

            PrivateBaseState.SetSimulated(false, true);

            scanEngineHelper = new ScanEngineHelper(config, pluginParamsArray);
        }
Beispiel #3
0
        /// <summary>
        /// Copy constructor.
        /// </summary>
        public ScanEnginePartConfig(ScanEnginePartConfig other)
        {
            Name    = other.Name;
            IConfig = other.IConfig ?? Config.Instance;
            IValuesInterconnection fallbackIVI = other.PartBaseIVI ?? other.PlugInsIVI ?? Values.Instance;

            PartBaseIVI       = other.PartBaseIVI ?? fallbackIVI;
            PlugInsIVI        = other.PlugInsIVI ?? fallbackIVI;
            Installed         = other.Installed;
            NominalRateInHz   = other.NominalRateInHz;
            _pluginsToAddList = other._pluginsToAddList;        // no need to clone: it is already readonly.
            _pluginsToAddSet  = other._pluginsToAddSet;
        }
Beispiel #4
0
 public ScanEnginePart(ScanEnginePartConfig config, IEnumerable <IScanEnginePlugin> pluginSet)
     : this(config, pluginSet.ToArray())
 {
 }