📄 dmtpgeoevent.java
字号:
public double getPDOP() { return this.getDoubleValue(FLD_gpsPDOP, 0.0); } public double getHDOP() { return this.getDoubleValue(FLD_gpsHDOP, 0.0); } public double getVDOP() { return this.getDoubleValue(FLD_gpsVDOP, 0.0); } // ------------------------------------------------------------------------ public long getIndex() { return this.getLongValue(FLD_index, 0L); } // ------------------------------------------------------------------------ public long getInputId() { return this.getLongValue(FLD_inputID, 0L); } public long getInputState() { return this.getLongValue(FLD_inputState, 0L); } public long getOutputId() { return this.getLongValue(FLD_outputID, 0L); } public long getOutputState() { return this.getLongValue(FLD_outputState, 0L); } public long getElapsedTime(int ndx) { return this.getLongValue(FLD_elapsedTime, 0L, ndx); } public long getCounter(int ndx) { return this.getLongValue(FLD_counter, 0L, ndx); } // ------------------------------------------------------------------------ public long getSensorLow(int ndx) { return this.getLongValue(FLD_sensor32LO, 0L, ndx); } public long getSensorHigh(int ndx) { return this.getLongValue(FLD_sensor32HI, 0L, ndx); } // ------------------------------------------------------------------------ public double getTemeratureLow(int ndx) { return this.getDoubleValue(FLD_tempLO, -9999.0, ndx); } public double getTemeratureHigh(int ndx) { return this.getDoubleValue(FLD_tempHI, -9999.0, ndx); } public double getTemeratureAverage(int ndx) { return this.getDoubleValue(FLD_tempAV, -9999.0, ndx); } // ------------------------------------------------------------------------ public String getEntity(int ndx) { return this.getStringValue(FLD_entity, "", ndx); } public String getString(int ndx) { return this.getStringValue(FLD_string, "", ndx); } public byte[] getBinary(int ndx) { return this.getByteValue(FLD_binary, EMPTY_BYTE_ARRAY, ndx); } // ------------------------------------------------------------------------ public byte[] getObcValue(int ndx) { return this.getByteValue(FLD_obcValue, EMPTY_BYTE_ARRAY, ndx); } public long getObcGeneric(int ndx) { return this.getLongValue(FLD_obcGeneric, 0L, ndx); } public long getObcJ1708Fault(int ndx) { return this.getLongValue(FLD_obcJ1708Fault, 0L, ndx); } public double getObcDistanceKM() { return this.getDoubleValue(FLD_obcDistanceKM, 0.0); } public double getObcEngineHours() { return this.getDoubleValue(FLD_obcEngineHours, 0.0); } public long getObcEngineRPM() { return this.getLongValue(FLD_obcEngineRPM, 0L); } public double getObcCoolantLevel() { return this.getDoubleValue(FLD_obcCoolantLevel, 0.0); } public double getObcCoolantTemperature() { return this.getDoubleValue(FLD_obcCoolantTemp, 0.0); } public double getObcOilLevel() { return this.getDoubleValue(FLD_obcOilLevel, 0.0); } public double getObcOilPressure() { return this.getDoubleValue(FLD_obcOilPressure, 0.0); } public double getObcFuelLevel() { return this.getDoubleValue(FLD_obcFuelLevel, 0.0); } public double getObcFuelEconomy() { return this.getDoubleValue(FLD_obcFuelEconomy, 0.0); } public double getObcFuelTotal() { return this.getDoubleValue(FLD_obcFuelTotal, 0.0); } public double getObcFuelIdle() { return this.getDoubleValue(FLD_obcFuelIdle, 0.0); } // ------------------------------------------------------------------------ public long getSequence() { return this.getLongValue(FLD_sequence, -1L); } public int getSequenceLength() { return (int)this.getLongValue(FLD_sequenceLength, 0L); } // ------------------------------------------------------------------------ public String getRawData() { return this.getStringValue(FLD_rawData, ""); } // ------------------------------------------------------------------------ private String _getEventValueString(String key, Object val) { if (key == null) { return null; } else if (key.startsWith(FLD_statusCode)) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); int n = ((Number)val).intValue(); String code = StringTools.toHexString(n,16); sb.append("[0x").append(code).append("] "); sb.append(StatusCodes.GetCodeDescription(n)); return sb.toString(); } } else if (key.startsWith(FLD_timestamp)) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); long n = ((Number)val).longValue(); sb.append("[").append(n).append("] "); sb.append((new DateTime(n)).toString()); return sb.toString(); } } else if (key.startsWith(FLD_speedKPH)) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); double n = ((Number)val).doubleValue(); sb.append("["); sb.append(StringTools.format(n,"#0.0")); sb.append(" kph] "); sb.append(StringTools.format(n*GeoPoint.MILES_PER_KILOMETER,"#0.0")); sb.append(" mph"); return sb.toString(); } } else if (key.startsWith(FLD_altitude)) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); double n = ((Number)val).doubleValue(); sb.append("["); sb.append(StringTools.format(n,"#0.0")); sb.append(" meters] "); sb.append(StringTools.format(n*GeoPoint.FEET_PER_METER,"#0.0")); sb.append(" feet"); return sb.toString(); } } else if (key.startsWith(FLD_distanceKM) || key.startsWith(FLD_odometerKM) || key.startsWith(FLD_obcDistanceKM) ) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); double n = ((Number)val).doubleValue(); sb.append("["); sb.append(StringTools.format(n,"#0.0")); sb.append(" km] "); sb.append(StringTools.format(n*GeoPoint.MILES_PER_KILOMETER,"#0.0")); sb.append(" miles"); return sb.toString(); } } else if (key.startsWith(FLD_sensor32LO) || key.startsWith(FLD_sensor32HI) ) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); long n = ((Number)val).longValue(); sb.append("[0x").append(StringTools.toHexString(n,32)).append("] "); sb.append(n); return sb.toString(); } } else if (key.startsWith(FLD_tempLO) || key.startsWith(FLD_tempHI) || key.startsWith(FLD_tempAV) ) { if (val instanceof Number) { StringBuffer sb = new StringBuffer(); double n = ((Number)val).doubleValue(); sb.append("["); sb.append(StringTools.format(n,"#0.0")); sb.append(" C] "); sb.append(StringTools.format((n*(9.0/5.0))+32.0,"#0.0")); sb.append(" F"); return sb.toString(); } } else if (key.startsWith(FLD_obcFuelTotal) || key.startsWith(FLD_obcFuelIdle)) { StringBuffer sb = new StringBuffer(); double liters = ((Number)val).doubleValue(); sb.append("["); sb.append(StringTools.format(liters,"#0.0")); sb.append(" liters] "); sb.append(StringTools.format(liters * GALLONS_PER_LITER,"#0.0")); sb.append(" gallons"); return sb.toString(); } else if (key.startsWith(FLD_obcJ1708Fault)) { // 0: 8 - MID // 9:16 - PID/SID [0x8000==SID, 0x0100==ExtendedPID] // 25: 8 - Fault (FMI) if (val instanceof Number) { // [0x80016201] MID=128 PID=354[92] FMI=1 StringBuffer sb = new StringBuffer(); long n = ((Number)val).longValue(); int mid = (int)((n >> 24) & 0xFF); int pidSid = (int)((n >> 8) & 0xFFFF); int fmi = (int)((n >> 0) & 0xFF); sb.append("[0x").append(StringTools.toHexString(n,32)).append("] "); if (n != 0L) { sb.append("MID=").append(mid).append(" "); if ((pidSid & 0x8000) != 0) { sb.append("SID=").append(pidSid & 0x0FFF); sb.append(" "); } else { sb.append("PID=").append(pidSid & 0x0FFF); sb.append("[").append(pidSid & 0x00FF).append("]"); sb.append(" "); } sb.append("FMI=").append(fmi); } return sb.toString(); } } return null; } /* Debug purposes: display contents */ public String toString() { StringBuffer sb = new StringBuffer(); sb.append("Event:\n"); DMTPGeoEvent gev = this; /* list all fields we have */ Iterator keyIter = gev.keyIterator(); for (;keyIter.hasNext();) { /* include key name */ String key = (String)keyIter.next(); sb.append(" ").append(key); sb.append(StringTools.replicateString(" ", 14-key.length())); sb.append(": "); /* include key value */ Object val = gev.getEventValue(key); // 'ndx' is already included in the key String valStr = this._getEventValueString(key, val); if (valStr != null) { sb.append(valStr); } else { if (val instanceof Long) { long n = ((Number)val).longValue(); String ns; if ((n & 0xFFFFFFFF00000000L) != 0L) { ns = StringTools.toHexString(n,64); } else if ((n & 0xFFFFFFFFFFFF0000L) != 0L) { ns = StringTools.toHexString(n,32); } else { ns = StringTools.toHexString(n,16); } sb.append("[0x").append(ns).append("] "); sb.append(n); } else if (val instanceof Double) { double n = ((Number)val).doubleValue(); sb.append(StringTools.format(n,"#0.00")); } else if (val instanceof byte[]) { byte b[] = (byte[])val; sb.append("0x"); sb.append(StringTools.toHexString(b)); } else if (val instanceof GeoPoint) { sb.append(val.toString()); } else if (val instanceof String) { sb.append((String)val); } else { sb.append("? "); sb.append(val.toString()); } } /* new line */ sb.append("\n"); } return sb.toString(); } // ------------------------------------------------------------------------}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -