# DataExchange
TKIGES
IGESData

# IGESData_ParamCursor Class Reference

Auxiliary class for ParamReader.
It stores commands for a ParamReader to manage the current
parameter number. Used by methods Read... from ParamReader.
It allows to define the following commands :
- read a parameter specified by a precise Number (basic case)
- read a parameter then set Current Number to follow its number
- read the current parameter (with Current Number) then
advance Current Number by one
- idem with several : read "nb" parameters from one specified,
included, with or without setting Current Number to follow
last parameter read
- read several parameter from the current one, then advance
Current Number to follow the last one read
- Read several parameters (as above) but in interlaced lists,
i.e. from complex items (each one including successively for
instance, an Integer, a Real, an Entity ...)
If commands to advance Current Number are not set, it must be
set by the user (with method SetCurrent from ParamReader)
ParamReader offers methods which create most useful cases
.

`#include <IGESData_ParamCursor.hxx>`

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT | IGESData_ParamCursor (const Standard_Integer num)
| Creates a Cursor to read a precise parameter of ParamReader, identified by its number, then set Current Number to "num + 1" (this constructor allows to simply give a Number to a method Read... from ParamReader, which will be translated into a ParamCursor by compiler) .
Standard_EXPORT | IGESData_ParamCursor (const Standard_Integer num, const Standard_Integer nb, const Standard_Integer size=1)

Creates a Cursor to read a list of parameters (count "nb")
starting from a precise one (number "num") included, then
set Current Number of ParamNumber to the first following one
("num + nb")
If size is given, it means that each parameter is made of more
than one term. One term is the normal (default) case : for
instance, a Parameter comprises one Integer, or one Entity ...
Size gives the complete size of each Item if it is complex.
To be used ONLY IF it is constant
.

Standard_EXPORT void | SetTerm (const Standard_Integer size, const Standard_Boolean autoadv=Standard_True)

Defines the size of a term to read in the item : this commands
ParamReader to read "size" parameters for each item, then
skip the remainder of the item to the same term of next Item
(that is, skip "item size" - "term size")
In addition, Offset from beginning of Item is managed :
After being created, and for the frist call to SetTerm, the
part of Item to be read begins exactly as the Item begins
But after a SetTerm, the next read will add an offset which is
the size of former term.
autoadv commands Advance management. If it is True (default),
the last SetTerm (Item size has been covered) calls SetAdvance
If it is False, SetAdvance must be called directly if necessary
Error if a SetTerm overpasses the size of the Item
.

Standard_EXPORT void | SetOne (const Standard_Boolean autoadv=Standard_True)
| Defines a term of one Parameter (very current case) .
Standard_EXPORT void | SetXY (const Standard_Boolean autoadv=Standard_True)
| Defines a term of two Parameters for a XY (current case) .
Standard_EXPORT void | SetXYZ (const Standard_Boolean autoadv=Standard_True)
| Defines a term of three Parameters for XYZ (current case) .
Standard_EXPORT void | SetAdvance (const Standard_Boolean advance)
| Changes command to advance current cursor after reading parameters. If "advance" True, sets advance, if "False", resets it. ParamCursor is created by default with True. .
Standard_Integer | Start () const
| Returns (included) starting number for reading parameters .
Standard_Integer | Limit () const
| Returns (excluded) upper limit number for reading parameters .
Standard_Integer | Count () const
| Returns required count of items to be read .
Standard_Integer | ItemSize () const
| Returns length of item (count of parameters per item) .
Standard_Integer | TermSize () const
| Returns length of current term (count of parameters) in item .
Standard_Integer | Offset () const
| Returns offset from which current term must be read in item .
Standard_Boolean | Advance () const
| Returns True if Advance command has been set .

## Private Attributes

Standard_Integer | thestart
Standard_Integer | thelimit
Standard_Integer | thecount
Standard_Integer | theisize
Standard_Integer | theoffst
Standard_Integer | thetsize
Standard_Boolean | theadv

## Constructor & Destructor Documentation

Standard_EXPORT IGESData_ParamCursor::IGESData_ParamCursor | ( | const Standard_Integer | num | ) |

Standard_EXPORT IGESData_ParamCursor::IGESData_ParamCursor | ( | const Standard_Integer | num,
|  | const Standard_Integer | nb,
|  | const Standard_Integer | size = `1`
| ) |

## Member Function Documentation

Standard_Boolean IGESData_ParamCursor::Advance | ( |  | ) | const`[inline]`

Standard_Integer IGESData_ParamCursor::Count | ( |  | ) | const`[inline]`

Standard_Integer IGESData_ParamCursor::ItemSize | ( |  | ) | const`[inline]`

Standard_Integer IGESData_ParamCursor::Limit | ( |  | ) | const`[inline]`

Standard_Integer IGESData_ParamCursor::Offset | ( |  | ) | const`[inline]`

void IGESData_ParamCursor::operator delete | ( | void * | anAddress | ) | `[inline]`

void* IGESData_ParamCursor::operator new | ( | size_t | size | ) | `[inline]`

void* IGESData_ParamCursor::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

Standard_EXPORT void IGESData_ParamCursor::SetAdvance | ( | const Standard_Boolean | advance | ) |

Standard_EXPORT void IGESData_ParamCursor::SetOne | ( | const Standard_Boolean | autoadv = `Standard_True` | ) |

Standard_EXPORT void IGESData_ParamCursor::SetTerm | ( | const Standard_Integer | size,
|  | const Standard_Boolean | autoadv = `Standard_True`
| ) |

Standard_EXPORT void IGESData_ParamCursor::SetXY | ( | const Standard_Boolean | autoadv = `Standard_True` | ) |

Standard_EXPORT void IGESData_ParamCursor::SetXYZ | ( | const Standard_Boolean | autoadv = `Standard_True` | ) |

Standard_Integer IGESData_ParamCursor::Start | ( |  | ) | const`[inline]`

Standard_Integer IGESData_ParamCursor::TermSize | ( |  | ) | const`[inline]`

## Field Documentation

Standard_Boolean IGESData_ParamCursor::theadv `[private]`

Standard_Integer IGESData_ParamCursor::thecount `[private]`

Standard_Integer IGESData_ParamCursor::theisize `[private]`

Standard_Integer IGESData_ParamCursor::thelimit `[private]`

Standard_Integer IGESData_ParamCursor::theoffst `[private]`

Standard_Integer IGESData_ParamCursor::thestart `[private]`

Standard_Integer IGESData_ParamCursor::thetsize `[private]`

The documentation for this class was generated from the following files:

- IGESData_ParamCursor.hxx
- IGESData_ParamCursor.lxx