base of union-find data structures: stores only the parent forest and the operations that depend on it alone, so it is shared by the sequential UnionFind and the ParallelUnionFind More...
Public Member Functions | |
| BaseUnionFind_MR_FaceId (java.lang.foreign.MemorySegment ptr, boolean owned, java.lang.Object owner) | |
| BaseUnionFind_MR_FaceId () | |
| BaseUnionFind_MR_FaceId (meshlib.BaseUnionFind_MR_FaceId _other) | |
| meshlib.BaseUnionFind_MR_FaceId | assignFromAnother (meshlib.BaseUnionFind_MR_FaceId _other) |
| long | size () |
| void | reset (long size) |
| meshlib.FaceId | add () |
| meshlib.std_pair_MR_FaceId_bool | uniteUnbalanced (meshlib.FaceId first, meshlib.FaceId second) |
| boolean | united (meshlib.FaceId first, meshlib.FaceId second) |
| boolean | isRoot (meshlib.FaceId a) |
| meshlib.FaceId | parent (meshlib.FaceId a) |
| meshlib.FaceId | find (meshlib.FaceId a) |
| meshlib.FaceId | findUpdateRange (meshlib.FaceId a, meshlib.FaceId begin, meshlib.FaceId end) |
| meshlib.FaceMap | roots () |
| meshlib.FaceMap | parents () |
| Public Member Functions inherited from meshlib.CppObject | |
| final java.lang.foreign.MemorySegment | rawPointer () |
| final boolean | isOwned () |
| final void | close () |
| final java.lang.foreign.MemorySegment | release () |
Additional Inherited Members | |
| Protected Member Functions inherited from meshlib.CppObject | |
| CppObject (java.lang.foreign.MemorySegment ptr, java.util.function.Consumer< java.lang.foreign.MemorySegment > destroy, java.lang.Object owner) | |
base of union-find data structures: stores only the parent forest and the operations that depend on it alone, so it is shared by the sequential UnionFind and the ParallelUnionFind
| I | is the identifier of a set's element, e.g. FaceId |
Generated from class MR::BaseUnionFind<MR::FaceId>.
Instances created here own their C++ objects, see CppObject.
| meshlib.BaseUnionFind_MR_FaceId.BaseUnionFind_MR_FaceId | ( | java.lang.foreign.MemorySegment | ptr, |
| boolean | owned, | ||
| java.lang.Object | owner ) |
Wraps a pointer from the C bindings. If owned, the object is destroyed when the wrapper dies. owner is kept alive as long as this wrapper is. Not for normal use.
| meshlib.BaseUnionFind_MR_FaceId.BaseUnionFind_MR_FaceId | ( | ) |
Constructs an empty (default-constructed) instance.
Calls MR_BaseUnionFind_MR_FaceId_DefaultConstruct().
| meshlib.BaseUnionFind_MR_FaceId.BaseUnionFind_MR_FaceId | ( | meshlib.BaseUnionFind_MR_FaceId | _other | ) |
Generated from constructor MR::BaseUnionFind<MR::FaceId>::BaseUnionFind. The reference to things referred to by the parameter _other (if any) might be preserved in the constructed object.
Calls MR_BaseUnionFind_MR_FaceId_ConstructFromAnother().
| meshlib.FaceId meshlib.BaseUnionFind_MR_FaceId.add | ( | ) |
adds new element in its own disjoint set, returns its identifier Generated from method MR::BaseUnionFind<MR::FaceId>::add.
Calls MR_BaseUnionFind_MR_FaceId_add().
| meshlib.BaseUnionFind_MR_FaceId meshlib.BaseUnionFind_MR_FaceId.assignFromAnother | ( | meshlib.BaseUnionFind_MR_FaceId | _other | ) |
Generated from method MR::BaseUnionFind<MR::FaceId>::operator=. The reference to things referred to by the parameter _other (if any) might be preserved in this object. The reference to this object might be preserved in the return value.
Calls MR_BaseUnionFind_MR_FaceId_AssignFromAnother().
| meshlib.FaceId meshlib.BaseUnionFind_MR_FaceId.find | ( | meshlib.FaceId | a | ) |
finds the root of the set containing given element with optimizing data structure updates Generated from method MR::BaseUnionFind<MR::FaceId>::find.
Calls MR_BaseUnionFind_MR_FaceId_find().
| meshlib.FaceId meshlib.BaseUnionFind_MR_FaceId.findUpdateRange | ( | meshlib.FaceId | a, |
| meshlib.FaceId | begin, | ||
| meshlib.FaceId | end ) |
finds the root of the set containing given element with optimizing data structure in the range [begin, end) Generated from method MR::BaseUnionFind<MR::FaceId>::findUpdateRange.
Calls MR_BaseUnionFind_MR_FaceId_findUpdateRange().
| boolean meshlib.BaseUnionFind_MR_FaceId.isRoot | ( | meshlib.FaceId | a | ) |
returns true if given element is the root of some set Generated from method MR::BaseUnionFind<MR::FaceId>::isRoot.
Calls MR_BaseUnionFind_MR_FaceId_isRoot().
| meshlib.FaceId meshlib.BaseUnionFind_MR_FaceId.parent | ( | meshlib.FaceId | a | ) |
return parent element of this element, which is equal to given element only for set's root Generated from method MR::BaseUnionFind<MR::FaceId>::parent.
Calls MR_BaseUnionFind_MR_FaceId_parent().
| meshlib.FaceMap meshlib.BaseUnionFind_MR_FaceId.parents | ( | ) |
gets the parents of all elements as is Generated from method MR::BaseUnionFind<MR::FaceId>::parents.
Calls MR_BaseUnionFind_MR_FaceId_parents().
| void meshlib.BaseUnionFind_MR_FaceId.reset | ( | long | size | ) |
resets union-find to represent given number of elements, each element is the only one in its disjoint set Generated from method MR::BaseUnionFind<MR::FaceId>::reset.
Calls MR_BaseUnionFind_MR_FaceId_reset().
| meshlib.FaceMap meshlib.BaseUnionFind_MR_FaceId.roots | ( | ) |
sets the root of corresponding set as the parent of each element, then returns the vector Generated from method MR::BaseUnionFind<MR::FaceId>::roots.
Calls MR_BaseUnionFind_MR_FaceId_roots().
| long meshlib.BaseUnionFind_MR_FaceId.size | ( | ) |
returns the number of elements in union-find Generated from method MR::BaseUnionFind<MR::FaceId>::size.
Calls MR_BaseUnionFind_MR_FaceId_size().
| boolean meshlib.BaseUnionFind_MR_FaceId.united | ( | meshlib.FaceId | first, |
| meshlib.FaceId | second ) |
returns true if given two elements are from one set Generated from method MR::BaseUnionFind<MR::FaceId>::united.
Calls MR_BaseUnionFind_MR_FaceId_united().
| meshlib.std_pair_MR_FaceId_bool meshlib.BaseUnionFind_MR_FaceId.uniteUnbalanced | ( | meshlib.FaceId | first, |
| meshlib.FaceId | second ) |
unites the two sets containing given elements WITHOUT balancing by set size (BaseUnionFind keeps no sizes): it simply attaches one set's root under the other's, so chained calls can build taller trees. Prefer UnionFind::unite, which selects the new root by set size, when many unions follow one another.
Calls MR_BaseUnionFind_MR_FaceId_uniteUnbalanced().