From a53bdc6abf57279068ac97d57b8e64505792cb73 Mon Sep 17 00:00:00 2001 From: TomTheFurry Date: Thu, 8 Sep 2022 17:41:31 +0800 Subject: [PATCH] Finish the previous merge issue --- .../lod/core/a7/datatype/column/ColumnRenderSource.java | 5 ++--- .../lod/core/a7/datatype/column/accessor/ColumnFormat.java | 5 +++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/com/seibel/lod/core/a7/datatype/column/ColumnRenderSource.java b/core/src/main/java/com/seibel/lod/core/a7/datatype/column/ColumnRenderSource.java index 4905886af..d0700319f 100644 --- a/core/src/main/java/com/seibel/lod/core/a7/datatype/column/ColumnRenderSource.java +++ b/core/src/main/java/com/seibel/lod/core/a7/datatype/column/ColumnRenderSource.java @@ -210,9 +210,8 @@ public class ColumnRenderSource implements LodRenderSource, IColumnDatatype { for (int j = 0; j < verticalSize; j++) { long current = dataContainer[i * verticalSize + j]; - // TODO -// if (ColumnFormat.doesItExist(current)) -// current = ColumnFormat.overrideGenerationMode(current, (byte) 1); + if (ColumnFormat.doesItExist(current)) + current = ColumnFormat.overrideGenerationMode(current, (byte) 1); output.writeLong(Long.reverseBytes(current)); } if (!ColumnFormat.doesItExist(dataContainer[i])) diff --git a/core/src/main/java/com/seibel/lod/core/a7/datatype/column/accessor/ColumnFormat.java b/core/src/main/java/com/seibel/lod/core/a7/datatype/column/accessor/ColumnFormat.java index 0a72242b1..78a55c8f2 100644 --- a/core/src/main/java/com/seibel/lod/core/a7/datatype/column/accessor/ColumnFormat.java +++ b/core/src/main/java/com/seibel/lod/core/a7/datatype/column/accessor/ColumnFormat.java @@ -86,6 +86,7 @@ public class ColumnFormat { public final static long HEIGHT_SHIFTED_MASK = HEIGHT_MASK << HEIGHT_SHIFT; public final static long DEPTH_SHIFTED_MASK = DEPTH_MASK << DEPTH_SHIFT; + public final static long GEN_TYPE_SHIFTED_MASK = GEN_TYPE_MASK << GEN_TYPE_SHIFT; public final static long VOID_SETTER = HEIGHT_SHIFTED_MASK | DEPTH_SHIFTED_MASK; @@ -218,6 +219,10 @@ public class ColumnFormat { return genMode == 0 ? 1 : genMode; } + public static long overrideGenerationMode(long current, byte b) { + return (current & ~GEN_TYPE_SHIFTED_MASK) | ((b & GEN_TYPE_MASK) << GEN_TYPE_SHIFT); + } + public static boolean isVoid(long dataPoint) { return (((dataPoint >>> DEPTH_SHIFT) & HEIGHT_DEPTH_MASK) == 0); }