// DataProvider extensions
 public static void Register(this IDataProvider dataprovider)
 {
     if (dataproviders.Contains(dataprovider))
     {
         return;
     }
     dataproviders.Add(dataprovider);
     dataprovider.DataPointAdded   += OnDataPointAdded;
     dataprovider.DataPointRemoved += OnDataPointRemoved;
     ProviderAdded?.Invoke(dataprovider);
     InvokeAddDataPointsOnAll(dataprovider);
 }
예제 #2
0
        public bool AddProvider(string name)
        {
            bool result = false;

            if (!HasProvider(name))
            {
                ProviderStore.Add(name, new ProviderData(name));
                ProviderAdded?.Invoke(this, new ProviderDataEventArgs(name));
                result = true;
            }
            return(result);
        }
예제 #3
0
        private void AddProvider(RecogEngine entry)
        {
            var         id = entry.RecogEngineID;
            RecogEngine oldServer;

            if (ProviderAdded.TryRemove(id, out oldServer))
            {
                this.ProviderList.Remove(oldServer);
            }
            var priorInfo = this.ProviderAdded.GetOrAdd(id, entry);

            if (Object.ReferenceEquals(priorInfo, entry))
            {
                this.ProviderList.Add(entry);
            }
        }