# FoundationClasses
TKernel
TColStd

# TColStd_PackedMapOfInteger Class Reference

`#include <TColStd_PackedMapOfInteger.hxx>`

Inheritance diagram for TColStd_PackedMapOfInteger:

[legend]

## Public Member Functions

void * | operator new (size_t size)
void | operator delete (void *anAddress)
| TColStd_PackedMapOfInteger (const Standard_Integer NbBuckets=1)
| Constructor.
TColStd_PackedMapOfInteger & | operator= (const TColStd_PackedMapOfInteger &Other)
Standard_EXPORT TColStd_PackedMapOfInteger & | Assign (const TColStd_PackedMapOfInteger &)
Standard_EXPORT void | ReSize (const Standard_Integer NbBuckets)
Standard_EXPORT void | Clear ()
| ~TColStd_PackedMapOfInteger ()
Standard_EXPORT Standard_Boolean | Add (const Standard_Integer aKey)
Standard_EXPORT Standard_Boolean | Contains (const Standard_Integer aKey) const
Standard_EXPORT Standard_Boolean | Remove (const Standard_Integer aKey)
Standard_Integer | NbBuckets () const
| Returns the number of buckets in <me>. .
Standard_Integer | Extent () const
| Returns the number of keys already stored in <me>. .
Standard_Integer | IsEmpty () const
| Returns True when the map contains no keys. This is exactly Extent() == 0. .
void | Statistics (Standard_OStream &outStream) const
| Prints on <s> usefull statistics about the map <me>. It can be used to test the quality of the hashcoding. .
Standard_EXPORT Standard_Integer | GetMinimalMapped () const
Standard_EXPORT Standard_Integer | GetMaximalMapped () const
Boolean operations with maps as sets of integers
Standard_EXPORT void | Union (const TColStd_PackedMapOfInteger &, const TColStd_PackedMapOfInteger &)
Standard_EXPORT Standard_Boolean | Unite (const TColStd_PackedMapOfInteger &)
TColStd_PackedMapOfInteger & | operator|= (const TColStd_PackedMapOfInteger &MM)
Standard_EXPORT void | Intersection (const TColStd_PackedMapOfInteger &, const TColStd_PackedMapOfInteger &)
Standard_EXPORT Standard_Boolean | Intersect (const TColStd_PackedMapOfInteger &)
TColStd_PackedMapOfInteger & | operator &= (const TColStd_PackedMapOfInteger &MM)
Standard_EXPORT void | Subtraction (const TColStd_PackedMapOfInteger &, const TColStd_PackedMapOfInteger &)
Standard_EXPORT Standard_Boolean | Subtract (const TColStd_PackedMapOfInteger &)
TColStd_PackedMapOfInteger & | operator-= (const TColStd_PackedMapOfInteger &MM)
Standard_EXPORT void | Difference (const TColStd_PackedMapOfInteger &, const TColStd_PackedMapOfInteger &)
Standard_EXPORT Standard_Boolean | Differ (const TColStd_PackedMapOfInteger &)
TColStd_PackedMapOfInteger & | operator^= (const TColStd_PackedMapOfInteger &MM)
Standard_EXPORT Standard_Boolean | IsEqual (const TColStd_PackedMapOfInteger &) const
Standard_Boolean | operator== (const TColStd_PackedMapOfInteger &MM) const
Standard_EXPORT Standard_Boolean | IsSubset (const TColStd_PackedMapOfInteger &) const
Standard_Boolean | operator<= (const TColStd_PackedMapOfInteger &MM) const
Standard_EXPORT Standard_Boolean | HasIntersection (const TColStd_PackedMapOfInteger &) const

## Protected Member Functions

Standard_Integer | InternalExtent () const

## Private Member Functions

| TColStd_PackedMapOfInteger (const TColStd_PackedMapOfInteger &theOther)
| Copy constructor - prohibited.

## Private Attributes

size_t | myExtent

## Detailed Description

Optimized Map of integer values. Each block of 32 integers is stored in 8 bytes in memory.

## Constructor & Destructor Documentation

TColStd_PackedMapOfInteger::TColStd_PackedMapOfInteger | ( | const Standard_Integer | NbBuckets = `1` | ) | `[inline]`

TColStd_PackedMapOfInteger::~TColStd_PackedMapOfInteger | ( |  | ) | `[inline]`

TColStd_PackedMapOfInteger::TColStd_PackedMapOfInteger | ( | const TColStd_PackedMapOfInteger & | theOther | ) | `[private]`

## Member Function Documentation

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Add | ( | const Standard_Integer | aKey | ) |

Standard_EXPORT TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::Assign | ( | const TColStd_PackedMapOfInteger & |  | ) |

Standard_EXPORT void TColStd_PackedMapOfInteger::Clear | ( |  | ) |

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Contains | ( | const Standard_Integer | aKey | ) | const

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Differ | ( | const TColStd_PackedMapOfInteger & |  | ) |

| Apply to this Map the symmetric difference (aka exclusive disjunction, boolean XOR) operation with another (given) Map. The result contains the values that are contained only in this or the operand map, but not in both. This algorithm is similar to method Difference(). Returns True if contents of this map is changed.

Standard_EXPORT void TColStd_PackedMapOfInteger::Difference | ( | const TColStd_PackedMapOfInteger & | ,
|  | const TColStd_PackedMapOfInteger & |
| ) |

| Sets this Map to be the result of symmetric difference (aka exclusive disjunction, boolean XOR) operation between two given Maps. The new Map contains the values that are contained only in the first or the second operand maps but not in both. All previous contents of this Map is cleared. This map (result of the boolean operation) can also be used as one of operands.

Standard_Integer TColStd_PackedMapOfInteger::Extent | ( |  | ) | const`[inline]`

| Reimplemented from TCollection_BasicMap.

Standard_EXPORT Standard_Integer TColStd_PackedMapOfInteger::GetMaximalMapped | ( |  | ) | const

| Query the maximal contained key value.

Standard_EXPORT Standard_Integer TColStd_PackedMapOfInteger::GetMinimalMapped | ( |  | ) | const

| Query the minimal contained key value.

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::HasIntersection | ( | const TColStd_PackedMapOfInteger & |  | ) | const

| Returns True if this map has common items with the given one.

Standard_Integer TColStd_PackedMapOfInteger::InternalExtent | ( |  | ) | const`[inline, protected]`

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Intersect | ( | const TColStd_PackedMapOfInteger & |  | ) |

| Apply to this Map the intersection operation (aka multiplication, common, boolean AND) with another (given) Map. The result contains only the values that are contained in both this and the given maps. This algorithm is similar to method Intersection(). Returns True if contents of this map is changed.

Standard_EXPORT void TColStd_PackedMapOfInteger::Intersection | ( | const TColStd_PackedMapOfInteger & | ,
|  | const TColStd_PackedMapOfInteger & |
| ) |

Sets this Map to be the result of intersection (aka multiplication, common, boolean AND) operation between two given Maps. The new Map contains only the values that are contained in both map operands.
All previous contents of this Map is cleared. This same map (result of the boolean operation) can also be used as one of operands.
The order of operands makes no difference; the method minimizes internally the number of iterations using the smallest map for the loop.

Standard_Integer TColStd_PackedMapOfInteger::IsEmpty | ( |  | ) | const`[inline]`

| Reimplemented from TCollection_BasicMap.

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::IsEqual | ( | const TColStd_PackedMapOfInteger & |  | ) | const

| Returns True if this map is equal to the given one, i.e. they contain the same sets of elements

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::IsSubset | ( | const TColStd_PackedMapOfInteger & |  | ) | const

| Returns True if this map is subset of the given one, i.e. all elements contained in this map is contained also in the operand map. if this map is empty that this method returns true for any operand map.

Standard_Integer TColStd_PackedMapOfInteger::NbBuckets | ( |  | ) | const`[inline]`

| Reimplemented from TCollection_BasicMap.

TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::operator &= | ( | const TColStd_PackedMapOfInteger & | MM | ) | `[inline]`

| Overloaded operator version of Intersect().

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

| Reimplemented from TCollection_BasicMap.

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

| Reimplemented from TCollection_BasicMap.

TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::operator-= | ( | const TColStd_PackedMapOfInteger & | MM | ) | `[inline]`

| Overloaded operator version of Subtract().

Standard_Boolean TColStd_PackedMapOfInteger::operator<= | ( | const TColStd_PackedMapOfInteger & | MM | ) | const`[inline]`

| Overloaded operator version of IsSubset().

TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::operator= | ( | const TColStd_PackedMapOfInteger & | Other | ) | `[inline]`

Standard_Boolean TColStd_PackedMapOfInteger::operator== | ( | const TColStd_PackedMapOfInteger & | MM | ) | const`[inline]`

| Overloaded operator version of IsEqual().

TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::operator^= | ( | const TColStd_PackedMapOfInteger & | MM | ) | `[inline]`

| Overloaded operator version of Differ().

TColStd_PackedMapOfInteger& TColStd_PackedMapOfInteger::operator|= | ( | const TColStd_PackedMapOfInteger & | MM | ) | `[inline]`

| Overloaded operator version of Unite().

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Remove | ( | const Standard_Integer | aKey | ) |

Standard_EXPORT void TColStd_PackedMapOfInteger::ReSize | ( | const Standard_Integer | NbBuckets | ) |

void TColStd_PackedMapOfInteger::Statistics | ( | Standard_OStream & | outStream | ) | const`[inline]`

| Reimplemented from TCollection_BasicMap.

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Subtract | ( | const TColStd_PackedMapOfInteger & |  | ) |

| Apply to this Map the subtraction (aka set-theoretic difference, relative complement, exclude, cut, boolean NOT) operation with another (given) Map. The result contains only the values that were previously contained in this map and not contained in this map. This algorithm is similar to method Subtract() with two operands. Returns True if contents of this map is changed.

Standard_EXPORT void TColStd_PackedMapOfInteger::Subtraction | ( | const TColStd_PackedMapOfInteger & | ,
|  | const TColStd_PackedMapOfInteger & |
| ) |

Sets this Map to be the result of subtraction (aka set-theoretic difference, relative complement, exclude, cut, boolean NOT) operation between two given Maps. The new Map contains only the values that are contained in the first map operands and not contained in the second one.
All previous contents of this Map is cleared. This map (result of the boolean operation) can also be used as the first operand.

Standard_EXPORT void TColStd_PackedMapOfInteger::Union | ( | const TColStd_PackedMapOfInteger & | ,
|  | const TColStd_PackedMapOfInteger & |
| ) |

| Sets this Map to be the result of union (aka addition, fuse, merge, boolean OR) operation between two given Maps. The new Map contains the values that are contained either in the first map or in the second map or in both. All previous contents of this Map is cleared. This map (result of the boolean operation) can also be passed as one of operands.

Standard_EXPORT Standard_Boolean TColStd_PackedMapOfInteger::Unite | ( | const TColStd_PackedMapOfInteger & |  | ) |

| Apply to this Map the boolean operation union (aka addition, fuse, merge, boolean OR) with another (given) Map. The result contains the values that were previously contained in this map or contained in the given (operand) map. This algorithm is similar to method Union(). Returns True if contents of this map is changed.

## Field Documentation

size_t TColStd_PackedMapOfInteger::myExtent `[private]`

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

- TColStd_PackedMapOfInteger.hxx