Пример #1
0
        public PatientResult(byte[] data)
        {
            int idx = 0;

            sample_status = (UInt32)SerialMessage.PackDWord(data, idx);
            idx          += 4;

            // Pb
            Results[0]        = new MeasuredResults();
            Results[0].mask   = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;
            Results[0].result = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;

            // Hgb
            Results[1]        = new MeasuredResults();
            Results[1].mask   = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;
            Results[1].result = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;

            // Hct
            Results[2]        = new MeasuredResults();
            Results[2].mask   = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;
            Results[2].result = (UInt16)SerialMessage.PackWord(data, idx);
            idx              += 2;

            LotCode = Encoding.ASCII.GetString(data, idx, 6);
            idx    += 6;
            PID     = Encoding.ASCII.GetString(data, idx, 20);
            idx    += 20;
            OID     = Encoding.ASCII.GetString(data, idx, 15);
            idx    += 15;

            HgbMultApplied = data[idx];
            idx           += 1;

            DiagFlags = SerialMessage.PackWord(data, idx);
            idx      += 2;

            timestamp = (int)SerialMessage.PackDWord(data, idx);
            idx      += 4;

            timeOffsetMins = (Int16)SerialMessage.PackWord(data, idx);
            idx           += 2;

            crc  = (UInt16)SerialMessage.PackWord(data, idx);
            idx += 2;
        }
Пример #2
0
        public EventLog(byte[] data)
        {
            int idx = 0;

            time = (Int32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            timeOffsetMins = (Int16)SerialMessage.PackWord(data, idx);
            idx           += 2;

            eventID = data[idx];
            idx    += 1;

            parameter = Encoding.ASCII.GetString(data, idx, 21);
            idx      += 21;

            result = (UInt16)SerialMessage.PackWord(data, idx);
            idx   += 2;

            crc = (UInt16)SerialMessage.PackWord(data, idx);
        }
Пример #3
0
        public POSTLog(byte[] data)
        {
            int idx = 0;

            time = (Int32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            timeOffsetMins = (short)SerialMessage.PackWord(data, idx);
            idx           += 2;

            UIConfig = (short)SerialMessage.PackWord(data, idx);
            idx     += 2;

            RTConfig = (short)SerialMessage.PackWord(data, idx);
            idx     += 2;

            temp = (Int16)SerialMessage.PackWord(data, idx);
            idx += 2;

            dacaPosRail = (short)SerialMessage.PackWord(data, idx);
            idx        += 2;

            dacaZero = (short)SerialMessage.PackWord(data, idx);
            idx     += 2;

            dacaNegRail = (short)SerialMessage.PackWord(data, idx);
            idx        += 2;

            meas1SingleElectrodePos = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1SingleElectrodeZero = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1SingleElectrodeNeg = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain3Pos = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain2Pos = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain1Pos = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain0Pos = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain3Neg = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain2Neg = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain1Neg = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            meas1DummyElectrodeGain0Neg = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            opticalOffIntensity = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentViolet = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityViolet = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentBlue = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityBlue = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentGreen = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityGreen = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentRed = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityRed = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            opticalCurrentLed4 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityLed4 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentLed5 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityLed5 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentLed6 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityLed6 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalCurrentLed7 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;
            opticalIntensityLed7 = (short)SerialMessage.PackWord(data, idx);
            idx += 2;

            fanSpeed = (short)SerialMessage.PackWord(data, idx);
            idx     += 2;

            crc = (UInt16)SerialMessage.PackWord(data, idx);
        }
Пример #4
0
        public MFGLog(byte[] data)
        {
            int idx = 0;

            serialNumber = Encoding.ASCII.GetString(data, idx, 12);
            idx         += 12;

            numSerialNumberUpdates = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            UIVerMajor = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            UIVerMinor = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            UIVerBuild = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            numUIFirmwareUpdates = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            RTVerMajor = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            RTVerMinor = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            RTVerBuild = (UInt16)SerialMessage.PackWord(data, idx);
            idx       += 2;

            numRTFirmwareUpdates = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            BT_FirmwareVersion = Encoding.ASCII.GetString(data, idx, 30);
            idx += 30;

            masterResetDateTime = (int)SerialMessage.PackDWord(data, idx);
            idx += 4;

            numMasterResets = (UInt32)SerialMessage.PackDWord(data, idx);
            idx            += 4;

            mfgResetDateTime = (int)SerialMessage.PackDWord(data, idx);
            idx += 4;

            numMfgResets = (UInt32)SerialMessage.PackDWord(data, idx);
            idx         += 4;

            numOnTimeMins = (UInt32)SerialMessage.PackDWord(data, idx);
            idx          += 4;

            numOnTimeMinsSinceMfgReset = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            // CRC Of Manufacturing Info
            crc  = (UInt16)SerialMessage.PackWord(data, idx);
            idx += 2;

            for (int i = 0; i < 25; i++)
            {
                events[i] = (UInt32)SerialMessage.PackDWord(data, idx);
                idx      += 4;
            }

            totalNonFatalSystemErrors = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            totalFatalSystemErrors = (UInt32)SerialMessage.PackDWord(data, idx);
            idx += 4;

            for (int i = 0; i < 50; i++)
            {
                nonFatalErrors[i] = (UInt32)SerialMessage.PackDWord(data, idx);
                idx += 4;
            }

            for (int i = 0; i < 50; i++)
            {
                fatalErrors[i] = (UInt32)SerialMessage.PackDWord(data, idx);
                idx           += 4;
            }

            // CRC Of Manufacturing Counter Data
            crc  = (UInt16)SerialMessage.PackWord(data, idx);
            idx += 2;

            // CRC Of Entire Manufacturing Data Log
            crc = (UInt16)SerialMessage.PackWord(data, idx);
        }