|
@@ -205,19 +205,19 @@ public class SigSignalMap implements SigCommResponse {
|
|
|
int planTp = (buffer[idx++] & 0xFF); /* map 계획구분, 0:일반제, 1~5:시차제, 6:보행맵 */
|
|
|
int compSize = (buffer[idx++] & 0xFF);
|
|
|
|
|
|
- byte[] compData = new byte[SigMapData.MAX_COMPRESS_DATA_SIZE];
|
|
|
-// byte[] deCompData = new byte[SigMapData.MAX_DECOMPRESS_DATA_SIZE];
|
|
|
- System.arraycopy(buffer, idx, compData, 0, compData.length);
|
|
|
+// byte[] compData = new byte[SigMapData.MAX_COMPRESS_DATA_SIZE];
|
|
|
+ byte[] deCompData = new byte[SigMapData.MAX_DECOMPRESS_DATA_SIZE];
|
|
|
+// System.arraycopy(buffer, idx, compData, 0, compData.length);
|
|
|
|
|
|
mapData.init();
|
|
|
|
|
|
if (lcType == SigMapData.ESIGMAP_LC_TYPE_2004) {
|
|
|
- continue;
|
|
|
- //res = SigMapData.signalMapDecompress(compData, idx, compSize, deCompData);
|
|
|
+ log.info("INT_NO: {}, RING_NO: {}, PLAN_TP: {}", intNo, ringNo, planTp);
|
|
|
+ res = SigMapData.signalMapDecompress(buffer, idx, compSize, deCompData);
|
|
|
}
|
|
|
else {
|
|
|
- log.info("INT_NO: {}, RING_NO: {}, PLAN_TP: {}", intNo, ringNo, planTp);
|
|
|
- res = SigMapData.signalMapDecompress2010(buffer, idx, compSize, mapData);
|
|
|
+ continue;
|
|
|
+// res = SigMapData.signalMapDecompress2010(buffer, idx, compSize, mapData);
|
|
|
}
|
|
|
|
|
|
if (res == 0 && res == -999) {
|
|
@@ -237,6 +237,7 @@ public class SigSignalMap implements SigCommResponse {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ int spIdx = 0;
|
|
|
for (int jj = 0; jj < SigMapData.MAX_SIGMAP_STEP; jj++) {
|
|
|
HashMap<String, Object> param = new HashMap<>();
|
|
|
|
|
@@ -246,26 +247,48 @@ public class SigSignalMap implements SigCommResponse {
|
|
|
param.put("PLAN_TP", planTp); /*계획구분(0:일반제, 1:시차제, 2:시차제, 3:시차제, 4:시차제, 5:시차제, 6:보행맵) */
|
|
|
param.put("STEP_NO", jj+1); /*스텝번호(1~32) */
|
|
|
|
|
|
- param.put("CAR1", mapData.step[jj].code[ 0] & 0xFF); /*차량등 1 (2004-LSU1) */
|
|
|
- param.put("PED1", mapData.step[jj].code[ 1] & 0xFF); /*보행등 1 (2004-LSU2) */
|
|
|
- param.put("CAR2", mapData.step[jj].code[ 2] & 0xFF);
|
|
|
- param.put("PED2", mapData.step[jj].code[ 3] & 0xFF);
|
|
|
- param.put("CAR3", mapData.step[jj].code[ 4] & 0xFF);
|
|
|
- param.put("PED3", mapData.step[jj].code[ 5] & 0xFF);
|
|
|
- param.put("CAR4", mapData.step[jj].code[ 6] & 0xFF);
|
|
|
- param.put("PED4", mapData.step[jj].code[ 7] & 0xFF);
|
|
|
- param.put("CAR5", mapData.step[jj].code[ 8] & 0xFF);
|
|
|
- param.put("PED5", mapData.step[jj].code[ 9] & 0xFF);
|
|
|
- param.put("CAR6", mapData.step[jj].code[10] & 0xFF);
|
|
|
- param.put("PED6", mapData.step[jj].code[11] & 0xFF);
|
|
|
- param.put("CAR7", mapData.step[jj].code[12] & 0xFF);
|
|
|
- param.put("PED7", mapData.step[jj].code[13] & 0xFF);
|
|
|
- param.put("CAR8", mapData.step[jj].code[14] & 0xFF); /*차량등 8 (2004-LSU15) */
|
|
|
- param.put("PED8", mapData.step[jj].code[15] & 0xFF); /*보행등 8 (2004-LSU16) */
|
|
|
- param.put("MIN_TM", mapData.step[jj].code[16] & 0xFF); /*최소시간 */
|
|
|
- param.put("MAX_TM", mapData.step[jj].code[17] & 0xFF); /*최대시간 */
|
|
|
- param.put("EOP", mapData.step[jj].code[18] & 0xFF); /*현시종료여부(1:종료) */
|
|
|
-
|
|
|
+ if (lcType == SigMapData.ESIGMAP_LC_TYPE_2004) {
|
|
|
+ param.put("CAR1", deCompData[spIdx++] & 0xFF); /*차량등 1 (2004-LSU1) */
|
|
|
+ param.put("PED1", deCompData[spIdx++] & 0xFF); /*보행등 1 (2004-LSU2) */
|
|
|
+ param.put("CAR2", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED2", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR3", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED3", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR4", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED4", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR5", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED5", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR6", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED6", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR7", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("PED7", deCompData[spIdx++] & 0xFF);
|
|
|
+ param.put("CAR8", deCompData[spIdx++] & 0xFF); /*차량등 8 (2004-LSU15) */
|
|
|
+ param.put("PED8", deCompData[spIdx++] & 0xFF); /*보행등 8 (2004-LSU16) */
|
|
|
+ param.put("MIN_TM", deCompData[spIdx++] & 0xFF); /*최소시간 */
|
|
|
+ param.put("MAX_TM", deCompData[spIdx++] & 0xFF); /*최대시간 */
|
|
|
+ param.put("EOP", deCompData[spIdx++] & 0xFF); /*현시종료여부(1:종료) */
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ param.put("CAR1", mapData.step[jj].code[0] & 0xFF); /*차량등 1 (2004-LSU1) */
|
|
|
+ param.put("PED1", mapData.step[jj].code[1] & 0xFF); /*보행등 1 (2004-LSU2) */
|
|
|
+ param.put("CAR2", mapData.step[jj].code[2] & 0xFF);
|
|
|
+ param.put("PED2", mapData.step[jj].code[3] & 0xFF);
|
|
|
+ param.put("CAR3", mapData.step[jj].code[4] & 0xFF);
|
|
|
+ param.put("PED3", mapData.step[jj].code[5] & 0xFF);
|
|
|
+ param.put("CAR4", mapData.step[jj].code[6] & 0xFF);
|
|
|
+ param.put("PED4", mapData.step[jj].code[7] & 0xFF);
|
|
|
+ param.put("CAR5", mapData.step[jj].code[8] & 0xFF);
|
|
|
+ param.put("PED5", mapData.step[jj].code[9] & 0xFF);
|
|
|
+ param.put("CAR6", mapData.step[jj].code[10] & 0xFF);
|
|
|
+ param.put("PED6", mapData.step[jj].code[11] & 0xFF);
|
|
|
+ param.put("CAR7", mapData.step[jj].code[12] & 0xFF);
|
|
|
+ param.put("PED7", mapData.step[jj].code[13] & 0xFF);
|
|
|
+ param.put("CAR8", mapData.step[jj].code[14] & 0xFF); /*차량등 8 (2004-LSU15) */
|
|
|
+ param.put("PED8", mapData.step[jj].code[15] & 0xFF); /*보행등 8 (2004-LSU16) */
|
|
|
+ param.put("MIN_TM", mapData.step[jj].code[16] & 0xFF); /*최소시간 */
|
|
|
+ param.put("MAX_TM", mapData.step[jj].code[17] & 0xFF); /*최대시간 */
|
|
|
+ param.put("EOP", mapData.step[jj].code[18] & 0xFF); /*현시종료여부(1:종료) */
|
|
|
+ }
|
|
|
lists.add(param);
|
|
|
}
|
|
|
}
|