OCC Main Page | DataExchange | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

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:
Generated on Mon Aug 25 14:40:25 2008 for OpenCASCADE by  doxygen 1.4.1