Beispiel #1
0
        /// <summary>
        /// send capability report create
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void capsReport(object sender, DoWorkEventArgs e)
        {
            // This event handler is where the actual work is done.
            // This method runs on the background thread.

            // Get the BackgroundWorker object that raised this event.
            BackgroundWorker work = (BackgroundWorker)sender;


            CapabilityReport rep = new CapabilityReport();

            rep.CreateReport(saveReportFile.FileName, caps, work);
        }
        private NodeEvent HandleMultiChannelCapabilityReportV2(ZWaveNode node, byte [] message)
        {
            if (message.Length < 5)
            {
                Utility.logger.Error(String.Format("MultiChannel Capability Report message ERROR: message is too short: {0}", BitConverter.ToString(message)));
                return(null);
            }

            bool       isDynamic           = (message [2] & 0x80) != 0;
            int        endPoint            = (message [2] & 0x7f);
            int        genericDeviceClass  = message [3];
            int        specificDeviceClass = message [4];
            List <int> commandClasses      = new List <int> ();

            for (int i = 5; i < message.Length; i++)
            {
                commandClasses.Add(message [i]);
            }

            var report = new CapabilityReport(isDynamic, endPoint, genericDeviceClass, specificDeviceClass, commandClasses.ToArray());

            return(new NodeEvent(node, EventParameter.CapabilityReport, report, 0));
        }