Open CASCADE Technology
7.2.0
|
#include <NCollection_Array1.hxx>
Data Structures | |
class | Iterator |
Implementation of the Iterator interface. More... | |
Public Types | |
typedef TheItemType | value_type |
STL-compliant typedef for value type. More... | |
typedef NCollection_StlIterator< std::random_access_iterator_tag, Iterator, TheItemType, false > | iterator |
Shorthand for a regular iterator type. More... | |
typedef NCollection_StlIterator< std::random_access_iterator_tag, Iterator, TheItemType, true > | const_iterator |
Shorthand for a constant iterator type. More... | |
Public Member Functions | |
iterator | begin () const |
Returns an iterator pointing to the first element in the array. More... | |
iterator | end () const |
Returns an iterator referring to the past-the-end element in the array. More... | |
const_iterator | cbegin () const |
Returns a const iterator pointing to the first element in the array. More... | |
const_iterator | cend () const |
Returns a const iterator referring to the past-the-end element in the array. More... | |
NCollection_Array1 () | |
Empty constructor; should be used with caution. More... | |
NCollection_Array1 (const Standard_Integer theLower, const Standard_Integer theUpper) | |
Constructor. More... | |
NCollection_Array1 (const NCollection_Array1 &theOther) | |
Copy constructor. More... | |
NCollection_Array1 (NCollection_Array1 &&theOther) | |
Move constructor. More... | |
NCollection_Array1 (const TheItemType &theBegin, const Standard_Integer theLower, const Standard_Integer theUpper) | |
C array-based constructor. More... | |
void | Init (const TheItemType &theValue) |
Initialise the items with theValue. More... | |
Standard_Integer | Size (void) const |
Size query. More... | |
Standard_Integer | Length (void) const |
Length query (the same) More... | |
Standard_Boolean | IsEmpty () const |
Return TRUE if array has zero length. More... | |
Standard_Integer | Lower (void) const |
Lower bound. More... | |
Standard_Integer | Upper (void) const |
Upper bound. More... | |
Standard_Boolean | IsDeletable (void) const |
myDeletable flag More... | |
Standard_Boolean | IsAllocated (void) const |
IsAllocated flag - for naming compatibility. More... | |
NCollection_Array1 & | Assign (const NCollection_Array1 &theOther) |
Assignment. More... | |
NCollection_Array1 & | Move (NCollection_Array1 &&theOther) |
Move assignment. More... | |
NCollection_Array1 & | operator= (const NCollection_Array1 &theOther) |
Assignment operator. More... | |
NCollection_Array1 & | operator= (NCollection_Array1 &&theOther) |
Move assignment operator. More... | |
const TheItemType & | First () const |
TheItemType & | ChangeFirst () |
const TheItemType & | Last () const |
TheItemType & | ChangeLast () |
const TheItemType & | Value (const Standard_Integer theIndex) const |
Constant value access. More... | |
const TheItemType & | operator() (const Standard_Integer theIndex) const |
operator() - alias to Value More... | |
TheItemType & | ChangeValue (const Standard_Integer theIndex) |
Variable value access. More... | |
TheItemType & | operator() (const Standard_Integer theIndex) |
operator() - alias to ChangeValue More... | |
void | SetValue (const Standard_Integer theIndex, const TheItemType &theItem) |
Set value. More... | |
void | Resize (const Standard_Integer theLower, const Standard_Integer theUpper, const Standard_Boolean theToCopyData) |
Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE. More... | |
~NCollection_Array1 (void) | |
Destructor - releases the memory. More... | |
Protected Attributes | |
Standard_Integer | myLowerBound |
Standard_Integer | myUpperBound |
Standard_Boolean | myDeletable |
Flag showing who allocated the array. More... | |
TheItemType * | myData |
Pointer to '0'th array item. More... | |
Purpose: The class Array1 represents unidimensional arrays of fixed size known at run time. The range of the index is user defined. An array1 can be constructed with a "C array". This functionality is useful to call methods expecting an Array1. It allows to carry the bounds inside the arrays.
Examples: Item tab[100]; // An example with a C array Array1OfItem ttab (tab[0],1,100);
Array1OfItem tttab (ttab(10),10,20); // a slice of ttab
If you want to reindex an array from 1 to Length do :
Array1 tab1(tab(tab.Lower()),1,tab.Length());
Warning: Programs client of such a class must be independant of the range of the first element. Then, a C++ for loop must be written like this
for (i = A.Lower(); i <= A.Upper(); i++)
Changes: In comparison to TCollection the flag isAllocated was renamed into myDeletable (alike in the Array2). For naming compatibility the method IsAllocated remained in class along with IsDeletable.
typedef NCollection_StlIterator<std::random_access_iterator_tag, Iterator, TheItemType, true> NCollection_Array1< TheItemType >::const_iterator |
Shorthand for a constant iterator type.
typedef NCollection_StlIterator<std::random_access_iterator_tag, Iterator, TheItemType, false> NCollection_Array1< TheItemType >::iterator |
Shorthand for a regular iterator type.
typedef TheItemType NCollection_Array1< TheItemType >::value_type |
STL-compliant typedef for value type.
|
inline |
Empty constructor; should be used with caution.
|
inline |
Constructor.
|
inline |
Copy constructor.
|
inline |
Move constructor.
|
inline |
C array-based constructor.
|
inline |
Destructor - releases the memory.
|
inline |
Assignment.
|
inline |
Returns an iterator pointing to the first element in the array.
|
inline |
Returns a const iterator pointing to the first element in the array.
|
inline |
Returns a const iterator referring to the past-the-end element in the array.
|
inline |
|
inline |
|
inline |
Variable value access.
|
inline |
Returns an iterator referring to the past-the-end element in the array.
|
inline |
|
inline |
Initialise the items with theValue.
|
inline |
IsAllocated flag - for naming compatibility.
|
inline |
myDeletable flag
|
inline |
Return TRUE if array has zero length.
|
inline |
|
inline |
Length query (the same)
|
inline |
Lower bound.
|
inline |
Move assignment.
|
inline |
operator() - alias to Value
|
inline |
operator() - alias to ChangeValue
|
inline |
Assignment operator.
|
inline |
Move assignment operator.
|
inline |
Resizes the array to specified bounds. No re-allocation will be done if length of array does not change, but existing values will not be discarded if theToCopyData set to FALSE.
theLower | new lower bound of array |
theUpper | new upper bound of array |
theToCopyData | flag to copy existing data into new array |
|
inline |
Set value.
|
inline |
Size query.
|
inline |
Upper bound.
|
inline |
Constant value access.
|
protected |
Pointer to '0'th array item.
|
protected |
Flag showing who allocated the array.
|
protected |
|
protected |