コード例 #1
0
        public ExchangeRequirements_TfNSW_Drainage(List <IfcPropertySetTemplate> propertyTemplates) : base()
        {
            PropertyTemplates.AddRange(propertyTemplates);

            IfcClassification classification = new IfcClassification(new DatabaseIfc(ModelView.Ifc4NotAssigned), "Uniclass2015");

            //Indicitive/candidate sender, receiver, activity, process...
            ApplicableProcess.Add(new IfcClassificationReference(classification)
            {
                Identification = "PM_40_30", Name = "Design information"
            });
            Senders.Add(new IfcClassificationReference(classification)
            {
                Identification = "Ro_50_20_28", Name = "Drainage engineer (D)"
            });
            Receivers.Add(new IfcClassificationReference(classification)
            {
                Identification = "Ro_10_30", Name = "Asset management roles"
            });
            Activities.Add(new IfcClassificationReference(classification)
            {
                Identification = "Ac_05_40", Name = "Design stage activities"
            });
            Activities.Add(new IfcClassificationReference(classification)
            {
                Identification = "Ac_05_60", Name = "Handover and close-out stage activities"
            });

            //Exchange Requirements
            Concepts.Add(new Concept_TfNSW_AllDistributionElements());             // No building element proxies, all elements distribution element
            Concepts.Add(new Concept_TfNSW_StormWaterPipeSingleSweep());           // Future might force pipe axis definition with attributes
            // Validate all Systems are drainage
            // Validate Distribution System is assigned to all elements
            // To be advanced further
        }
コード例 #2
0
        private void OnAddReceiver()
        {
            var viewModel = new ReceiverEntryViewModel(new BleReceiver());

            viewModel.OnRemove += vm => Receivers.Remove(vm);
            Receivers.Add(viewModel);
        }
コード例 #3
0
        public void Init()
        {
            allPositions.Add(Quarterback);
            offensivePositions.Add(Quarterback);
            for (int i = 1; i <= Max; i++)
            {
                Receivers.Add(new Position("WR" + i.ToString()));
            }
            allPositions.AddRange(Receivers);
            offensivePositions.AddRange(Receivers);
            for (int i = 1; i <= Max; i++)
            {
                Runningbacks.Add(new Position("RB" + i.ToString()));
            }
            allPositions.AddRange(Runningbacks);
            offensivePositions.AddRange(Runningbacks);
            for (int i = 1; i <= Max; i++)
            {
                OffensiveLinemen.Add(new Position("OL" + i.ToString()));
            }
            OffensiveLinemen[0].HasBall = true;
            allPositions.AddRange(OffensiveLinemen);
            offensivePositions.AddRange(OffensiveLinemen);
            for (int i = 1; i <= Max; i++)
            {
                TightEnds.Add(new Position("TE" + i.ToString()));
            }
            allPositions.AddRange(TightEnds);
            offensivePositions.AddRange(TightEnds);


            for (int i = 1; i <= Max; i++)
            {
                Cornerbacks.Add(new Position("CB" + i.ToString()));
            }
            allPositions.AddRange(Cornerbacks);
            defensivePositions.AddRange(Cornerbacks);
            for (int i = 1; i <= Max; i++)
            {
                Linebackers.Add(new Position("LB" + i.ToString()));
            }
            allPositions.AddRange(Linebackers);
            defensivePositions.AddRange(Linebackers);
            for (int i = 1; i <= Max; i++)
            {
                DefensiveLinemen.Add(new Position("DL" + i.ToString()));
            }
            DefensiveLinemen[0].HasBall = true;
            allPositions.AddRange(DefensiveLinemen);
            defensivePositions.AddRange(DefensiveLinemen);
            for (int i = 1; i <= Max; i++)
            {
                Safeties.Add(new Position("S" + i.ToString()));
            }
            allPositions.AddRange(Safeties);
            defensivePositions.AddRange(Safeties);
        }
コード例 #4
0
        public void ParseFromVectorDbcString(string line)
        {
            // split signal line into two
            var halfsplit = Regex.Split(line, DbcHalfPattern);
            // split 2nd half of signal
            var split2ndpart = Regex.Split(halfsplit[2], DbcSignalSecondHalfPattern);
            var rawsplit     = Regex.Split(split2ndpart[0].Trim(), VectorDbcPattern);

            // split 1st half of signal
            halfsplit = Regex.Split(halfsplit[0], @"[^\w]+");

            try
            {
                //// This is invariant
                //NumberFormatInfo format = new NumberFormatInfo();
                //// Set the decimal seperator
                //format.NumberDecimalSeparator = ".";
                FieldName = halfsplit[2];
                StartBit  = int.Parse(rawsplit[0]);
                LengthBit = int.Parse(rawsplit[1]);
                //Factor = double.Parse(rawsplit[3], format);
                //Offset = double.Parse(rawsplit[4], format);
                Factor    = double.Parse(rawsplit[3]);
                Offset    = double.Parse(rawsplit[4]);
                RawOffset = (int)(Offset / Factor);
                //MinValue = double.Parse(rawsplit[5], format);
                //MaxValue = double.Parse(rawsplit[6], format);
                MinValue = double.Parse(rawsplit[5]);
                MaxValue = double.Parse(rawsplit[6]);
                Order    = (rawsplit[2].Contains("1")) ? BitLayout.Intel : BitLayout.Motorolla;
                Signed   = (rawsplit[2].Contains("-"));
                SigType  = GetSigType();
            }
            catch (Exception e)
            {
                Console.WriteLine($"(!)Parsing exception occured in line'{line}'.{Environment.NewLine}" +
                                  $"Text: {e.Message}");
            }

            FieldUnit = "-";

            if (split2ndpart.Length == 3)
            {
                FieldUnit = split2ndpart[1];
            }

            var receivers = Regex.Split(split2ndpart.Last().Trim(), VectorDbcPattern);

            Receivers.Clear();

            foreach (var rx in receivers)
            {
                Receivers.Add(rx);
            }
        }
コード例 #5
0
 public void Add(NFLPlayer player, string playerCat)
 {
     if (playerCat == Constants.K_QUARTERBACK_CAT)
     {
         Quarterbacks.Add(player);
     }
     else
     {
         Receivers.Add(player);
     }
 }
コード例 #6
0
    public void AddReceiver(Player player)
    {
        if (Receivers.Contains(player) || player == Giver)
        {
            return;
        }

        Receivers.Add(player);

        if (MaxReceivers == Receivers.Count)
        {
            DistributeReward();
        }
    }
コード例 #7
0
ファイル: Logger.cs プロジェクト: masums/ITCC.Library
        /// <summary>
        ///     Registers receivers for log notifications
        /// </summary>
        /// <param name="receiver">Log receiver (instance)</param>
        /// <param name="mutableReceiver">If so, then receiver's LogLevel is always coherent with Logger's</param>
        /// <returns>Operation status</returns>
        public static bool RegisterReceiver(ILogReceiver receiver, bool mutableReceiver = false)
        {
            if (receiver == null)
            {
                return(false);
            }
            lock (LockObject)
            {
                LogEntryEvent += receiver.WriteEntry;
                if (mutableReceiver)
                {
                    MutableReceivers.Add(receiver);
                }
                Receivers.Add(receiver);
            }

            return(true);
        }
コード例 #8
0
        public void Init()
        {
            Quarterback.Add(new Lineup("QB"));
            for (int i = 1; i <= Max; i++)
            {
                Receivers.Add(new Lineup("WR" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                Runningbacks.Add(new Lineup("RB" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                OffensiveLinemen.Add(new Lineup("OL" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                TightEnds.Add(new Lineup("TE" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                Cornerbacks.Add(new Lineup("CB" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                Linebackers.Add(new Lineup("LB" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                DefensiveLinemen.Add(new Lineup("DL" + i.ToString()));
            }

            for (int i = 1; i <= Max; i++)
            {
                Safeties.Add(new Lineup("S" + i.ToString()));
            }
        }
コード例 #9
0
ファイル: Server.cs プロジェクト: TomCrow/VsadilNestihl
        private void ConnectionHandler(IAsyncResult ar)
        {
            if (!IsStarted)
            {
                return;
            }

            lock (ReceiversLock)
            {
                try
                {
                    Receiver client = new Receiver(Listener.EndAcceptTcpClient(ar), this, ClientDisconnected);
                    client.Start();
                    Receivers.Add(client);
                    OnClientConnected?.Invoke(this, client);
                }
                catch (ObjectDisposedException) { }
            }

            WaitForConnection();
        }
コード例 #10
0
        private void LoadExistingConfiguration()
        {
            var config = BleLocatorModel.Instance.BleSystemConfiguration;

            ReceiverPaths     = config.ReceiverPaths.HasSomething()? new List <ReceiverPath>(config.ReceiverPaths):new List <ReceiverPath>();
            UseWeightedPoints = config.UseWeightedPaths;
            if (config.BleReceivers.HasSomething())
            {
                foreach (var bleReceiver in config.BleReceivers)
                {
                    var viewModel = new ReceiverEntryViewModel(bleReceiver.Value);
                    viewModel.OnRemove += vm => Receivers.Remove(vm);
                    Receivers.Add(viewModel);
                }
            }
            else
            {
                var viewModel = new ReceiverEntryViewModel(new BleReceiver());
                viewModel.OnRemove += vm => Receivers.Remove(vm);
                Receivers.Add(viewModel);
            }
            if (config.BleTransmitters.HasSomething())
            {
                foreach (var transmitter in config.BleTransmitters)
                {
                    var viewModel = new TransmitterEntryViewModel(transmitter.Value);
                    viewModel.OnRemove += vm => Transmitters.Remove(vm);
                    Transmitters.Add(viewModel);
                }
            }
            else
            {
                var viewModel = new TransmitterEntryViewModel(new BleTransmitter());
                viewModel.OnRemove += vm => Transmitters.Remove(vm);
                Transmitters.Add(viewModel);
            }
        }
        /// <summary>
        /// Adds a <paramref name="receiver"/> to the <see cref="ImportManager"/>
        /// </summary>
        /// <param name="receiver">The receiver to be added</param>
        /// <returns>true if the receiver was successfully added</returns>
        public bool RegisterExisting(Receiver receiver)
        {
            string streamID = receiver.StreamId;

            if (Receivers.ContainsKey(streamID))
            {
                Debug.LogWarning($"Failed to add {typeof(Receiver)} because one already existed for {nameof(streamID)}:{streamID}");
                return(false);
            }

            if (!StreamFromID.ContainsKey(streamID))
            {
                Debug.LogWarning($"Failed to add {typeof(Receiver)} because no {typeof(SpeckleStream)} with {nameof(streamID)}:{streamID} could be found");
                return(false);
            }

            SpeckleStream stream = StreamFromID[streamID];


            Receivers.Add(streamID, receiver);
            OnReceiverAdd?.Invoke(stream, receiver);

            return(true);
        }
コード例 #12
0
ファイル: Server.cs プロジェクト: bugMaker-237/Talki
        private void NewClientConnectionHandler(IAsyncResult ar)
        {
            try
            {
                lock (Receivers)
                {
                    Client.Client <TModel> newClient = new Client.Client <TModel>();
                    newClient.SetDefaultMessages(DefaultSignOnMessage, DefaultSignOffMessage, DefaultLifeCheckMessage);

                    newClient.BuildBridge(EndAcceptTcpClient(ar), IsLifeCheckActivated);

                    SetClientHandlers(ref newClient);

                    Receivers.Add(newClient);
                    OnClientConnected(newClient);
                }

                WaitForConnection();
            }
            catch (Exception ex)
            {
                OnError(ex);
            }
        }
コード例 #13
0
 public void AddReceiver(Action <byte> receiver)
 {
     Receivers.Add(receiver);
 }
コード例 #14
0
 public void Attach(IReceiver <T> receiver)
 {
     Receivers.Add(receiver.Receive);
 }
コード例 #15
0
 public void Attach(Action <T> action)
 {
     Receivers.Add(action);
 }
コード例 #16
0
        //Загружет списки проектов и провайдеров для потока
        public void ReadSetup()
        {
            try
            {
                Projects.Clear();
                ProjectsList.Clear();
                foreach (var provider in ProvidersDic.Values)
                {
                    var pi = provider.ProviderInstance;
                    if (pi != null)
                    {
                        if (ApplicationType == ApplicationType.Controller && General.ProvidersQueues.ContainsKey(pi.Hash))
                        {
                            General.ProvidersQueues.Remove(pi.Hash);
                        }
                        pi.Dispose();
                    }
                }

                ProvidersDic.Clear();
                Sources.Clear();
                Receivers.Clear();
                Imitators.Clear();
                Archive   = null;
                ArchivePr = null;

                using (var rec = new RecDao(General.ControllerFile, "SELECT * FROM Projects WHERE ThreadId =" + Id + " ORDER BY Project"))
                    while (rec.Read())
                    {
                        var proj = new Project(rec, this);
                        if (!Command.IsError && !Projects.ContainsKey(proj.Code))
                        {
                            Projects.Add(proj.Code, proj);
                            ProjectsList.Add(proj);
                            AddEvent("Добавлен проект", proj.Code + ", " + proj.File);
                            proj.ReadProviders();//Чтение списка провайдеров
                        }
                    }
                MakeProviders();
                MakeProjectString();
            }
            catch (Exception ex)
            {
                AddError("Ошибка загрузки списка проектов. Необходимо повторить настройку", ex);
            }
            Procent = 70;

            try //Список провайдеров
            {
                AddEvent("Чтение настроек провайдеров");
                using (var rec = new RecDao(General.ControllerFile, "SELECT * FROM Providers WHERE ThreadId =" + Id))
                    while (rec.Read())
                    {
                        var name = rec.GetString("ProviderName");
                        if (ProvidersDic.ContainsKey(name))
                        {
                            var prov = ProvidersDic[name];
                            prov.Code = rec.GetString("ProviderCode");
                            prov.Inf  = rec.GetString("ProviderInf");
                            prov.Otm  = rec.GetBool("Otm");
                        }
                    }
                foreach (var prov in ProvidersDic.Values)
                {
                    if (prov.Otm)
                    {
                        prov.ProviderInstance = General.RunProvider(prov.Code, prov.Name, prov.Inf, this);
                        if (prov.ProviderInstance != null)
                        {
                            switch (prov.Type.ToProviderType())
                            {
                            case ProviderType.Archive:
                                Archive   = (IArchive)prov.ProviderInstance;
                                ArchivePr = prov;
                                break;

                            case ProviderType.Source:
                                Sources.Add(prov.Name, (ISource)prov.ProviderInstance);
                                break;

                            case ProviderType.Imitator:
                                var ims = (Imitator)prov.ProviderInstance;
                                Imitators.Add(prov.Name, ims);
                                var pname = prov.Name.Substring(0, prov.Name.Length - 4);
                                if (Projects.ContainsKey(pname))
                                {
                                    Projects[pname].Imitator = ims;
                                }
                                else
                                {
                                    AddError("Недопустимое имя провайдера имитатора", null, prov.Name);
                                }
                                break;

                            case ProviderType.Receiver:
                                Receivers.Add(prov.Name, (IReceiver)prov.ProviderInstance);
                                break;
                            }
                            if (ApplicationType == ApplicationType.Controller)
                            {
                                string hash = prov.ProviderInstance.Hash;
                                if (!General.ProvidersQueues.ContainsKey(hash))
                                {
                                    General.ProvidersQueues.Add(hash, new Queue <int>());
                                }
                                prov.ProviderQueue = General.ProvidersQueues[hash];
                            }
                        }
                    }
                }
                MakeProviders();
            }
            catch (Exception ex)
            {
                AddError("Ошибка при чтении настроек провайдеров", ex);
            }
        }
コード例 #17
0
        public void LoadLineup(string strFile)
        {
            this.Clear();
            if (System.IO.File.Exists(strFile))
            {
                XDocument doc = XDocument.Load(strFile);
                IEnumerable <XElement> elem     = doc.Descendants("Position");
                IEnumerable <XElement> posElems = elem.First(f => f.Attribute("Name").Value == "Quarterback").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.Load(e);
                    pos.LoadLineup(e);
                    Quarterback.Add(pos);
                }

                IEnumerable <XElement> elems = doc.Descendants("Positions");

                posElems = elems.First(f => f.Attribute("Name").Value == "Receivers").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    Receivers.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "Runningbacks").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    Runningbacks.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "OffensiveLinemen").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    OffensiveLinemen.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "TightEnds").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    TightEnds.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "Cornerbacks").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    Cornerbacks.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "Linebackers").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    Linebackers.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "DefensiveLinemen").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    DefensiveLinemen.Add(pos);
                }

                posElems = elems.First(f => f.Attribute("Name").Value == "Safeties").Elements();
                foreach (XElement e in posElems)
                {
                    Lineup pos = new Lineup();
                    pos.LoadLineup(e);
                    Safeties.Add(pos);
                }
            }
            else
            {
                this.Init();
            }
        }
コード例 #18
0
        public void AddRemoteService(IRemoteService subscriber)
        {
            CanNotBeNull(subscriber, nameof(subscriber));

            Receivers.Add(subscriber);
        }
コード例 #19
0
ファイル: Reminder.cs プロジェクト: Xieyuschen/NovelReminder
 public void AddReceiver(string emailAddress)
 {
     Receivers.Add(emailAddress);
 }
コード例 #20
0
        public void Load(string strFile)
        {
            this.Clear();

            if (System.IO.File.Exists(strFile))
            {
                XDocument doc = XDocument.Load(strFile);

                XElement elem = doc.Descendants("Position").First(f => f.Attribute("Name").Value == "QB");
                Quarterback.Load(elem);
                allPositions.Add(Quarterback);
                offensivePositions.Add(Quarterback);

                IEnumerable <XElement> elems = doc.Descendants("Positions");

                IEnumerable <XElement> posElems = elems.First(f => f.Attribute("Name").Value == "Receivers").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    Receivers.Add(pos);
                }
                allPositions.AddRange(Receivers);
                offensivePositions.AddRange(receivers);

                posElems = elems.First(f => f.Attribute("Name").Value == "Runningbacks").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    Runningbacks.Add(pos);
                }
                allPositions.AddRange(Runningbacks);
                offensivePositions.AddRange(Runningbacks);

                posElems = elems.First(f => f.Attribute("Name").Value == "OffensiveLinemen").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    OffensiveLinemen.Add(pos);
                }
                allPositions.AddRange(OffensiveLinemen);
                offensivePositions.AddRange(OffensiveLinemen);

                posElems = elems.First(f => f.Attribute("Name").Value == "TightEnds").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    TightEnds.Add(pos);
                }
                allPositions.AddRange(TightEnds);
                offensivePositions.AddRange(TightEnds);

                posElems = elems.First(f => f.Attribute("Name").Value == "Cornerbacks").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    Cornerbacks.Add(pos);
                }
                allPositions.AddRange(Cornerbacks);
                defensivePositions.AddRange(Cornerbacks);

                posElems = elems.First(f => f.Attribute("Name").Value == "Linebackers").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    Linebackers.Add(pos);
                }
                allPositions.AddRange(Linebackers);
                defensivePositions.AddRange(Linebackers);

                posElems = elems.First(f => f.Attribute("Name").Value == "DefensiveLinemen").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    DefensiveLinemen.Add(pos);
                }
                allPositions.AddRange(DefensiveLinemen);
                defensivePositions.AddRange(DefensiveLinemen);

                posElems = elems.First(f => f.Attribute("Name").Value == "Safeties").Elements();
                foreach (XElement e in posElems)
                {
                    Position pos = new Position();
                    pos.Load(e);
                    Safeties.Add(pos);
                }
                allPositions.AddRange(Safeties);
                defensivePositions.AddRange(Safeties);
            }
            else
            {
                this.Init();
            }
        }
コード例 #21
0
ファイル: Relay.cs プロジェクト: pajelinski/Relay
        public void AddSubscriber(ISubscriber subscriber)
        {
            CanNotBeNull(subscriber, nameof(subscriber));

            Receivers.Add(subscriber);
        }
コード例 #22
0
ファイル: Message.cs プロジェクト: jankupis/webmail
 public void AddReceiver(User receiver, bool isRead = false)
 {
     Receivers.Add(receiver);
     IsRead[receiver.Email] = isRead;
 }