Developer Documentation
RAVL, Recognition And Vision Library
USER HOME PAGE CLASS LIST CONTENTS
Ravl - Core - Arrays


  SUBTOPICS

1,2 and 3 Dimensional Arrays

RAVL arrays provide a more flexible and user-friendly substitute for the traditional C-style arrays. RAVL arrays are dynamically-allocated, and are "big" objects - i.e. they are reference-counted (see Reference Counting).

There are two types of array provided in RAVL: regular arrays and simple arrays. If you're not sure which to use, stick with the regular ones.

  • Regular arrays: These have indices that can have any lower and upper bound. The templates are: Array1dC, Array2dC, ..., from which various templated varieties are derived. For faster iterating over arrays, the simple arrays also have some special iterator classes: Array1dIterC, Array1dIter2C, Array2dIterC, ... See under the appropriate array type for more details.
  • Simple arrays: These have an index range from 0 to some positive number. They are somewhat faster than regular arrays when array-bound checking is turned on. The templates are: SArray1dC,SArray2dC, ..., from which various templated varieties are derived. For faster iterating over arrays, the simple arrays also have some special iterator classes: SArray1dIterC, SArray1dIter2C, SArray2dIterC,... See under the appropriate array type for more details.
  • Advanced classes:

     Slice1dIterC Slice iterator.
     Slice1dIter2C Slice iterator.
     Slice1dIter3C Slice iterator.
     Slice1dC Slice through array

    Advanced functions:

     operator <<(ostream &,const Slice1dC &) Write to stream.
     operator >>(istream &,Slice1dC &) Read from stream.
    Documentation by CxxDoc: Tue Aug 13 10:00:48 2002