Beispiel #1
0
 public SymbolFactoryServices(IBinder binder, ISymbolFactory factory, IAccessorRawValue accessor, ISession session)
 {
     if (binder == null)
     {
         throw new ArgumentNullException("binder");
     }
     if (factory == null)
     {
         throw new ArgumentNullException("loader");
     }
     this._binder        = binder;
     this._valueAccessor = accessor;
     this._symbolFactory = factory;
     this._session       = session;
 }
Beispiel #2
0
        internal AdsSymbolLoader(IAdsConnection connection, SymbolLoaderSettings settings, IAccessorRawValue accessor, ISession session, SymbolUploadInfo symbolsInfo)
        {
            if (settings == null)
            {
                throw new ArgumentNullException("settings");
            }
            if (accessor == null)
            {
                throw new ArgumentNullException("accessor");
            }
            if (symbolsInfo == null)
            {
                throw new ArgumentNullException("symbolsInfo");
            }
            ISymbolFactory symbolFactory = null;

            this._connection       = connection;
            this._symbolUploadInfo = symbolsInfo;
            symbolFactory          = (settings.SymbolsLoadMode != SymbolsLoadMode.DynamicTree) ? ((ISymbolFactory) new TwinCAT.Ads.TypeSystem.SymbolFactory(settings.NonCachedArrayElements)) : ((ISymbolFactory) new DynamicSymbolFactory(new TwinCAT.Ads.TypeSystem.SymbolFactory(settings.NonCachedArrayElements), settings.NonCachedArrayElements));
            this._settings         = settings;
            AdsBinder binder = new AdsBinder(this._connection.Address, this, symbolFactory, this.UseVirtualInstances);

            this._symbolFactorServices = new SymbolFactoryServices(binder, symbolFactory, accessor, session);
            symbolFactory.Initialize(this._symbolFactorServices);
            this._rootNamespace = this._connection.Address.ToString();
            this._namespaces    = new NamespaceCollection();
        }
Beispiel #3
0
 public void SetValueAccessor(IAccessorRawValue accessor)
 {
     this.accessor = accessor;
 }
 public ValueAccessorException(string message, IAccessorRawValue accessor, Exception innerException) : base(message, innerException)
 {
     this.Accessor = accessor;
 }
 public ValueAccessorException(IAccessorRawValue accessor, Exception innerException) : this($"Value Accessor '{accessor.ToString()}' failed!", accessor, innerException)
 {
 }
 public ValueAccessorException(string message, IAccessorRawValue accessor) : base(message)
 {
     this.Accessor = accessor;
 }