I currently working on some float related code an saw that the standard float environments figure and table define (beside others) the macros \def\ftype@figure{1} and \def\ftype@table{2}.
The LaTeX source documentation source2e "describes" these macros as:
\ftype@TYPE : The type number for floats of type TYPE.
which is not that meaningful.
The only place these macros are used seem to be in \@xfloat which is used by the standard floats. There is defines the value of a count register (Pseudo code from source2e documentation):
\count\@currbox :=G 32*\ftype@TYPE + bits determined by PLACEMENT
I figured that it has something to do with the float placement and/or boxing process.
I looked into some float related packages like float and caption and learned that each new float type requires a number which is a power of 2, i.e. the next float would need to be 4, then 8 etc. This makes \count\@currbox look like a bitmap to me. However, I have difficulties to understand it further.
What is the the exact reason and usage of \ftype@<TYPE> and \count\@currbox?
If I define my own floats is it OK if I exponentially increase it for every new float type?
latextag, but normal LaTeX questions aren't about the real internals of LaTeX, so the ones which are are special and thereforelatex-coremight actually make sense. – Martin Scharrer Oct 22 '11 at 15:34