diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java index 9f716b7..b354511 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCake.java @@ -52,6 +52,18 @@ import org.x4o.fc18.cake2.clk1k.FCDotCLK1KDashW; import org.x4o.fc18.cake2.clk1k.FCDotCLK1KDashX; import org.x4o.fc18.cake2.clk1k.FCDotCLK1KDashY; import org.x4o.fc18.cake2.clk1k.FCDotCLK1KDashZ; +import org.x4o.fc18.cake2.gram5.FCDotAMD0110DashSA; +import org.x4o.fc18.cake2.gram5.FCDotBMW0102DashS2; +import org.x4o.fc18.cake2.gram5.FCDotDNA0104DashS4; +import org.x4o.fc18.cake2.gram5.FCDotIBM1616DashH8; +import org.x4o.fc18.cake2.gram5.FCDotNEC0105DashS5; +import org.x4o.fc18.cake2.gram5.FCDotNXP0103DashS3; +import org.x4o.fc18.cake2.gram5.FCDotOCE0801DashH3; +import org.x4o.fc18.cake2.gram5.FCDotOCE0808DashH6; +import org.x4o.fc18.cake2.gram5.FCDotOCE0864DashH9; +import org.x4o.fc18.cake2.gram5.FCDotSCO0106DashS6; +import org.x4o.fc18.cake2.gram5.FCDotUWU0101DashS1; +import org.x4o.fc18.cake2.gram5.FCDotW3C0107DashS7; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash01; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash02; import org.x4o.fc18.cake2.pie9c.FCDotPIE9CDash03; @@ -106,22 +118,14 @@ import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash24; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash25; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash26; import org.x4o.fc18.cake2.pie9d.FCDotPIE9DDash27; -import org.x4o.fc18.cake2.zero33.FCDotAMD0110DashSA; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7A; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7B; import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7C; -import org.x4o.fc18.cake2.zero33.FCDotBMW0102DashS2; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7D; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7E; import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7F; import org.x4o.fc18.cake2.zero33.FCDotCDC1604DashP6; import org.x4o.fc18.cake2.zero33.FCDotDEC0127DashPX0; -import org.x4o.fc18.cake2.zero33.FCDotDNA0104DashS4; -import org.x4o.fc18.cake2.zero33.FCDotIBM1616DashH8; -import org.x4o.fc18.cake2.zero33.FCDotNXP0103DashS3; -import org.x4o.fc18.cake2.zero33.FCDotOCE0801DashH3; -import org.x4o.fc18.cake2.zero33.FCDotOCE0808DashH6; -import org.x4o.fc18.cake2.zero33.FCDotOCE0864DashH9; /// The dot cake index of four corner 18 bit words in cake slices which holds the cake points. /// @@ -224,13 +228,13 @@ public enum FourCornerDotCake { FC_IBM1616_H8(1024, 256, FCDotIBM1616DashH8.values(), "Interim Byte Mode, custom HEX codes"), FC_NES0127_9C(1280, 27, "Nigerian Extra Smile"), FC_ESC0109_S9(1307, 9, "Eccentric Symbol Code"), - FC_SCO0106_S6(1316, 6, "Six Character Object"), + FC_SCO0106_S6(1316, 6, FCDotSCO0106DashS6.values(), "Six Character Object"), FC_NXP0103_S3(1322, 3, FCDotNXP0103DashS3.values(), "Natural X-state Phasing, for high impedance (Hi-Z) signals"), - FC_NEC0105_S5(1325, 5, "New Endian Compass"), - FC_W3C0107_S7(1330, 7, "Water 3th Color"), + FC_NEC0105_S5(1325, 5, FCDotNEC0105DashS5.values(), "New Endian Compass"), + FC_W3C0107_S7(1330, 7, FCDotW3C0107DashS7.values(), "Water 3th Color"), /// See: https://www.ibm.com/docs/en/db2/11.5?topic=uce-code-page-coded-character-set-identifier-ccsid-numbers-unicode-graphic-data // TODO: check if ?? Remove CDC white space and newline !!! - FC_UWU0101_S1(1337, 1, "Universal White Unidad, inner space indicator"), + FC_UWU0101_S1(1337, 1, FCDotUWU0101DashS1.values(), "Universal White Unidad, word spacer indicator"), FC_DNA0104_S4(1338, 4, FCDotDNA0104DashS4.values(), "Direct Nuclear Air strike, of quadratonic values"), /// Reserved for future data grams use @@ -424,24 +428,24 @@ public enum FourCornerDotCake { public FourCornerDotCakeTower tower() { int idx = ordinal(); if (idx <= __MIND_THE_GAP8.ordinal()) { - return FourCornerDotCakeTower.GLYPHS_BIT6; + return FourCornerDotCakeTower.PIE_BYTE; } if (idx <= FC_PIE9C_27.ordinal()) { - return FourCornerDotCakeTower.GLYPHS_PIE9C_NX; + return FourCornerDotCakeTower.PIE_UP; } if (idx <= FC_PIE9D_27.ordinal()) { - return FourCornerDotCakeTower.GLYPHS_PIE9D_NY; + return FourCornerDotCakeTower.PIE_DOWN; } if (idx <= FC_OCE0864_H9.ordinal()) { - return FourCornerDotCakeTower.GLYPHS_GRAMS; + return FourCornerDotCakeTower.TXT_GRAMS; } if (idx <= FC_EXTRA_1100.ordinal()) { - return FourCornerDotCakeTower.WORDS_HUMAN; + return FourCornerDotCakeTower.TXT_INDEX; } if (idx <= FC_CLK1K_AMP.ordinal()) { - return FourCornerDotCakeTower.WORDS_CODE; + return FourCornerDotCakeTower.TXT_KODES; } - return FourCornerDotCakeTower.EMBED; + return FourCornerDotCakeTower.TXT_EMBEDS; } public String nameSpec() { diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCakeTower.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCakeTower.java index 243f821..f69c5c2 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCakeTower.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotCakeTower.java @@ -30,13 +30,13 @@ import java.util.Objects; /// @version 1.0 Jan 19, 2025 public enum FourCornerDotCakeTower { - GLYPHS_BIT6("Symbols for 6 bit systems"), - GLYPHS_PIE9C_NX("Pie9C cake symbols"), - GLYPHS_PIE9D_NY("Pie9D cake symbols"), - GLYPHS_GRAMS("Local numeric value system"), - WORDS_HUMAN("Normal words"), - WORDS_CODE("Special words"), - EMBED("Embedded data objects"), + PIE_BYTE("Symbols for 6 and 8 bit systems"), + PIE_UP("Symbols of the Pie9C cake"), + PIE_DOWN("Symbols of the Pie9D cake"), + TXT_GRAMS("Numeric value words"), + TXT_INDEX("Normal text words"), + TXT_KODES("Special koder words"), + TXT_EMBEDS("Embedded data words"), ; private final String nameNice; diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleZero33Gram.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleGram5.java similarity index 94% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleZero33Gram.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleGram5.java index ef6e950..1d0f793 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleZero33Gram.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/FourCornerDotColleGram5.java @@ -28,7 +28,7 @@ import java.util.List; /// /// @author Willem Cazander /// @version 1.0 Jan 19, 2025 -public interface FourCornerDotColleZero33Gram extends FourCornerX18CakePointDotIndex { +public interface FourCornerDotColleGram5 extends FourCornerX18CakePointDotIndex { @Override default List cakePointSequence() { diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotAMD0110DashSA.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotAMD0110DashSA.java similarity index 92% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotAMD0110DashSA.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotAMD0110DashSA.java index 3de2eaf..25f3c3a 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotAMD0110DashSA.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotAMD0110DashSA.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.AMD0110-SA" Four Corner Application Methodoums Decimals @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 31, 2024 */ -public enum FCDotAMD0110DashSA implements FourCornerDotColleZero33Gram { +public enum FCDotAMD0110DashSA implements FourCornerDotColleGram5 { /// End-user defined rendering for zero T010_NXX_001, /// End-user defined rendering for one diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotBMW0102DashS2.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotBMW0102DashS2.java similarity index 91% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotBMW0102DashS2.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotBMW0102DashS2.java index 704d865..933ea1d 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotBMW0102DashS2.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotBMW0102DashS2.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.BMW0102-S2" Four Corner Binary Model Word encoding. @@ -31,7 +31,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 31, 2024 */ -public enum FCDotBMW0102DashS2 implements FourCornerDotColleZero33Gram { +public enum FCDotBMW0102DashS2 implements FourCornerDotColleGram5 { T002_NXX_001, T002_NXX_002, ; diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotDNA0104DashS4.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotDNA0104DashS4.java similarity index 91% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotDNA0104DashS4.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotDNA0104DashS4.java index bab6f3f..1970641 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotDNA0104DashS4.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotDNA0104DashS4.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.DNA0104-S4" Four Corner Application Direct Nuclear Air strike for quadratonic values. @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Jan 07, 2024 */ -public enum FCDotDNA0104DashS4 implements FourCornerDotColleZero33Gram { +public enum FCDotDNA0104DashS4 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotIBM1616DashH8.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotIBM1616DashH8.java similarity index 96% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotIBM1616DashH8.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotIBM1616DashH8.java index d57727d..0826e94 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotIBM1616DashH8.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotIBM1616DashH8.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.IBM1616-H8" Four Corner Interim Byte Mode, embed raw 8 bit Data @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 30, 2024 */ -public enum FCDotIBM1616DashH8 implements FourCornerDotColleZero33Gram { +public enum FCDotIBM1616DashH8 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNEC0105DashS5.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNEC0105DashS5.java new file mode 100644 index 0000000..0e87c37 --- /dev/null +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNEC0105DashS5.java @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2004-2014, Willem Cazander + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.x4o.fc18.cake2.gram5; + +import org.x4o.fc18.cake2.FourCornerDotCake; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; + +/** + * "FC.NEC0105-S5" Four Corner New Endian Compass. + * + * + * @author Willem Cazander + * @version 1.0 Jan 20, 2025 + */ +public enum FCDotNEC0105DashS5 implements FourCornerDotColleGram5 { + NXX_001, + NXX_002, + NXX_003, + NXX_004, + NXX_005, + ; + + @Override + public int cakePointDotIndex() { + return FourCornerDotCake.FC_NEC0105_S5.getStart() + ordinal(); + } +} diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotNXP0103DashS3.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNXP0103DashS3.java similarity index 89% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotNXP0103DashS3.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNXP0103DashS3.java index 3695a7e..c8c5a60 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotNXP0103DashS3.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotNXP0103DashS3.java @@ -20,19 +20,19 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.NXP0103-S3" Four Corner Application Natural X-state Phasing for tri-state or high impedance (Hi-Z) signals. * * * @author Willem Cazander - * @version 1.0 Jan 07, 2024 + * @version 1.0 Jan 07, 2025 */ -public enum FCDotNXP0103DashS3 implements FourCornerDotColleZero33Gram { +public enum FCDotNXP0103DashS3 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0801DashH3.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0801DashH3.java similarity index 91% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0801DashH3.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0801DashH3.java index 1724447..320ebd2 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0801DashH3.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0801DashH3.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.OCE0801-H3" Four Corner Octal Character Encoding in Hinari 3 bit. @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 30, 2024 */ -public enum FCDotOCE0801DashH3 implements FourCornerDotColleZero33Gram { +public enum FCDotOCE0801DashH3 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0808DashH6.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0808DashH6.java similarity index 93% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0808DashH6.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0808DashH6.java index dd29f95..57a85b2 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0808DashH6.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0808DashH6.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.OCE0808-H6" Four Corner Octal Character Encoding in Hinari 6 bit. @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 30, 2024 */ -public enum FCDotOCE0808DashH6 implements FourCornerDotColleZero33Gram { +public enum FCDotOCE0808DashH6 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0864DashH9.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0864DashH9.java similarity index 97% rename from nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0864DashH9.java rename to nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0864DashH9.java index 97c8fde..7449afe 100644 --- a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/zero33/FCDotOCE0864DashH9.java +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotOCE0864DashH9.java @@ -20,10 +20,10 @@ * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package org.x4o.fc18.cake2.zero33; +package org.x4o.fc18.cake2.gram5; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; /** * "FC.OCE0864-H9" Four Corner Octal Character Encoding in Hinari 9 bit. @@ -32,7 +32,7 @@ import org.x4o.fc18.cake2.FourCornerDotColleZero33Gram; * @author Willem Cazander * @version 1.0 Dec 30, 2024 */ -public enum FCDotOCE0864DashH9 implements FourCornerDotColleZero33Gram { +public enum FCDotOCE0864DashH9 implements FourCornerDotColleGram5 { NXX_001, NXX_002, NXX_003, diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotSCO0106DashS6.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotSCO0106DashS6.java new file mode 100644 index 0000000..f0b4a5d --- /dev/null +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotSCO0106DashS6.java @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2004-2014, Willem Cazander + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.x4o.fc18.cake2.gram5; + +import org.x4o.fc18.cake2.FourCornerDotCake; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; + +/** + * "FC.SCO0101-S1" Four Corner Six Character Object. + * + * + * @author Willem Cazander + * @version 1.0 Jan 20, 2025 + */ +public enum FCDotSCO0106DashS6 implements FourCornerDotColleGram5 { + NXX_001, + NXX_002, + NXX_003, + NXX_004, + NXX_005, + NXX_006, + ; + + @Override + public int cakePointDotIndex() { + return FourCornerDotCake.FC_SCO0106_S6.getStart() + ordinal(); + } +} diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotUWU0101DashS1.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotUWU0101DashS1.java new file mode 100644 index 0000000..863427b --- /dev/null +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotUWU0101DashS1.java @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2004-2014, Willem Cazander + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.x4o.fc18.cake2.gram5; + +import org.x4o.fc18.cake2.FourCornerDotCake; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; + +/** + * "FC.UWU0101-S1" Four Corner Universal White Unidad. + * + * + * @author Willem Cazander + * @version 1.0 Jan 20, 2025 + */ +public enum FCDotUWU0101DashS1 implements FourCornerDotColleGram5 { + WORD_SPACE, + ; + + @Override + public int cakePointDotIndex() { + return FourCornerDotCake.FC_UWU0101_S1.getStart() + ordinal(); + } +} diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotW3C0107DashS7.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotW3C0107DashS7.java new file mode 100644 index 0000000..38c5834 --- /dev/null +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/FCDotW3C0107DashS7.java @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2004-2014, Willem Cazander + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package org.x4o.fc18.cake2.gram5; + +import org.x4o.fc18.cake2.FourCornerDotCake; +import org.x4o.fc18.cake2.FourCornerDotColleGram5; + +/** + * "FC.W3C0107-S7" Four Corner Water 3th Color. + * + * + * @author Willem Cazander + * @version 1.0 Jan 20, 2025 + */ +public enum FCDotW3C0107DashS7 implements FourCornerDotColleGram5 { + NXX_001, + NXX_002, + NXX_003, + NXX_004, + NXX_005, + NXX_006, + NXX_007, + ; + + @Override + public int cakePointDotIndex() { + return FourCornerDotCake.FC_W3C0107_S7.getStart() + ordinal(); + } +} diff --git a/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/package-info.java b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/package-info.java new file mode 100644 index 0000000..d62d759 --- /dev/null +++ b/nx01-x4o-fc18/src/main/java/org/x4o/fc18/cake2/gram5/package-info.java @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2004-2014, Willem Cazander + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, are permitted provided + * that the following conditions are met: + * + * * Redistributions of source code must retain the above copyright notice, this list of conditions and the + * following disclaimer. + * * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and + * the following disclaimer in the documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL + * THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT + * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR + * TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** + * Data grams enum for user defined rendering of data numbers. + * + * + * @since 1.0 + */ +package org.x4o.fc18.cake2.gram5; diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java index 2cf6430..cbe377c 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocSegmentWriterCakeSlice.java @@ -24,15 +24,8 @@ package org.x4o.fc18.cake2.fcdoc; import java.io.IOException; import java.util.List; -import java.util.function.Function; import org.x4o.fc18.cake2.FourCornerDotCake; -import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7A; -import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7B; -import org.x4o.fc18.cake2.zero33.FCDotAPL0127DashP7C; -import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7D; -import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7E; -import org.x4o.fc18.cake2.zero33.FCDotBYD0127DashP7F; import org.x4o.o2o.io.sax3.ContentCloseable; import org.x4o.o2o.tdoc.ApiDocContentCss; import org.x4o.o2o.tdoc.ApiDocContentWriter; @@ -86,58 +79,5 @@ public class FCDocSegmentWriterCakeSlice implements FCDocSegmentWriter { writer.docTableRow("External word", Boolean.toString(slice.isExternWord())); } writeDefaultSummary(event); -// } -// -// @ApiDocNodeWriterMethod(nodeBody=ApiDocNodeBody.SUMMARY, targetClasses={FourCornerDotCake.class}, nodeBodyOrders=10) -// public void writeMuffinSummary(ApiDocWriteEvent event) throws IOException { -// ApiDocContentWriter writer = event.getWriter(); -// FourCornerDotCake slice = (FourCornerDotCake)event.getEventObject().getUserData(); - if (slice.getStart() >= FourCornerDotCake.__MIND_THE_GAP8.getStart()) { - return; - } - if (FourCornerDotCake.FC_DEC0127_PX0.equals(slice)) { - return; - } - if (FourCornerDotCake.FC_APL0127_P7A.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotAPL0127DashP7A.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_APL0127_P7B.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotAPL0127DashP7B.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_APL0127_P7C.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotAPL0127DashP7C.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_BYD0127_P7D.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotBYD0127DashP7D.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_BYD0127_P7E.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotBYD0127DashP7E.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_BYD0127_P7F.equals(slice)) { - writeP7xSlice(writer, slice, v -> FCDotBYD0127DashP7F.valueOf(v).codePointDotIndex()); - return; - } - if (FourCornerDotCake.FC_CDC1604_P6.equals(slice)) { - try (ContentCloseable table = writer.docTable("Cake Points", null, ApiDocContentCss.overviewSummary)) { - writeTableBoxHeaderNumeric(writer, 17); - writeCDC(writer, 0x00); - writeCDC(writer, 0x10); - writeCDC(writer, 0x20); - writeCDC(writer, 0x30); - } - return; - } - } - - private void writeP7xSlice(ApiDocContentWriter writer, FourCornerDotCake slice, Function conv) throws IOException { - try (ContentCloseable table = writer.docTable("Cake Points", null, ApiDocContentCss.overviewSummary)) { - writeTableBoxHeaderNumeric(writer, 28, true); - writeP7x(writer, slice, conv); - } } } diff --git a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocWriter.java b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocWriter.java index a4af205..874932c 100644 --- a/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocWriter.java +++ b/nx01-x4o-fc18/src/test/java/org/x4o/fc18/cake2/fcdoc/FCDocWriter.java @@ -27,9 +27,12 @@ import java.io.IOException; import java.util.Arrays; import java.util.Iterator; import java.util.List; +import java.util.Optional; import org.x4o.fc18.cake2.FourCornerDotCake; import org.x4o.fc18.cake2.FourCornerDotCakeTower; +import org.x4o.fc18.cake2.FourCornerX00PetitVide; +import org.x4o.fc18.cake2.FourCornerX21CodePointSequence; import org.x4o.o2o.tdoc.ApiDocGenerator; import org.x4o.o2o.tdoc.DefaultPageWriterHelp; import org.x4o.o2o.tdoc.DefaultPageWriterTree; @@ -181,7 +184,19 @@ public class FCDocWriter { private ApiDocNode createNodeCakeWord(FourCornerDotCake dotCake, int offset) { int cakePoint = dotCake.getStart() + offset; - String name = String.format("%s.0x%06X", dotCake.name(), cakePoint); - return new ApiDocNode(new TDocCakeWord(dotCake, offset), name, name, name); + String idStr = String.format("0x%06X", cakePoint); + String name = String.format("%s.%s", dotCake.name(), idStr); + String desc = name; + FourCornerX00PetitVide[] videPoints = dotCake.getVidePoints(); + if (videPoints.length != 0) { + FourCornerX00PetitVide videPoint = videPoints[offset]; + Optional x21CodeDisplay = videPoint.kaasX21CodeSequence(); + if (x21CodeDisplay.isPresent()) { + StringBuilder buf = new StringBuilder(); + x21CodeDisplay.get().codePointSequence().forEach(v -> buf.appendCodePoint(v)); + desc = buf.toString(); + } + } + return new ApiDocNode(new TDocCakeWord(dotCake, offset), idStr, name, desc); } }