public bool WriteInteger(object command, int data)
        {
            JetBusCommand _command = (JetBusCommand)command;



            if (!(this.behavior == Behavior.WriteZeroFail || this.behavior == Behavior.WriteGrossFail || this.behavior == Behavior.WriteTareFail ||
                  this.behavior == Behavior.CalibratePreloadCapacityFail || this.behavior == Behavior.MeasureZeroFail ||
                  this.behavior == Behavior.CalibrationFail))
            {
                JValue valueObj = new JValue(data);
                this.SetData(_command.Path, valueObj);
                if (!(this.behavior == Behavior.CalibrationSuccess))
                {
                    _dataBuffer[_command.Path] = data;
                }
            }

            /**
             *
             * if(this.behavior == Behavior.setTestsSuccess || this.behavior == Behavior.setTestsFail)
             * {
             *  JValue valueObj = new JValue(data);
             *  this.SetData(_command.Path, valueObj);
             * }**/

            return(true);
        }
Exemple #2
0
        public string ReadFromBuffer(object command)
        {
            this.DoHandshake();

            switch (this.behavior)
            {
            case Behavior.t_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x004C0000);      // Unit, prefix or fixed parameters - for unit 't'.
                break;

            case Behavior.kg_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x00020000);      // Unit, prefix or fixed parameters - for unit 'kg'.
                break;

            case Behavior.g_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x004B0000);      // Unit, prefix or fixed parameters - for unit 'g'.
                break;

            case Behavior.lb_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0X00A60000);      // Unit, prefix or fixed parameters - for unit 'lb'.
                break;

            case Behavior.N_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x00210000);      // Read Unit, prefix or fixed parameters - for unit 'N'.
                break;

            case Behavior.LimitValues_WeightWithinLimits:
                _dataBuffer["6012/01"] = Convert.ToString(0x00);
                break;

            case Behavior.LimitValues_Underload:
                _dataBuffer["6012/01"] = Convert.ToString(0x4);      // For limit values
                break;

            case Behavior.LimitValues_Overload:
                _dataBuffer["6012/01"] = Convert.ToString(0x8);
                break;

            case Behavior.LimitValues_HigherSafeLoadLimit:
                _dataBuffer["6012/01"] = Convert.ToString(0xC);
                break;

            case Behavior.NetGrossTareValues_Success:
                _dataBuffer["601A/01"] = Convert.ToString(11);
                _dataBuffer["6143/00"] = Convert.ToString(11);
                break;

            default:
                _dataBuffer["6015/01"] = Convert.ToString(0x00);      // Unit, prefix or fixed parameters - for default value
                _dataBuffer["601A/01"] = Convert.ToString(0);
                break;
            }

            JetBusCommand jetcommand = (JetBusCommand)command;

            return(jetcommand.ToString(AllData[jetcommand.Path]));
        }
        ///<inheritdoc/>
        public bool Write(object command, string value)
        {
            bool          result     = false;
            JValue        jasonValue = new JValue(value);
            JetBusCommand _command   = (JetBusCommand)command;

            SetData(_command.Path, jasonValue);
            WaitOne(1);
            result = true;
            return(result);
        }
        ///<inheritdoc/>
        public string ReadFromBuffer(object command)
        {
            string        result     = "0";
            JetBusCommand jetcommand = (JetBusCommand)command;

            if (AllData.ContainsKey(jetcommand.Path))
            {
                result = jetcommand.ToString(AllData[jetcommand.Path]);
            }
            return(result);
        }
        /// <inheritdoc />
        public int ReadIntegerFromBuffer(object command)
        {
            JetBusCommand jetcommand = (JetBusCommand)command;

            if (!DSEFetchTargets.Contains(jetcommand.Path))
            {
                return(jetcommand.ToSValue(OneTimeFetch(jetcommand)));
            }
            else
            {
                return(jetcommand.ToSValue(AllData[jetcommand.Path]));
            }
        }
        ///<inheritdoc/>
        public string ReadFromDevice(object command)
        {
            string        result     = "0";
            JetBusCommand jetcommand = (JetBusCommand)command;

            if (!DSEFetchTargets.Contains(jetcommand.Path))
            {
                result = jetcommand.ToString(OneTimeFetch(jetcommand));
            }
            else if (AllData.ContainsKey(jetcommand.Path))
            {
                result = jetcommand.ToString(AllData[jetcommand.Path]);
            }
            return(result);
        }
        ///<inheritdoc/>
        private string OneTimeFetch(JetBusCommand jetcommand)
        {
            string  result = "-1";
            FetchId id;
            Matcher matcher = new Matcher();

            matcher.EqualsTo = jetcommand.Path;
            _peer.Fetch(out id, matcher, OnFetchData, OnFetch, this._timeoutMs);
            while (!AllData.ContainsKey(jetcommand.Path))
            {
            }
            result = jetcommand.ToString(AllData[jetcommand.Path]);
            _peer.Unfetch(id, OnFetch, this._timeoutMs);
            AllData.Remove(jetcommand.Path);
            return(result);
        }
Exemple #8
0
        public bool WriteInteger(object command, int data)
        {
            JetBusCommand _command = (JetBusCommand)command;

            if (this.behavior == Behavior.WriteZeroSuccess || this.behavior == Behavior.WriteGrossSuccess || this.behavior == Behavior.WriteTareSuccess ||
                this.behavior == Behavior.CalibrationSuccess || this.behavior == Behavior.CalibrationFail || this.behavior == Behavior.MeasureZeroSuccess ||
                this.behavior == Behavior.MeasureZeroFail || this.behavior == Behavior.CalibratePreloadCapacitySuccess)
            {
                JValue valueObj = new JValue(data);
                this.SetData(_command.Path, valueObj);
            }


            if (this.behavior == Behavior.setTestsSuccess || this.behavior == Behavior.setTestsFail)
            {
                JValue valueObj = new JValue(data);
                this.SetData(_command.Path, valueObj);
            }

            return(true);
        }
        public string ReadFromDevice(object command)
        {
            string        ret        = "";
            JetBusCommand jetcommand = (JetBusCommand)command;

            switch (behavior)
            {
            case Behavior.fwVersion:
                ret = "testFW";
                break;

            case Behavior.ident:
                ret = "testIdent";
                break;

            case Behavior.serialNumber:
                ret = "DSEtest123";
                break;
            }

            return(ret); //tbd
        }
Exemple #10
0
        ///<inheritdoc/>
        public int ReadIntegerFromBuffer(object command)
        {
            JetBusCommand jetcommand = (JetBusCommand)command;

            return(jetcommand.ToSValue(AllData[jetcommand.Path]));
        }
Exemple #11
0
 static JetBusCommands()
 {
     CIA461CalibrationWeight     = new JetBusCommand(DataType.S32, "6152/00", 0, 0);
     CIA461CertificaitonInfoNTEP = new JetBusCommand(DataType.ASCII, "6138/02", 0, 0);
     CIA461CertificaitonInfoOIML = new JetBusCommand(DataType.ASCII, "6138/01", 0, 0);
     CIA461Decimals = new JetBusCommand(DataType.U08, "6013/01", 0, 0);
     CIA461FilterBesselCutOffFrequency           = new JetBusCommand(DataType.U08, "60B1/02", 0, 0);
     CIA461FilterBesselFilterOrder               = new JetBusCommand(DataType.U08, "60B1/01", 0, 0);
     CIA461FilterButterworthCutOffFrequency      = new JetBusCommand(DataType.U08, "60A2/02", 0, 0);
     CIA461FilterButterworthFilterOrder          = new JetBusCommand(DataType.U08, "60A2/01", 0, 0);
     CIA461FilterCriticallyDampedCutOffFrequency = new JetBusCommand(DataType.U08, "60A1/02", 0, 0);
     CIA461FilterCriticallyDampedFilterOrder     = new JetBusCommand(DataType.U08, "60A1/01", 0, 0);
     CIA461GrossValue = new JetBusCommand(DataType.S32, "6144/00", 0, 0);
     CIA461ImplementedProfileSpecification = new JetBusCommand(DataType.U32, "1030/01", 0, 0);
     CIA461LoadCellCapability        = new JetBusCommand(DataType.U32, "6000/01", 0, 0);
     CIA461LocalGravityFactor        = new JetBusCommand(DataType.S32, "6021/01", 0, 0);
     CIA461MaximumZeroingTime        = new JetBusCommand(DataType.U16, "6141/02", 0, 0);
     CIA461MultiIntervalRangeControl = new JetBusCommand(DataType.U08, "611C/01", 0, 0);
     CIA461MultiLimit1                       = new JetBusCommand(DataType.S32, "611C/02", 0, 0);
     CIA461MultiLimit2                       = new JetBusCommand(DataType.S32, "611C/03", 0, 0);
     CIA461NetValue                          = new JetBusCommand(DataType.S32, "601A/01", 0, 0);
     CIA461OutputWeight                      = new JetBusCommand(DataType.S32, "601A/01", 0, 0);
     CIA461PeakValueGrossMax                 = new JetBusCommand(DataType.S32, "6149/01", 0, 0);
     CIA461PeakValueGrossMin                 = new JetBusCommand(DataType.S32, "6149/02", 0, 0);
     CIA461PeakValueMax                      = new JetBusCommand(DataType.S32, "6149/03", 0, 0);
     CIA461PeakValuMin                       = new JetBusCommand(DataType.S32, "6149/04", 0, 0);
     CIA461ProductCode                       = new JetBusCommand(DataType.U32, "1018/02", 0, 0);
     CIA461RestoreAllDefaultParameters       = new JetBusCommand(DataType.U32, "1011/01", 0, 0);
     DSERestoreAllDefaultParameters          = new JetBusCommand(DataType.U32, "1011/03", 0, 0);
     CIA461SampleRate                        = new JetBusCommand(DataType.U32, "6050/01", 0, 0);
     CIA461SaveAllParameters                 = new JetBusCommand(DataType.U32, "1010/01", 0, 0);
     CIA461ScaleAccuracyClass                = new JetBusCommand(DataType.U08, "6111/01", 0, 0);
     CIA461ScaleApportionmentFactor          = new JetBusCommand(DataType.U08, "6116/01", 0, 0);
     CIA461ScaleCommand                      = new JetBusCommand(DataType.U32, "6002/01", 0, 0);
     CIA461ScaleCommandStatus                = new JetBusCommand(DataType.U32, "6002/02", 0, 0);
     CIA461ScaleFilter                       = new JetBusCommand(DataType.U16, "6040/01", 0, 0);
     CIA461ScaleMaximumCapacity              = new JetBusCommand(DataType.S32, "6113/01", 0, 0);
     CIA461ScaleMaximumNumberOfVerifications = new JetBusCommand(DataType.U32, "6114/01", 0, 0);
     CIA461ScaleMinimumDeadLoad              = new JetBusCommand(DataType.S32, "6112/01", 0, 0);
     CIA461ScaleMinimumVerificationInterval  = new JetBusCommand(DataType.U32, "611B/01", 0, 0);
     CIA461ScaleOperationTemperatureMaximal  = new JetBusCommand(DataType.S16, "6118/03", 0, 0);
     CIA461ScaleOperationTemperatureMinimal  = new JetBusCommand(DataType.S16, "6118/02", 0, 0);
     CIA461ScaleOperationTemperatureNominal  = new JetBusCommand(DataType.S16, "6118/01", 0, 0);
     CIA461ScaleSafeLoadLimit                = new JetBusCommand(DataType.U32, "6117/01", 0, 0);
     CIA461ScaleSettings                     = new JetBusCommand(DataType.S32, "6020/01", 0, 0);
     CIA461SerialNumber                      = new JetBusCommand(DataType.U32, "1018/04", 0, 0);
     CIA461SuppyVoltageMaximal               = new JetBusCommand(DataType.U08, "6110/03", 0, 0);
     CIA461SuppyVoltageNominal               = new JetBusCommand(DataType.U08, "6110/01", 0, 0);
     CIA461SuppyVoltageNominalMinimal        = new JetBusCommand(DataType.U08, "6110/02", 0, 0);
     CIA461TareValue                         = new JetBusCommand(DataType.S32, "6143/00", 0, 0);
     CIA461Unit = new JetBusCommand(DataType.U32, "6015/01", 16, 8);
     CIA461UnitPrefixFixedParameters = new JetBusCommand(DataType.U32, "6014/01", 0, 0);
     CIA461VendorID = new JetBusCommand(DataType.U32, "1018/01", 0, 0);
     CIA461WeightMovingDetection          = new JetBusCommand(DataType.U08, "6153/00", 0, 0);
     CIA461WeightStatus                   = new JetBusCommand(DataType.U16, "6012/01", 0, 0);
     CIA461WeightStatusCenterOfZero       = new JetBusCommand(DataType.BIT, "6012/01", 11, 1);
     CIA461WeightStatusGeneralWeightError = new JetBusCommand(DataType.BIT, "6012/01", 0, 1);
     CIA461WeightStatusImplementationSpecificWeightStatus1 = new JetBusCommand(DataType.BIT, "6012/01", 14, 1);
     CIA461WeightStatusImplementationSpecificWeightStatus2 = new JetBusCommand(DataType.BIT, "6012/01", 14, 1);
     CIA461WeightStatusInsideZero      = new JetBusCommand(DataType.BIT, "6012/01", 12, 1);
     CIA461WeightStatusLimitStatus     = new JetBusCommand(DataType.BIT, "6012/01", 2, 2);
     CIA461WeightStatusManualTare      = new JetBusCommand(DataType.BIT, "6012/01", 6, 1);
     CIA461WeightStatusReserved        = new JetBusCommand(DataType.BIT, "6012/01", 13, 1);
     CIA461WeightStatusScaleAlarm      = new JetBusCommand(DataType.BIT, "6012/01", 1, 1);
     CIA461WeightStatusScaleRange      = new JetBusCommand(DataType.BIT, "6012/01", 8, 2);
     CIA461WeightStatusScaleSealIsOpen = new JetBusCommand(DataType.BIT, "6012/01", 5, 1);
     CIA461WeightStatusWeightMoving    = new JetBusCommand(DataType.BIT, "6012/01", 4, 1);
     CIA461WeightStatusWeightType      = new JetBusCommand(DataType.BIT, "6012/01", 7, 1);
     CIA461WeightStatusZeroRequired    = new JetBusCommand(DataType.BIT, "6012/01", 10, 1);
     CIA461WeightStep                  = new JetBusCommand(DataType.U08, "6016/01", 0, 0);
     CIA461ZeroValue                   = new JetBusCommand(DataType.S32, "6142/00", 0, 0);
     ADRDeviceAddress                  = new JetBusCommand(DataType.U08, "2600/01", 0, 0);
     Alarms                            = new JetBusCommand(DataType.U16, "6018/01", 0, 0);
     BRKBreakFilling                   = new JetBusCommand(DataType.NIL, "2240/01", 0, 0);
     CBKCoarseFlowMonitoring           = new JetBusCommand(DataType.S32, "2210/01", 0, 0);
     CBTCoarseFlowMonitoringTime       = new JetBusCommand(DataType.U16, "2220/01", 0, 0);
     CFDCoarseFlowDisconnect           = new JetBusCommand(DataType.S32, "2210/02", 0, 0);
     CFTCoarseFlowTime                 = new JetBusCommand(DataType.U16, "2230/01", 0, 0);
     CSNClearFillingResult             = new JetBusCommand(DataType.NIL, "2230/02", 0, 0);
     DL1DosingDelay1                   = new JetBusCommand(DataType.U16, "2220/0B", 0, 0);
     DL2DosingDelay2                   = new JetBusCommand(DataType.U16, "2220/0C", 0, 0);
     DMDFillingMode                    = new JetBusCommand(DataType.U08, "2200/04", 0, 0);
     DSTDosingTime                     = new JetBusCommand(DataType.U16, "2230/03", 0, 0);
     EMDEmptyingMode                   = new JetBusCommand(DataType.U08, "2200/05", 0, 0);
     EPTDischargeTime                  = new JetBusCommand(DataType.U16, "2220/02", 0, 0);
     ESRErrorRegister                  = new JetBusCommand(DataType.U08, "1001/00", 0, 0);
     EWBEmptyWeightBreak               = new JetBusCommand(DataType.U08, "2200/0F", 0, 0);
     EWTEmptyWeight                    = new JetBusCommand(DataType.S32, "2210/03", 0, 0);
     FBKFineFlowMonitoring             = new JetBusCommand(DataType.S32, "2210/04", 0, 0);
     FBTFineFlowMonitoringTime         = new JetBusCommand(DataType.U16, "2220/03", 0, 0);
     FFDFineFlowDisconnect             = new JetBusCommand(DataType.S32, "2210/05", 0, 0);
     FFLFirstFineFlow                  = new JetBusCommand(DataType.U16, "2220/0A", 0, 0);
     FFMMinimumFineFlow                = new JetBusCommand(DataType.S32, "2210/06", 0, 0);
     FFTFineFlowTime                   = new JetBusCommand(DataType.U16, "2230/04", 0, 0);
     FRS1FillingResult                 = new JetBusCommand(DataType.S32, "2000/05", 0, 0);
     FRS2FillingResultState            = new JetBusCommand(DataType.U16, "2000/06", 0, 0);
     FWTFillingTargetWeight            = new JetBusCommand(DataType.S32, "2210/07", 0, 0);
     HWVHardwareVersion                = new JetBusCommand(DataType.ASCII, "2520/0A", 0, 0);
     DSEHWRevision                     = new JetBusCommand(DataType.ASCII, "1009/00", 0, 0);
     DSEIDNDeviceIdentification        = new JetBusCommand(DataType.ASCII, "1008/00", 0, 0);
     DSESerialNumber                   = new JetBusCommand(DataType.U32, "4280/04", 0, 0);
     DSEFirmwareVersion                = new JetBusCommand(DataType.ASCII, "100A/00", 0, 0);
     DSEFilterSetup                    = new JetBusCommand(DataType.U32, "6040/00", 0, 0);
     DSELowPassCutOffFrequencyFIR      = new JetBusCommand(DataType.U32, "3311/02", 0, 0);
     DSELowPassCutOffFrequencyIIR      = new JetBusCommand(DataType.U32, "60A1/02", 0, 0);
     DSEFilterModeStage2               = new JetBusCommand(DataType.U32, "6040/02", 0, 0);
     DSEFilterModeStage3               = new JetBusCommand(DataType.U32, "6040/03", 0, 0);
     DSEFilterModeStage4               = new JetBusCommand(DataType.U32, "6040/04", 0, 0);
     DSEFilterModeStage5               = new JetBusCommand(DataType.U32, "6040/05", 0, 0);
     DSECombFilterFrequencyStage2      = new JetBusCommand(DataType.U32, "3321/00", 0, 0);
     DSECombFilterFrequencyStage3      = new JetBusCommand(DataType.U32, "3322/00", 0, 0);
     DSECombFilterFrequencyStage4      = new JetBusCommand(DataType.U32, "3323/00", 0, 0);
     DSECombFilterFrequencyStage5      = new JetBusCommand(DataType.U32, "3324/00", 0, 0);
     DSEMovAvFilterFrequencyStage2     = new JetBusCommand(DataType.U32, "3331/00", 0, 0);
     DSEMovAvFilterFrequencyStage3     = new JetBusCommand(DataType.U32, "3332/00", 0, 0);
     DSEMovAvFilterFrequencyStage4     = new JetBusCommand(DataType.U32, "3333/00", 0, 0);
     DSEMovAvFilterFrequencyStage5     = new JetBusCommand(DataType.U32, "3334/00", 0, 0);
     SDLScaleZeroSignal                = new JetBusCommand(DataType.S32, "6150/00", 0, 0);
     SNLScaleNominalSignal             = new JetBusCommand(DataType.S32, "6151/00", 0, 0);
     DSEZeroValue                      = new JetBusCommand(DataType.S32, "6142/00", 0, 0);
     IDNDeviceIdentification           = new JetBusCommand(DataType.ASCII, "2520/01", 0, 0);
     IM1DigitalInput1Mode              = new JetBusCommand(DataType.U08, "2022/01", 0, 0);
     IM2DigitalInput2Mode              = new JetBusCommand(DataType.U08, "2022/02", 0, 0);
     IM3DigitalInput3Mode              = new JetBusCommand(DataType.U08, "2022/03", 0, 0);
     IM4DigitalInput4Mode              = new JetBusCommand(DataType.U08, "2022/04", 0, 0);
     IMDApplicationMode                = new JetBusCommand(DataType.U08, "2010/07", 0, 0);
     IS1DigitalInput1                  = new JetBusCommand(DataType.U08, "2020/18", 0, 0);
     IS2DigitalInput2                  = new JetBusCommand(DataType.U08, "2020/19", 0, 0);
     IS3DigitalInput3                  = new JetBusCommand(DataType.U08, "2020/1A", 0, 0);
     IS4DigitalInput4                  = new JetBusCommand(DataType.U08, "2020/1B", 0, 0);
     LDWZeroValue                      = new JetBusCommand(DataType.S32, "2110/06", 0, 0);
     LIV1LimitSwitchHysteresis         = new JetBusCommand(DataType.S32, "2030/04", 0, 0);
     LIV1LimitSwitchLevel              = new JetBusCommand(DataType.S32, "2030/03", 0, 0);
     LIV1LimitSwitchMode               = new JetBusCommand(DataType.U08, "2030/01", 0, 0);
     LIV1LimitSwitchSource             = new JetBusCommand(DataType.U08, "2030/02", 0, 0);
     LIV2LimitSwitchHysteresis         = new JetBusCommand(DataType.S32, "2030/08", 0, 0);
     LIV2LimitSwitchLevel              = new JetBusCommand(DataType.S32, "2030/07", 0, 0);
     LIV2LimitSwitchMode               = new JetBusCommand(DataType.U08, "2030/05", 0, 0);
     LIV2LimitSwitchSource             = new JetBusCommand(DataType.U08, "2030/06", 0, 0);
     LIV3LimitSwitchHysteresis         = new JetBusCommand(DataType.S32, "2030/0C", 0, 0);
     LIV3LimitSwitchLevel              = new JetBusCommand(DataType.S32, "2030/0B", 0, 0);
     LIV3LimitSwitchMode               = new JetBusCommand(DataType.U08, "2030/09", 0, 0);
     LIV3LimitSwitchSource             = new JetBusCommand(DataType.U08, "2030/0A", 0, 0);
     LIV4LimitSwitchHysteresis         = new JetBusCommand(DataType.S32, "2030/10", 0, 0);
     LIV4LimitSwitchLevel              = new JetBusCommand(DataType.S32, "2030/0F", 0, 0);
     LIV4LimitSwitchMode               = new JetBusCommand(DataType.U08, "2030/0D", 0, 0);
     LIV4LimitSwitchSource             = new JetBusCommand(DataType.U08, "2030/0E", 0, 0);
     LTCLockoutTimeCoarseFlow          = new JetBusCommand(DataType.U16, "2220/04", 0, 0);
     LTFLockoutTimeFineFlow            = new JetBusCommand(DataType.U16, "2220/05", 0, 0);
     LTLLowerToleranceLimit            = new JetBusCommand(DataType.S32, "2210/08", 0, 0);
     LVSLimitValueStatus               = new JetBusCommand(DataType.U08, "2020/25", 0, 1);
     LVSLimitValue1Status              = new JetBusCommand(DataType.BIT, "2020/25", 0, 1);
     LVSLimitValue2Status              = new JetBusCommand(DataType.BIT, "2020/25", 1, 1);
     LVSLimitValue3Status              = new JetBusCommand(DataType.BIT, "2020/25", 2, 1);
     LVSLimitValue4Status              = new JetBusCommand(DataType.BIT, "2020/25", 3, 1);
     LWTNominalValue                   = new JetBusCommand(DataType.S32, "2110/07", 0, 0);
     MDTMaxFillingTime                 = new JetBusCommand(DataType.U16, "2220/06", 0, 0);
     MFOMaterialFlow                   = new JetBusCommand(DataType.S32, "2000/0E", 0, 0);
     MSWMinimumStartWeight             = new JetBusCommand(DataType.S32, "2210/0B", 0, 0);
     NDSFillingCounter                 = new JetBusCommand(DataType.U16, "2230/05", 0, 0);
     NOVScaleCapacity                  = new JetBusCommand(DataType.S32, "2110/0A", 0, 0);
     OM1DigitalOutput1Mode             = new JetBusCommand(DataType.U08, "2021/01", 0, 0);
     OM2DigitalOutput2Mode             = new JetBusCommand(DataType.U08, "2021/02", 0, 0);
     OM3DigitalOutput3Mode             = new JetBusCommand(DataType.U08, "2021/03", 0, 0);
     OM4DigitalOutput4Mode             = new JetBusCommand(DataType.U08, "2021/04", 0, 0);
     OS1DigitalOutput1                 = new JetBusCommand(DataType.U08, "2020/1E", 0, 0);
     OS2DigitalOutput2                 = new JetBusCommand(DataType.U08, "2020/1F", 0, 0);
     OS3DigitalOutput3                 = new JetBusCommand(DataType.U08, "2020/20", 0, 0);
     OS4DigitalOutput4                 = new JetBusCommand(DataType.U08, "2020/21", 0, 0);
     OSNOptimization                   = new JetBusCommand(DataType.U08, "2200/07", 0, 0);
     PDTFirmwareDate                   = new JetBusCommand(DataType.ASCII, "2520/05", 0, 0);
     RDPActivateParameterSet           = new JetBusCommand(DataType.U08, "2200/02", 0, 0);
     RDSRedosing                       = new JetBusCommand(DataType.U08, "2200/08", 0, 0);
     RESResetDevice                    = new JetBusCommand(DataType.NIL, "2D00/04", 0, 0);
     RFOResidualFlow                   = new JetBusCommand(DataType.S32, "2000/0F", 0, 0);
     RFTResidualFlowTime               = new JetBusCommand(DataType.U16, "2220/07", 0, 0);
     RIODigitalIOStatus                = new JetBusCommand(DataType.U16, "2020/12", 0, 0);
     RUNStartFilling                   = new JetBusCommand(DataType.NIL, "2240/02", 0, 0);
     SDFSpecialDosingFunctions         = new JetBusCommand(DataType.U08, "2200/0A", 0, 0);
     SDMFillingResultMeanValue         = new JetBusCommand(DataType.S32, "2230/06", 0, 0);
     SDOFillingState                   = new JetBusCommand(DataType.U08, "2D00/02", 0, 0);
     SDSFillingResultStandardDeviation = new JetBusCommand(DataType.S32, "2230/07", 0, 0);
     SMDRecordWeightMode               = new JetBusCommand(DataType.U08, "2300/08", 0, 0);
     STORecordWeight                   = new JetBusCommand(DataType.U08, "2040/05", 0, 0);
     STTStabilzationTime               = new JetBusCommand(DataType.U16, "2220/08", 0, 0);
     SUMFillingResultSum               = new JetBusCommand(DataType.U32, "2230/08", 0, 0);
     SWISoftwareIdentification         = new JetBusCommand(DataType.U32, "2600/22", 0, 0);
     SWVSoftwareVersion                = new JetBusCommand(DataType.U32, "2600/16", 0, 0);
     SYDSystematicDifference           = new JetBusCommand(DataType.S32, "2210/09", 0, 0);
     TADTareDelay                      = new JetBusCommand(DataType.U16, "2220/09", 0, 0);
     TIMCurrentDatetime                = new JetBusCommand(DataType.U32, "2E00/02", 0, 0);
     TMDTareMode                       = new JetBusCommand(DataType.U08, "2200/0B", 0, 0);
     UTLUpperToleranceLimit            = new JetBusCommand(DataType.S32, "2210/0A", 0, 0);
     VCTValveControl                   = new JetBusCommand(DataType.U08, "2200/0C", 0, 0);
     WDPWriteDosingParameterSet        = new JetBusCommand(DataType.U08, "2200/01", 0, 0);
     WRSWeightMemoryEntry              = new JetBusCommand(DataType.ASCII, "2040/06", 0, 0);
 }
        ///<inheritdoc/>
        public int ReadIntegerFromBuffer(object command)
        {
            JetBusCommand jetcommand = (JetBusCommand)command;

            switch (this.behavior)
            {
            case Behavior.lowPassFilterNoFilter:
                _dataBuffer["6040/01"] = 0;
                break;

            case Behavior.lowPassFilterIIRFilter:
                _dataBuffer["6040/01"] = 24737;
                break;

            case Behavior.lowPassFilterFIRFilter:
                _dataBuffer["6040/01"] = 13073;
                break;

            case Behavior.lowPassFilterNoFFreq:
                _dataBuffer["6040/01"] = 0;
                break;

            case Behavior.lowPassFilterFIRFreq:
                switch (jetcommand.Path)
                {
                case "6040/01":
                    _dataBuffer["6040/01"] = 13073;
                    break;

                case "3311/02":
                    _dataBuffer["3311/02"] = 200;
                    break;

                default:
                    break;
                }
                break;

            case Behavior.lowPassFilterIIRFreq:
                switch (jetcommand.Path)
                {
                case "6040/01":
                    _dataBuffer["6040/01"] = 24737;
                    break;

                case "60A1/02":
                    if (!_dataBuffer.ContainsKey(jetcommand.Path))
                    {
                        _dataBuffer["60A1/02"] = 400;
                    }
                    break;

                default:
                    break;
                }
                break;

            case Behavior.weightStepCase:
                _dataBuffer["6013/01"] = 3;
                _dataBuffer["6016/01"] = 10;
                break;

            case Behavior.additionalFilterTest:
                if (!_dataBuffer.ContainsKey(jetcommand.Path))
                {
                    _dataBuffer[jetcommand.Path] = 0;
                }
                break;

            case Behavior.additionalFilterFrequencyTestFail:
                if (!_dataBuffer.ContainsKey(jetcommand.Path))
                {
                    _dataBuffer[jetcommand.Path] = 0;
                }
                break;

            case Behavior.additionalFilterFrequencyTestSuccess:
                if (!_dataBuffer.ContainsKey(jetcommand.Path))
                {
                    _dataBuffer[jetcommand.Path] = 0;
                }
                break;

            case Behavior.zeroValueTest:
                switch (jetcommand.Path)
                {
                case "6013/01":
                    _dataBuffer[jetcommand.Path] = 3;
                    break;

                case "6142/00":
                    _dataBuffer[jetcommand.Path] = 3000;
                    break;
                }
                break;

            case Behavior.generalScaleErrorTrueTest:
                _dataBuffer["6012/01"] = 1;
                break;

            case Behavior.generalScaleErrorFalseTest:
                _dataBuffer["6012/01"] = 0;
                break;

            case Behavior.readWriteManualTareTestFail:
                return(8000);

            case Behavior.readWriteMaxCapTestFail:
                return(8000);

            case Behavior.readWriteCalWeightFail:
                return(8000);

            case Behavior.readWriteWeightMoveDetecFail:
                return(0);

            case Behavior.readWriteScaleRangeModeFail:
                return(2);
            }

            return(jetcommand.ToSValue(AllData[jetcommand.Path]));
        }
        public string ReadFromBuffer(object command)
        {
            this.DoHandshake();
            JetBusCommand jetcommand = (JetBusCommand)command;

            switch (this.behavior)
            {
            case Behavior.t_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x004C0000);      // Unit, prefix or fixed parameters - for unit 't'.
                break;

            case Behavior.kg_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x00020000);      // Unit, prefix or fixed parameters - for unit 'kg'.
                break;

            case Behavior.g_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x004B0000);      // Unit, prefix or fixed parameters - for unit 'g'.
                break;

            case Behavior.lb_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0X00A60000);      // Unit, prefix or fixed parameters - for unit 'lb'.
                break;

            case Behavior.N_UnitValue_Success:
                _dataBuffer["6015/01"] = Convert.ToString(0x00210000);      // Read Unit, prefix or fixed parameters - for unit 'N'.
                break;

            case Behavior.LimitValues_WeightWithinLimits:
                _dataBuffer["6012/01"] = Convert.ToString(0x00);
                break;

            case Behavior.LimitValues_Underload:
                _dataBuffer["6012/01"] = Convert.ToString(0x4);      // For limit values
                break;

            case Behavior.LimitValues_Overload:
                _dataBuffer["6012/01"] = Convert.ToString(0x8);
                break;

            case Behavior.LimitValues_HigherSafeLoadLimit:
                _dataBuffer["6012/01"] = Convert.ToString(0xC);
                break;

            case Behavior.NetGrossTareValues_Success:
                _dataBuffer["601A/01"] = Convert.ToString(11);
                _dataBuffer["6143/00"] = Convert.ToString(11);
                break;

            case Behavior.tareModeNoneTest:
                switch (jetcommand.BitIndex)
                {
                case 6:
                    _dataBuffer[jetcommand.Path] = 0;
                    break;

                case 7:
                    _dataBuffer[jetcommand.Path] = 0;
                    break;
                }
                break;

            case Behavior.tareModePreTest:
                switch (jetcommand.BitIndex)
                {
                case 6:
                    return("1");

                case 7:
                    return("1");
                }
                break;

            case Behavior.tareModeTareTest:
                switch (jetcommand.BitIndex)
                {
                case 6:
                    return("1");

                case 7:
                    return("0");
                }
                break;

            case Behavior.weightStableFalseTest:
                return("1");

            case Behavior.weightStableTrueTest:
                return("0");

            case Behavior.scaleRangeTest:
                return("4");

            case Behavior.writeUnitTest:
                break;

            case Behavior.readWeightTest:
                switch (jetcommand.Path)
                {
                case "6013/01":
                    return("2");

                case "6144/00":
                    return("41396");

                case "601A/01":
                    return("46396");

                case "6143/00":
                    return("5000");
                }
                break;

            case Behavior.readWriteManualTareTestSuccess:
                switch (jetcommand.Path)
                {
                case "6013/01":
                    return("2");
                }
                break;

            case Behavior.readWriteManualTareTestFail:
                switch (jetcommand.Path)
                {
                case "6013/01":
                    return("2");

                case "6143/00":
                    return("8000");
                }
                break;

            case Behavior.readWriteCalWeightFail:
                return("2");

            case Behavior.readWriteCalWeightSuccess:
                return("2");

            default:
                _dataBuffer["6015/01"] = Convert.ToString(0x00);      // Unit, prefix or fixed parameters - for default value
                _dataBuffer["601A/01"] = Convert.ToString(0);
                break;
            }


            return(jetcommand.ToString(AllData[jetcommand.Path]));
        }