Pre-processor changes for array types
Array types require additional modification of the pre-processor.
For a vector type, for example, we would define in the
macros file the following:
#define REALVEC(A) ARRAY(REAL,A) |
Similarly, for a
BUFFERVEC type, representing a vector of
BUFFER's we would define in the
macros file
#define BUFFERVEC(A) ARRAY(BUFFER,A) |
This type does nopt currently exist in TONTO.
Array types also require a modification of the foo.perl
script. You should tell the script what type of component each array holds. For
example, a REALVEC type hold an array where each element is a
REAL number
%component_type = ( # Components of the vector types
'REALVEC' => 'REAL', |
If a
BUFFERVEC types was defined, you would insert at the end
of the list in the
foo.perl script
%component_type = ( # Components of the vector types
'BUFFERVEC' => 'BUFFER', |
For an array type, you must also tell the foo.perl
script how to convert assumed size arrays in type declarations. For example, for
a REALVEC type the following substitution must be effected
%subst = ( # Substitutions .................
:
'REALVEC ' => 'REALVEC(:) ',
: |
If a
BUFFERVEC types was defined, you would insert at the end
of the list in the
foo.perl script
'BUFFERVEC ' => 'BUFFERVEC(:) ', |