public XAMUmpStream(XAMUmpDispatcher dispatcher, string ipAdr, int projectID, int firmwareVersion, int switchID, int designID, TraceDelegate trace)
        {
            this.dispatcher = dispatcher;
            this.trace      = trace;

            this.projectID       = projectID;
            this.firmwareVersion = firmwareVersion;
            this.switchID        = switchID;
            this.designID        = designID;

            destination = IPAddress.Parse(ipAdr);

            remoteAddressIdent = XAMUmUtils.GetSwitchIdentifier(projectID, switchID, designID);
            umpTelegram        = new XAMUmpTelegram(packageID, projectID, firmwareVersion, switchID, designID, trace);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="p">process info</param>
        public XAMUmpClientCom(XAMCommon.ServiceReference.XAMIOProcessInfo p, XAMUmpClientConfig config, string conId, XAMUmpDispatcher dispatcher)
            : base(null, p, conId, config.XAMServerIP, IOStandbyMode.Mode.Read)
        {
            string[] split           = conId.Split(':');
            string   destination     = split[0];
            int      projectID       = System.Convert.ToInt16(split[1]);
            int      firmwareVersion = System.Convert.ToInt16(split[2]);
            int      switchID        = System.Convert.ToInt16(split[3]);
            int      designID        = System.Convert.ToInt16(split[4]);

            this.Config = config;

            client             = new XAMUmpStream(dispatcher, destination, projectID, firmwareVersion, switchID, designID, Trace);
            client.ValueEvent += client_ValueEvent;
        }