Location/Table Type Identifier
Posted: Sun Jun 10, 2012 1:51 pm
This might be kept as meta-data or embedded in the table, but I want to post the possible types.
Formats:
2D/3D
Types:
UINT8 (1)
UINT16 (2)
UINT32 (4)
SINT8 (1)
SINT16 (2)
SINT32 (4)
FLOAT (4)
So:
7^2 + 7^3 = 392 types
+ other arbitrary types, such as 1D lookups (7), config, ram vars, etc
If we include 64 bit values it jumps to 1100
If we drop float it falls to 252 just for 2d/3d
If we drop all 32 bit stuff it is a mere 80, and this is all we're likely to use.
Types including 64 bit:
UINT8 (1)
UINT16 (2)
UINT32 (4)
UINT64 (8)
SINT8 (1)
SINT16 (2)
SINT32 (4)
SINT32 (8)
FLOAT (4)
DOUBLE (8)
For a single region, that's less than 4 bits, even if you include BITS 8,16,32,64. If we make the type field 16bit and store it as metadata then we could do:
TYPEXXXXYYYYZZZZ
Or something like that and be completely future-proof. Type would be group, 1d, 2d, 3d, ram-vars, config-structure, etc. Those 6 cover all of our current needs and leave headroom for 10 more.
What have I missed? Thoughts?
Fred.
Formats:
2D/3D
Types:
UINT8 (1)
UINT16 (2)
UINT32 (4)
SINT8 (1)
SINT16 (2)
SINT32 (4)
FLOAT (4)
So:
7^2 + 7^3 = 392 types
+ other arbitrary types, such as 1D lookups (7), config, ram vars, etc
If we include 64 bit values it jumps to 1100
If we drop float it falls to 252 just for 2d/3d
If we drop all 32 bit stuff it is a mere 80, and this is all we're likely to use.
Types including 64 bit:
UINT8 (1)
UINT16 (2)
UINT32 (4)
UINT64 (8)
SINT8 (1)
SINT16 (2)
SINT32 (4)
SINT32 (8)
FLOAT (4)
DOUBLE (8)
For a single region, that's less than 4 bits, even if you include BITS 8,16,32,64. If we make the type field 16bit and store it as metadata then we could do:
TYPEXXXXYYYYZZZZ
Or something like that and be completely future-proof. Type would be group, 1d, 2d, 3d, ram-vars, config-structure, etc. Those 6 cover all of our current needs and leave headroom for 10 more.
What have I missed? Thoughts?
Fred.