Ejemplo n.º 1
0
    protected override void SetBoxMetadata(int box)
    {
        var bdata = GetBoxOffset(box);

        // Set box count
        int count = 0;

        for (int s = 0; s < BoxSlotCount; s++)
        {
            var rel = bdata + (SIZE_STORED * s);
            if (Data[rel] != 0) // Species present
            {
                count++;
            }
        }

        var boxOfs = bdata - ListHeaderSizeBox;

        if (Data[boxOfs] == 0)
        {
            Data[boxOfs]     = 1;
            Data[boxOfs + 1] = (byte)count;
            Data[boxOfs + 4] = StringConverter12.G1TerminatorCode;
            StringConverter12.SetString(Data.AsSpan(boxOfs + 0x10, 4), "1234".AsSpan(), 4, Japanese, StringConverterOption.None);
        }
        else
        {
            Data[boxOfs + 1] = (byte)count;
        }
    }
Ejemplo n.º 2
0
 private int SetString(ReadOnlySpan <char> value, Span <byte> destBuffer, int maxLength, StringConverterOption option = StringConverterOption.None)
 {
     if (Korean)
     {
         return(StringConverter2KOR.SetString(destBuffer, value, maxLength, option));
     }
     return(StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option));
 }
Ejemplo n.º 3
0
 private void SetString(Span <byte> asSpan, ReadOnlySpan <char> value, int maxLength)
 {
     if (Korean)
     {
         StringConverter2KOR.SetString(asSpan, value, maxLength);
     }
     else
     {
         StringConverter12.SetString(asSpan, value, maxLength, Japanese);
     }
 }
Ejemplo n.º 4
0
 public sealed override int SetString(Span <byte> destBuffer, ReadOnlySpan <char> value, int maxLength, StringConverterOption option)
 {
     return(StringConverter12.SetString(destBuffer, value, maxLength, Japanese, option));
 }