Exemple #1
0
        public List <OBDParameterValue> GetValueList(OBDParameter param, bool bEnglishUnits = false)
        {
            List <OBDParameterValue> ValueList = new List <OBDParameterValue>();

            if (param.PID.Length > 0)
            {
                m_log.TraceInfo("Requesting: " + param.PID);
            }
            else
            {
                m_log.TraceInfo("Requesting: " + param.OBDRequest);
            }
            OBDResponseList responses = m_obdDevice.Query(param);
            string          strItem   = "Responses: ";

            if (responses.ErrorDetected)
            {
                strItem += "Error Detected!";
                OBDParameterValue value = new OBDParameterValue {
                    ErrorDetected    = true,
                    StringValue      = "Error Detected in OBDResponseList!",
                    ShortStringValue = "ERROR_RESP"
                };
                ValueList.Add(value);
                m_log.TraceInfo(strItem);
                return(ValueList);
            }
            else
            {
                for (int i = 0; i < responses.ResponseCount; i++)
                {
                    strItem += string.Format("[{0}] ", responses.GetOBDResponse(i).Data);
                }
                strItem = strItem.TrimEnd();
                m_log.TraceInfo(strItem);
            }

            for (int i = 0; i < responses.ResponseCount; i++)
            {
                OBDParameterValue obdValue = m_obdInterpreter.GetValue(param, responses.GetOBDResponse(i), bEnglishUnits);
                if (obdValue.ErrorDetected)
                {
                    m_log.TraceError("Error Detected in OBDParameterValue!");
                }
                else
                {
                    m_log.TraceInfo(GetLogString(param, obdValue));
                }
                ValueList.Add(obdValue);
            }
            return(ValueList);
        }
Exemple #2
0
        public OBDResponseList GetResponseList(OBDParameter param)
        {
            OBDResponseList responses = m_obdDevice.Query(param);
            string          strItem   = "Responses: ";

            for (int i = 0; i < responses.ResponseCount; i++)
            {
                strItem += string.Format("[{0}] ", responses.GetOBDResponse(i).Data);
            }
            m_log.TraceInfo(strItem);
            return(responses);
        }
Exemple #3
0
        public OBDParameterValue GetValue(OBDParameter param, bool bEnglishUnits = false)
        {
            if (param.PID.Length > 0)
            {
                m_log.TraceInfo("Requesting: " + param.PID);
            }
            else
            {
                m_log.TraceInfo("Requesting: " + param.OBDRequest);
            }
            if (param.Service == 0)
            {
                return(SpecialValue(param));
            }

            OBDResponseList responses = m_obdDevice.Query(param);
            string          strItem   = "Responses: ";

            if (responses.ErrorDetected)
            {
                strItem += "Error Detected!";
                m_log.TraceInfo(strItem);
                return(new OBDParameterValue {
                    ErrorDetected = true
                });
            }
            else
            {
                for (int i = 0; i < responses.ResponseCount; i++)
                {
                    strItem += string.Format("[{0}] ", responses.GetOBDResponse(i).Data);
                }
            }
            m_log.TraceInfo(strItem);
            OBDParameterValue obdValue = m_obdInterpreter.GetValue(param, responses, bEnglishUnits);

            if (obdValue.ErrorDetected)
            {
                m_log.TraceError("Error Detected in OBDParameterValue!");
            }
            else
            {
                m_log.TraceInfo(GetLogString(param, obdValue));
            }
            return(obdValue);
        }