|
| | RWGltf_GltfSceneNodeMap ()=default |
| | Empty constructor.
|
| |
| int | FindIndex (const TCollection_AsciiString &theNodeId) const |
| | Find index from document node string identifier.
|
| |
| iterator | begin () const noexcept |
| | Returns an iterator pointing to the first element in the map.
|
| |
| iterator | end () const noexcept |
| | Returns an iterator referring to the past-the-end element in the map.
|
| |
| const_iterator | cbegin () const noexcept |
| | Returns a const iterator pointing to the first element in the map.
|
| |
| const_iterator | cend () const noexcept |
| | Returns a const iterator referring to the past-the-end element in the map.
|
| |
| IndexedItemsView | IndexedItems () const |
| | Returns a view for key-index pair iteration. Usage: for (auto [aKey, anIndex] : aMap.IndexedItems())
|
| |
| | NCollection_IndexedMap () |
| | Empty constructor.
|
| |
| | NCollection_IndexedMap (const size_t theNbBuckets, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor.
|
| |
| | NCollection_IndexedMap (const int theNbBuckets, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor (legacy int-taking).
|
| |
| | NCollection_IndexedMap (const NCollection_DefaultHasher< XCAFPrs_DocumentNode > &theHasher, const size_t theNbBuckets=1, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor with custom hasher (copy).
|
| |
| | NCollection_IndexedMap (const NCollection_DefaultHasher< XCAFPrs_DocumentNode > &theHasher, const int theNbBuckets, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor with custom hasher (copy, legacy int-taking).
|
| |
| | NCollection_IndexedMap (NCollection_DefaultHasher< XCAFPrs_DocumentNode > &&theHasher, const size_t theNbBuckets=1, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor with custom hasher (move).
|
| |
| | NCollection_IndexedMap (NCollection_DefaultHasher< XCAFPrs_DocumentNode > &&theHasher, const int theNbBuckets, const occ::handle< NCollection_BaseAllocator > &theAllocator=nullptr) |
| | Constructor with custom hasher (move, legacy int-taking).
|
| |
| | NCollection_IndexedMap (const NCollection_IndexedMap &theOther) |
| | Copy constructor.
|
| |
| | NCollection_IndexedMap (NCollection_IndexedMap &&theOther) noexcept |
| | Move constructor.
|
| |
| void | Exchange (NCollection_IndexedMap &theOther) noexcept |
| | Exchange the content of two maps without re-allocations. Notice that allocators will be swapped as well!
|
| |
| const NCollection_DefaultHasher< XCAFPrs_DocumentNode > & | GetHasher () const noexcept |
| | Returns const reference to the hasher.
|
| |
| NCollection_IndexedMap & | Assign (const NCollection_IndexedMap &theOther) |
| | Assign. This method does not change the internal allocator.
|
| |
| NCollection_IndexedMap & | operator= (const NCollection_IndexedMap &theOther) |
| | Assignment operator.
|
| |
| NCollection_IndexedMap & | operator= (NCollection_IndexedMap &&theOther) noexcept |
| | Move operator.
|
| |
| void | ReSize (const size_t theExtent) |
| | ReSize.
|
| |
| void | ReSize (const int theExtent) |
| |
| int | Add (const XCAFPrs_DocumentNode &theKey1) |
| | Add adds a new key to the map.
|
| |
| int | Add (XCAFPrs_DocumentNode &&theKey1) |
| | Add adds a new key to the map.
|
| |
| const XCAFPrs_DocumentNode & | Added (const XCAFPrs_DocumentNode &theKey1) |
| | Added: add a new key if not yet in the map, and return reference to either newly added or previously existing key.
|
| |
| const XCAFPrs_DocumentNode & | Added (XCAFPrs_DocumentNode &&theKey1) |
| | Added: add a new key if not yet in the map, and return reference to either newly added or previously existing key.
|
| |
| int | Emplace (Args &&... theArgs) |
| | Emplace constructs key in-place; if key exists, destroys and reconstructs.
|
| |
| const XCAFPrs_DocumentNode & | Emplaced (Args &&... theArgs) |
| | Emplaced constructs key in-place; if key exists, overwrites.
|
| |
| int | TryEmplace (Args &&... theArgs) |
| | TryEmplace constructs key in-place only if not already present.
|
| |
| const XCAFPrs_DocumentNode & | TryEmplaced (Args &&... theArgs) |
| | TryEmplaced constructs key in-place only if not already present.
|
| |
| bool | Contains (const XCAFPrs_DocumentNode &theKey1) const |
| | Contains.
|
| |
| std::optional< std::reference_wrapper< const XCAFPrs_DocumentNode > > | Contained (const XCAFPrs_DocumentNode &theKey1) const |
| | Contained returns optional const reference to the key in the map. Returns std::nullopt if the key is not found.
|
| |
| void | Substitute (const size_t theIndex, const XCAFPrs_DocumentNode &theKey1) |
| | Substitute.
|
| |
| void | Substitute (const int theIndex, const XCAFPrs_DocumentNode &theKey1) |
| |
| void | Swap (const size_t theIndex1, const size_t theIndex2) |
| | Swaps two elements with the given indices.
|
| |
| void | Swap (const int theIndex1, const int theIndex2) |
| |
| void | RemoveLast () |
| | RemoveLast.
|
| |
| void | RemoveFromIndex (const size_t theIndex) |
| | Remove the key of the given index. Caution! The index of the last key can be changed.
|
| |
| void | RemoveFromIndex (const int theIndex) |
| |
| bool | RemoveKey (const XCAFPrs_DocumentNode &theKey1) |
| | Remove the given key. Caution! The index of the last key can be changed.
|
| |
| const XCAFPrs_DocumentNode & | FindKey (const size_t theIndex) const |
| | FindKey.
|
| |
| const XCAFPrs_DocumentNode & | FindKey (const int theIndex) const |
| |
| const XCAFPrs_DocumentNode & | operator() (const size_t theIndex) const |
| | operator ()
|
| |
| const XCAFPrs_DocumentNode & | operator() (const int theIndex) const |
| |
| int | FindIndex (const XCAFPrs_DocumentNode &theKey1) const |
| | FindIndex.
|
| |
| void | Clear (const bool doReleaseMemory=false) |
| | Clear data. If doReleaseMemory is false then the table of buckets is not released and will be reused.
|
| |
| void | Clear (const occ::handle< NCollection_BaseAllocator > &theAllocator) |
| | Clear data and reset allocator.
|
| |
| | ~NCollection_IndexedMap () override |
| | Destructor.
|
| |
| size_t | NbBuckets () const noexcept |
| | NbBuckets.
|
| |
| int | Extent () const noexcept |
| | Extent (number of elements, legacy int-returning API).
|
| |
| int | Length () const noexcept |
| | Length - number of elements (legacy int-returning API, synonym of Extent()).
|
| |
| size_t | Size () const noexcept |
| | Size - number of elements.
|
| |
| bool | IsEmpty () const noexcept |
| | IsEmpty.
|
| |
| const occ::handle< NCollection_BaseAllocator > & | Allocator () const noexcept |
| | Returns attached allocator.
|
| |
|
| typedef XCAFPrs_DocumentNode | key_type |
| | STL-compliant typedef for key type.
|
| |
| typedef NCollection_StlIterator< std::forward_iterator_tag, Iterator, XCAFPrs_DocumentNode, true > | const_iterator |
| | Shorthand for a constant iterator type.
|
| |
| typedef const_iterator | iterator |
| | Shorthand for iterator type (same as const_iterator for key-only maps).
|
| |
| using | KeyIndexRef |
| | Key-index pair reference for structured binding support. Enables: for (auto [key, index] : map.IndexedItems())
|
| |
| using | IndexedItemsView |
| | View class for key-index pair iteration.
|
| |
| bool | lookup (const XCAFPrs_DocumentNode &theKey, IndexedMapNode *&theNode, size_t &theHash) const |
| | Lookup for particular key in map.
|
| |
| bool | lookup (const XCAFPrs_DocumentNode &theKey, IndexedMapNode *&theNode) const |
| | Lookup for particular key in map.
|
| |
| bool | IsEqual (const XCAFPrs_DocumentNode &theKey1, const XCAFPrs_DocumentNode &theKey2) const |
| |
| size_t | HashCode (const XCAFPrs_DocumentNode &theKey, const size_t theUpperBound) const |
| |
| auto | addImpl (K &&theKey1, std::bool_constant< ReturnRef >) -> std::conditional_t< ReturnRef, const XCAFPrs_DocumentNode &, int > |
| | Implementation helper for Add/Added (uses TryEmplace behavior - no modification on existing).
|
| |
| auto | emplaceImpl (std::bool_constant< IsTry >, std::bool_constant< ReturnRef >, Args &&... theArgs) -> std::conditional_t< ReturnRef, const XCAFPrs_DocumentNode &, int > |
| | Implementation helper for Emplace/Emplaced.
|
| |
| | NCollection_BaseMap (const size_t theNbBuckets, const bool single, const occ::handle< NCollection_BaseAllocator > &theAllocator) |
| | Constructor.
|
| |
| | NCollection_BaseMap (NCollection_BaseMap &&theOther) noexcept |
| | Move Constructor.
|
| |
| virtual | ~NCollection_BaseMap ()=default |
| | Destructor.
|
| |
| bool | BeginResize (const size_t theExtent, size_t &theNewBuckets, NCollection_ListNode **&data1, NCollection_ListNode **&data2) const |
| | BeginResize.
|
| |
| void | EndResize (const size_t theExtent, const size_t theNewBuckets, NCollection_ListNode **data1, NCollection_ListNode **data2) noexcept |
| | EndResize.
|
| |
| bool | Resizable () const noexcept |
| | Resizable.
|
| |
| size_t | Increment () noexcept |
| | Increment.
|
| |
| size_t | Decrement () noexcept |
| | Decrement.
|
| |
| void | Destroy (NCollection_DelMapNode fDel, bool doReleaseMemory=true) |
| | Destroy.
|
| |
| size_t | NextPrimeForMap (const size_t N) const noexcept |
| | NextPrimeForMap.
|
| |
| void | exchangeMapsData (NCollection_BaseMap &theOther) noexcept |
| | Exchange content of two maps without data copying.
|
| |
| NCollection_BaseMap & | operator= (NCollection_BaseMap &&) noexcept=delete |
| | Move operator.
|
| |
| | NCollection_BaseMap (const NCollection_BaseMap &)=delete |
| | Copy Constructor.
|
| |
| NCollection_BaseMap & | operator= (const NCollection_BaseMap &)=delete |
| | Assign operator.
|
| |
| static size_t | NbBucketsFromInt (const int theNbBuckets) |
| | Converts legacy int bucket count to size_t with validation.
|
| |
| NCollection_DefaultHasher< XCAFPrs_DocumentNode > | myHasher |
| |
| occ::handle< NCollection_BaseAllocator > | myAllocator |
| |
| NCollection_ListNode ** | myData1 |
| |
| NCollection_ListNode ** | myData2 |
| |
Indexed map of scene nodes with custom search algorithm.