예제 #1
0
        /// <summary>
        /// Constructs an instance describing the ports and port ranges to be
        /// mapped into a hive proxy.
        /// </summary>
        /// <param name="range">The port range.</param>
        /// <param name="ports">The standalone p;orts (or <c>null</c>).</param>
        public HiveProxyPorts(HiveProxyPortRange range, IEnumerable <int> ports)
        {
            Covenant.Requires <ArgumentNullException>(range != null);

            if (!NetHelper.IsValidPort(range.FirstPort) ||
                !NetHelper.IsValidPort(range.LastPort) ||
                range.LastPort < range.FirstPort)
            {
                throw new ArgumentException($"Invalid hive proxy port range [{range.FirstPort}-{range.LastPort}].");
            }

            PortRange = range;

            if (ports != null)
            {
                foreach (var port in ports)
                {
                    if (!NetHelper.IsValidPort(port))
                    {
                        throw new ArgumentException($"Invalid hive proxy port [{port}].");
                    }

                    Ports.Add(port);
                }
            }
        }
예제 #2
0
        public NodeReflectionData(Type type, NodeAttribute nodeAttr)
        {
            this.Type = type;
            Name      = nodeAttr.Name ?? ObjectNames.NicifyVariableName(type.Name);
            Path      = nodeAttr.Path?.Split('/');
            Help      = nodeAttr.Help;
            Deletable = nodeAttr.Deletable;
            Moveable  = nodeAttr.Moveable;
            var attrs = type.GetCustomAttributes(true);

            foreach (var attr in attrs)
            {
                if (attr is TagsAttribute tagAttr)
                {
                    // Load any tags associated with the node
                    Tags.AddRange(tagAttr.Tags);
                }
                else if (attr is OutputAttribute output)
                {
                    // Load any Outputs defined at the class level
                    Ports.Add(new PortReflectionData()
                    {
                        Name              = output.Name,
                        Type              = output.Type,
                        Direction         = PortDirection.Output,
                        Capacity          = output.Multiple ? PortCapacity.Multiple : PortCapacity.Single,
                        HasControlElement = false
                    });
                }
            }

            // Load additional data from class fields
            AddFieldsFromClass(type);
        }
 public PhidgetHubViewModel(Hub hub) : base(hub)
 {
     for (int portNumber = 0; portNumber < hub.HubPortCount; portNumber++)
     {
         Ports.Add(new PhidgetHubPortViewModel(portNumber));
     }
 }
예제 #4
0
        private async void LoadData()
        {
            var planes = await context.GetPlanes();

            var ports = await context.GetPorts();

            foreach (var item in ports)
            {
                Ports.Add(item);
            }
            Destinations.Refresh();
            Origins.Refresh();

            foreach (var item in planes)
            {
                Planes.Add(item);
            }

            PlanesView.Refresh();
            this.PortFrom = SettingConfiguration.GetIntValue("PortId");

            var portTo = ports.Where(O => O.Id != SettingConfiguration.GetIntValue("PortId")).FirstOrDefault();

            if (portTo != null)
            {
                this.PortTo = portTo.Id;
            }
        }
        //private List<Port> Ports = new List<Port>();

        public TelephoneExchange(int numberOfPorts)
        {
            for (int portID = 0; portID < numberOfPorts; portID++)
            {
                Ports.Add(new Port(portID));
            }
        }
예제 #6
0
        public NodeBaseModel(IPamuxViewModel vm = null)
            : base(vm)
        {
            Ports.Add(new NodePortModel
            {
                NodeModel = this,
                Label     = "In 1",
                NodeEdge  = NodeEdges.Left
            });

            Ports.Add(new NodePortModel
            {
                NodeModel = this,
                Label     = "In 2",
                NodeEdge  = NodeEdges.Left
            });

            Ports.Add(new NodePortModel
            {
                NodeModel = this,
                Label     = "Out 1",
                NodeEdge  = NodeEdges.Right
            });

            Ports.Add(new NodePortModel
            {
                NodeModel = this,
                Label     = "Out 2",
                NodeEdge  = NodeEdges.Right
            });
        }
예제 #7
0
        public Server()
        {
            //Add two ports to the server
            Port port;

            port             = new Port(PortOrientation.Top);
            port.BorderWidth = 2;
            Ports.Add("top", port);

            port             = new Port(PortOrientation.Bottom);
            port.BorderWidth = 2;
            Ports.Add("bottom", port);

            //Set the shape appearance
            Size        = new SizeF(120, 100);
            BorderWidth = 2;

            //Add the internal applicationshape
            SolidElement application = new SolidElement();

            application.Location    = new PointF(10, 10);
            application.Label       = new TextLabel();
            application.Label.Text  = "Application";
            application.Label.Color = Color.FromArgb(66, 65, 66);

            Children.Add("application", application);

            //Set up default server colors
            ServerType = ServerType.Web;

            MinimumSize = new Size(32, 32);
        }
예제 #8
0
        public Server()
        {
            //Add two ports to the server
            Port port;

            port             = new Port(PortOrientation.Top);
            port.BorderWidth = 2;
            Ports.Add("top", port);

            port             = new Port(PortOrientation.Bottom);
            port.BorderWidth = 2;
            Ports.Add("bottom", port);

            //Set the shape appearance
            Size        = new SizeF(120, 100);
            BorderWidth = 2;

            //Add the internal solidshape
            SolidElement solid = new SolidElement();

            solid.Location   = new PointF(10, 10);
            solid.Label      = new TextLabel();
            solid.Label.Text = "Server";

            Children.Add("solid", solid);

            ServerType = ServerType.Generic;
            Available  = false;
        }
 protected override void OnInitialize()
 {
     Name        = "DummyUnit";
     Description = "Unit Dummy .NET";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort", "Input Port of Dummy", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort", "Output Port of Dummy", CapeOpenPortDirection.Outlet));
 }
예제 #10
0
        public void AddPort(IPort port)
        {
            Mapping.ConnectPortToStation(port as IPort, this);               // in mapping class we can include and exclude methods to events

            Ports.Add(port);                                                 // include port to main list of ports

            Logger.WriteLine($"{port.PhoneNumber} was attached to station"); // Make log line that will inform us about phone attachment to port
        }
예제 #11
0
 public override void InitPorts()
 {
     Ports.Clear();
     Ports.Add(new CapeMaterialPort("feed", CapePortDirection.CAPE_INLET, "feed for Flash"));
     Ports.Add(new CapeMaterialPort("vapor", CapePortDirection.CAPE_OUTLET, "vapor for Flash"));
     Ports.Add(new CapeMaterialPort("liquid", CapePortDirection.CAPE_OUTLET, "liquid for Flash"));
     Ports.Add(new CapeEnergyPort("energy", CapePortDirection.CAPE_INLET));
 }
예제 #12
0
 /// <summary>
 ///     Construct an I2cMux with a given muxed port
 /// </summary>
 /// <param name="UpstreamPort">The upstream port to mux</param>
 /// <param name="numPorts">The number of ports that belong to this mux</param>
 public I2cMux(I2C UpstreamPort, int numPorts)
 {
     this.UpstreamPort    = UpstreamPort;
     UpstreamPort.Enabled = true;
     for (var i = 0; i < numPorts; i++)
     {
         Ports.Add(new I2cMuxPort(this, i));
     }
 }
 protected override void OnInitialize()
 {
     Name        = "COCO Exchanger Unit";
     Description = "COCO Exchanger Unit .Net";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort1", "Input Port 1 of Exchanger", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort2", "Input Port 2 of Exchanger", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort1", "Output Port 1 of Splitter", CapeOpenPortDirection.Outlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort2", "Output Port 2 of Splitter", CapeOpenPortDirection.Outlet));
 }
예제 #14
0
 public override void InitPorts()
 {
     CasterLogger.Debug("InitPorts");
     Ports.Add(new CapeMaterialPort("feed", CapePortDirection.CAPE_INLET, "Inlet Material"));
     Ports.Add(new CapeMaterialPort("product", CapePortDirection.CAPE_OUTLET, "Outlet Material"));
     //Ports.Add(new CapeEnergyPort("energy", CapePortDirection.CAPE_INLET));
     //Ports.Add(new CapeInformationPort("info", CapePortDirection.CAPE_INLET));
     CasterLogger.Debug("InitPorts completed");
 }
예제 #15
0
        public PortInputModel(ProductModel product)
        {
            this.Product = product;

            foreach (var p in product.PortCateories)
            {
                Ports.Add(p);
            }
        }
 protected override void OnInitialize()
 {
     Name        = "SplitterUnit";
     Description = "Splitter Unit .Net";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort", "Input Port of Splitter", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort1", "Output Port 1 of Splitter", CapeOpenPortDirection.Outlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort2", "Output Port 2 of Splitter", CapeOpenPortDirection.Outlet));
     Parameters.Add(DoubleParameter.Create("SplitFraction", "Split Fraction of Splitter", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 0.5));
 }
예제 #17
0
 protected override void OnInitialize()
 {
     Name        = "WarUnit";
     Description = "War Unit .Net";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort", "Inpot Port of War", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort", "Output Port of War", CapeOpenPortDirection.Outlet));
     Parameters.Add(DoubleParameter.Create("ProcessType", "CP or EP", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 0));
     Parameters.Add(DoubleParameter.Create("CapePosition", "Position of CO", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 0));
     Parameters.Add(DoubleParameter.Create("CapeID", "Name of CO", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 0));
 }
예제 #18
0
 protected override void OnInitialize()
 {
     Name        = "Exchanger Unit";
     Description = "Exchanger Unit .Net";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort1", "Input Port 1 of Exchanger", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort2", "Input Port 2 of Exchanger", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort1", "Output Port 1 of Splitter", CapeOpenPortDirection.Outlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort2", "Output Port 2 of Splitter", CapeOpenPortDirection.Outlet));
     Parameters.Add(DoubleParameter.Create("ParameterValue", "Value of the parameter depending on calculation", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 250));
 }
예제 #19
0
        /// <summary>
        /// Processes IfcElement attributes.
        /// </summary>
        /// <param name="ifcElement">The IfcElement handle.</param>
        protected override void Process(IFCAnyHandle ifcElement)
        {
            base.Process(ifcElement);

            m_Tag = IFCAnyHandleUtil.GetStringAttribute(ifcElement, "Tag");

            ICollection <IFCAnyHandle> hasOpenings = IFCAnyHandleUtil.GetAggregateInstanceAttribute <List <IFCAnyHandle> >(ifcElement, "HasOpenings");

            if (hasOpenings != null)
            {
                foreach (IFCAnyHandle hasOpening in hasOpenings)
                {
                    IFCAnyHandle relatedOpeningElement = IFCAnyHandleUtil.GetInstanceAttribute(hasOpening, "RelatedOpeningElement");
                    if (IFCAnyHandleUtil.IsNullOrHasNoValue(relatedOpeningElement))
                    {
                        continue;
                    }

                    IFCFeatureElementSubtraction opening = IFCFeatureElementSubtraction.ProcessIFCFeatureElementSubtraction(relatedOpeningElement);
                    if (opening != null)
                    {
                        opening.VoidsElement = this;
                        Openings.Add(opening);
                    }
                }
            }

            // "HasPorts" is new to IFC2x2.
            // For IFC4, "HasPorts" has moved to IfcDistributionElement.  We'll keep the check here, but we will only check it
            // if we are exporting before IFC4 or if we have an IfcDistributionElement handle.
            bool checkPorts = (IFCImportFile.TheFile.SchemaVersion > IFCSchemaVersion.IFC2x2) &&
                              (IFCImportFile.TheFile.SchemaVersion < IFCSchemaVersion.IFC4 || IFCAnyHandleUtil.IsSubTypeOf(ifcElement, IFCEntityType.IfcDistributionElement));

            if (checkPorts)
            {
                ICollection <IFCAnyHandle> hasPorts = IFCAnyHandleUtil.GetAggregateInstanceAttribute <List <IFCAnyHandle> >(ifcElement, "HasPorts");
                if (hasPorts != null)
                {
                    foreach (IFCAnyHandle hasPort in hasPorts)
                    {
                        IFCAnyHandle relatingPort = IFCAnyHandleUtil.GetInstanceAttribute(hasPort, "RelatingPort");
                        if (IFCAnyHandleUtil.IsNullOrHasNoValue(relatingPort))
                        {
                            continue;
                        }

                        IFCPort port = IFCPort.ProcessIFCPort(relatingPort);
                        if (port != null)
                        {
                            Ports.Add(port);
                        }
                    }
                }
            }
        }
예제 #20
0
        public RServerBase(IConfigurationSection configuration, IServiceProvider services, ILogger logger)
        {
            _logger = logger;

            Ports.Add(CreateServerPort(configuration));

            foreach (ServerServiceDefinition handler in GetHandlers(services))
            {
                Services.Add(handler);
            }
        }
예제 #21
0
        private void ScanPortTCP(int currentHostPort)
        {
            try
            {
                Socket socket;

                socket = new Socket(
                    AddressFamily.InterNetwork,
                    SocketType.Stream,
                    ProtocolType.Tcp
                    );
                socket.ReceiveTimeout = (int)(RoundtripTime * 1.1 + 1);
                socket.BeginConnect(new IPEndPoint(IPTools.UInt322IPAddress(IPAddress), currentHostPort),
                                    (IAsyncResult asyncResult) =>
                {
                    try
                    {
                        Socket socketResult = asyncResult.AsyncState as Socket;
                        socketResult.EndConnect(asyncResult);
                        if (socketResult.Connected)
                        {
                            try
                            {
                                Ports.Add(new PortInfo
                                          (
                                              int.Parse(socketResult.RemoteEndPoint.ToString().Split(':')[1]),
                                              socketResult.ProtocolType,
                                              true
                                          )
                                          );
                            }
                            catch (Exception ex)
                            {
                                Debug.WriteLine(ex.StackTrace);
                            }
                        }
                    }
                    catch
                    {
                    }
                    finally
                    {
                        Interlocked.Decrement(ref waitingForResponses);
                    }
                },
                                    socket
                                    );
                Interlocked.Increment(ref waitingForResponses);
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }
        }
 private void UpdatePortsList(object commandParameter)//(ObservableCollection<APortEntryModel> portz)
 {
     Ports.Clear();
     foreach (string aPort in SerialPort.GetPortNames())
     {
         Ports.Add(new APortEntryModel {
             PortEntry = aPort
         });
     }
     //if (Ports.Count > 0)
     //    Sel_Port = Ports[0];
 }
예제 #23
0
        protected override void OnInitialize()
        {
            string[] ports = SerialPort.GetPortNames();

            if (ports != null)
            {
                foreach (var port in ports)
                {
                    Ports.Add(port);
                }
            }
        }
예제 #24
0
        public void Refresh()
        {
            var _portnames = SerialPort.GetPortNames();

            Ports.Clear();

            if (_portnames.Length > 0)
            {
                Array.Sort(_portnames);

                if (_portnames.Contains("COM1"))
                {
                    var pn = _portnames.ToList();
                    pn.Remove("COM1");
                    _portnames = pn.ToArray();
                }

                using (var searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PnPEntity WHERE Caption like '%(COM%'")) try
                    {
                        var ports    = searcher.Get().Cast <ManagementBaseObject>().ToList().Select(p => p["Caption"].ToString());
                        var portList = _portnames.Select(n => ports.FirstOrDefault(s => s.Contains('(' + n + ')'))).ToList();
                        foreach (var fullname in portList)
                        {
                            var name = fullname.Substring(fullname.IndexOf("(COM") + 1).TrimEnd(')');
                            var port = new ComPort(name);

                            port.FullName = name + " - " + fullname.Replace('(' + name + ')', string.Empty).Trim();

                            Ports.Add(port);
                        }
                    }
                    catch
                    {
                    }

                if (Ports.Count != _portnames.Length)
                {
                    foreach (var port in _portnames)
                    {
                        if (port.StartsWith("COM") && Ports.Where(n => n.Name == port).FirstOrDefault() == null)
                        {
                            Ports.Add(new ComPort(port));
                        }
                    }
                }

                if (Ports.Count > 0)
                {
                    SelectedPort = Ports[0].Name;
                }
            }
        }
예제 #25
0
        private void ReadPorts()
        {
            string[] ports = SerialPort.GetPortNames();
            Ports.Clear();
            SelectedPort = null;
            foreach (var item in ports.OrderBy(x => x))
            {
                Ports.Add(item);
            }
            string lastport = Properties.Settings.Default.LastPort;

            SelectedPort = Ports.Where(x => x == lastport).FirstOrDefault() ?? Ports.FirstOrDefault();
        }
예제 #26
0
        public void Connect()
        {
            if (!Servers.Contains(Server))
            {
                Servers.Add(Server);
            }
            if (!Ports.Contains(Port))
            {
                Ports.Add(Port);
            }

            MqttHandler.Instance.Connect(Server, Port);
        }
예제 #27
0
 protected override void OnInitialize()
 {
     Name        = "ReactorUnit";
     Description = "Reactor Unit .Net";
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "InputPort", "Input Port of Reactor", CapeOpenPortDirection.Inlet));
     Ports.Add(CapeOpenUnitPort.Create(CapeOpenPortType.Material, "OutputPort", "Output Port of Reactor", CapeOpenPortDirection.Outlet));
     Parameters.Add(DoubleParameter.Create("K1", "Kinetic Constant for R1", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 159000));
     Parameters.Add(DoubleParameter.Create("K2", "Kinetic Constant for R2", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 883000));
     Parameters.Add(DoubleParameter.Create("K3", "Kinetic Constant for R3", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 181000000));
     Parameters.Add(DoubleParameter.Create("E1", "Energy of R1", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 15000));
     Parameters.Add(DoubleParameter.Create("E2", "Energy of R2", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 20000));
     Parameters.Add(DoubleParameter.Create("E3", "Energy of R3", CapeOpenParameterMode.ReadWrite, -1E+35, 1E+35, 25000));
 }
예제 #28
0
        public OwinSelfHost([NotNull] IWireMockMiddlewareOptions options, [NotNull] HostUrlOptions urlOptions)
        {
            Check.NotNull(options, nameof(options));
            Check.NotNull(urlOptions, nameof(urlOptions));

            _options = options;
            _logger  = options.Logger ?? new WireMockConsoleLogger();

            foreach (var detail in urlOptions.GetDetails())
            {
                Urls.Add(detail.Url);
                Ports.Add(detail.Port);
            }
        }
예제 #29
0
        public OwinSelfHost([NotNull] WireMockMiddlewareOptions options, [NotNull] params string[] uriPrefixes)
        {
            Check.NotNull(options, nameof(options));
            Check.NotEmpty(uriPrefixes, nameof(uriPrefixes));

            foreach (string uriPrefix in uriPrefixes)
            {
                var uri = new Uri(uriPrefix);
                Urls.Add(uri);
                Ports.Add(uri.Port);
            }

            _options = options;
        }
예제 #30
0
        private void AddNewPortAction(object obj)
        {
            var form = new Views.AddNewPort();

            form.ShowDialog();
            var vm = (AddNewPortViewModel)form.DataContext;

            if (vm.SaveSuccess && vm.SaveResult != null)
            {
                Ports.Add(vm.SaveResult);
            }
            Destinations.Refresh();
            Origins.Refresh();
        }