OptimizeMappingResultsIterator

class HPS::OptimizeMappingResultsIterator : public HPS::Object

An iterator used for traversing results from a optimize on an associated OptimizeMappingResults object.

Public Functions

Key GetItem() const

Returns the item that this iterator is currently pointing at. Throws an InvalidObjectException if the iterator is not valid. This method is functionally equivalent to the overloaded operator*.

Returns

The current item.

bool GetMergedShellInfo(ShellKey &out_shell_key, size_t &out_vertex_offset, size_t &out_face_offset, size_t &out_edge_offset) const

Returns the item that this iterator is currently pointing at. Throws an InvalidObjectException if the iterator is not valid.

Parameters
  • out_shell_key – The post merge shell that this item is in.

  • out_vertex_offset – The offset that the vertices from the item start in the post merge shell.

  • out_face_offset – The offset that the faces from the item start in the post merge shell.

  • out_edge_offset – The offset that the edges from the item start in the post merge shell.

Returns

True if the out params are valid

bool IsValid() const

Queries the validity of this iterator location. Invalid locations would include uninitialized iterators and iterators that had walked past the last element.

Returns

true if this iterator is pointing to a valid item, false otherwise.

void Next()

Advances the iterator to the next search result item

inline virtual HPS::Type ObjectType() const

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns

The declared type of the object in question, which may differ from the true, underlying type.

bool operator!=(OptimizeMappingResultsIterator const &in_mapping_results_iterator)

Comparison operator between iterators to compare inequality

Parameters

in_mapping_results_iterator – The iterator to compare to

Key operator*() const

Returns the item that this iterator is currently pointing at. Throws an InvalidObjectException if the iterator is not valid.

Returns

The current item.

OptimizeMappingResultsIterator &operator++()

Advances the iterator to the next search result item

Returns

A reference to this object.

OptimizeMappingResultsIterator operator++(int in_val)

Advances the iterator to the next search result item

Returns

A reference to this object.

OptimizeMappingResultsIterator &operator=(OptimizeMappingResultsIterator &&in_that)

The move assignment operator transfers the underlying impl of the rvalue reference to this OptimizeMappingResultsIterator thereby avoiding a copy.

Parameters

in_that – An rvalue reference to an OptimizeMappingResultsIterator to take the impl from.

Returns

A reference to this OptimizeMappingResultsIterator.

OptimizeMappingResultsIterator &operator=(OptimizeMappingResultsIterator const &in_mapping_results_iterator)

Copies a OptimizeMappingResultsIterator object, associating this object with the same OptimizeMappingResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other.

Parameters

in_mapping_results_iterator – The source of the copy.

Returns

a reference to this object.

bool operator==(OptimizeMappingResultsIterator const &in_mapping_results_iterator)

Comparison operator between iterators to compare equality

Parameters

in_mapping_results_iterator – The iterator to compare to

OptimizeMappingResultsIterator()

The default constructor creates a new OptimizeMappingResultsIterator object that is not associated with any OptimizeMappingResults object.

OptimizeMappingResultsIterator(OptimizeMappingResultsIterator &&in_that)

The move constructor creates a OptimizeMappingResultsIterator by transferring the underlying impl of the rvalue reference to this OptimizeMappingResultsIterator thereby avoiding a copy and allocation.

Parameters

in_that – An rvalue reference to OptimizeMappingResultsIterator to take the impl from.

OptimizeMappingResultsIterator(OptimizeMappingResultsIterator const &in_mapping_results_iterator)

The copy constructor initializes a new OptimizeMappingResultsIterator object that is associated with the same OptimizeMappingResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other.

Parameters

in_mapping_results_iterator – The source of the copy.

virtual void Reset()

Resets iterator to the beginning of the associated search results.

void Set(OptimizeMappingResultsIterator const &in_mapping_results_iterator)

Copies a OptimizeMappingResultsIterator object, associating this object with the same OptimizeMappingResults object as the source and at the same location in the results. Subsequent changes to either iterator will not affect the other. This method is functionally equivalent to the overloaded assignment operator except for the return value.

Parameters

in_mapping_results_iterator – The source of the copy.

~OptimizeMappingResultsIterator()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::OptimizeMappingResultsIterator