There are a few typedefs commonly used in RAVL code. These make
it easier to port code transparently between different platforms
as it allows you to make assumptions about types you can't make
about the standard 'C' types. e.g. In RAVL IntT is guaranteed to
always be at least a 32-bit integer.
It's also worth noting the IndexC
class, this has been introduced to as a work around for the many
problems that can arise from C's rounding and sign conversion
rules. For more details see IndexC's documentation.
Following is a summary of the most commonly used typedefs:
- IntT - A signed integer with at least 32 bit representation.
- UIntT - An unsigned integer with at least 32 bit representation.
- ByteT - An unsigned char of at least 8 bits.
- SByteT - A signed char of at least 8 bits.
- Int16T - An signed integer of exactly 16 bits.
- UInt16T - An unsigned integer of exactly 16 bits.
- RealT - A floating point value of at least 64 bits and that provides fast arithmetic.
- FloatT - A floating point value of at least 32 bits.
- SizeT - An unsigned integer which enough precision to represent the size of the largest array that can be created in a program on the machine.