HighlightControl

class HPS::HighlightControl : public HPS::Control

The HPS::HighlightControl class is a smart pointer that is tied to a database object. It is used to control highlight and unhighlight operations on selection results, search results, key paths and keys. This table lists default * values for the various segment attributes accessible from HPS::HighlightControl.

Public Functions

HighlightControl &Highlight(Key const &in_item, HighlightOptionsKit const &in_options, bool in_remove_existing = true)

Highlight the specified key using the specified highlight options.

Parameters
  • in_item – The key to highlight. If the key is invalid, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(Key const &in_item, HighlightOptionsKit const &in_options, size_t in_vertices_count, size_t const in_vertices[], size_t in_edges_count, size_t const in_edges1[], size_t const in_edges2[], size_t in_faces_count, size_t const in_faces[], bool in_remove_existing = true)

Highlight subentities from the specified item using the specified highlight options.

Parameters
  • in_item – The key to highlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The options to use when performing the highlight.

  • in_vertices_count – The number of elements to read from the in_vertices array.

  • in_vertices – An array of vertex indices, specifying vertices to highlight.

  • in_edges_count – The number of elements to read from the in_edges1/in_edges2 arrays.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to highlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces_count – The number of elements to read from the in_faces array.

  • in_faces – An array of faces indices specifying faces to highlight.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(Key const &in_item, HighlightOptionsKit const &in_options, SizeTArray const &in_vertices, SizeTArray const &in_edges1, SizeTArray const &in_edges2, SizeTArray const &in_faces, bool in_remove_existing = true)

Highlight the specified key using the specified highlight options.

Parameters
  • in_item – The key to highlight. If the key is invalid, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_vertices – An array of vertex indices, specifying vertices to highlight.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to highlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces – An array of faces indices specifying faces to highlight.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(KeyPath const &in_item, HighlightOptionsKit const &in_options, bool in_remove_existing = true)

Highlight the specified key path using the specified highlight options.

Parameters
  • in_item – The key path to highlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(KeyPath const &in_item, HighlightOptionsKit const &in_options, size_t in_vertices_count, size_t const in_vertices[], size_t in_edges_count, size_t const in_edges1[], size_t const in_edges2[], size_t in_faces_count, size_t const in_faces[], bool in_remove_existing = true)

Highlight subentities from the specified item using the specified highlight options.

Parameters
  • in_item – The key path to highlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The options to use when performing the highlight.

  • in_vertices_count – The number of elements to read from the in_vertices array.

  • in_vertices – An array of vertex indices, specifying vertices to highlight.

  • in_edges_count – The number of elements to read from the in_edges1/in_edges2 arrays.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to highlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces_count – The number of elements to read from the in_faces array.

  • in_faces – An array of faces indices specifying faces to highlight.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(KeyPath const &in_item, HighlightOptionsKit const &in_options, SizeTArray const &in_vertices, SizeTArray const &in_edges1, SizeTArray const &in_edges2, SizeTArray const &in_faces, bool in_remove_existing = true)

Highlight specified subentities for the specified key path using the specified highlight options.

Parameters
  • in_item – The key path to highlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_vertices – An array of vertex indices, specfying vertices to highlight.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to highlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces – An array of faces indices specifying faces to highlight.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(SearchResults const &in_items, HighlightOptionsKit const &in_options, bool in_remove_existing = true)

Highlight the specified search results using the specified highlight options.

Parameters
  • in_items – The search results to highlight. If there are invalid keys in the selection results, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(SelectionItem const &in_item, HighlightOptionsKit const &in_options, bool in_remove_existing = true)

Highlight the specified selection item using the specified highlight options.

Parameters
  • in_item – The selection item to highlight. If the selection item is invalid, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl &Highlight(SelectionResults const &in_items, HighlightOptionsKit const &in_options, bool in_remove_existing = true)

Highlight the specified selection results using the specified highlight options.

Parameters
  • in_items – The selection results to highlight. If there are invalid selection items in the selection results, an exception will be thrown.

  • in_options – The options to use when performing the highlight. If there is no highlight style specified, an exception will be thrown.

  • in_remove_existing – Indicates whether this highlight should flush existing highlights at the specified path for the desired overlay type.

Returns

A reference to this HighlightControl.

HighlightControl(HighlightControl &&in_that)

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

Parameters

in_that – An rvalue reference to a HighlightControl to take the impl from.

HighlightControl(HighlightControl const &in_that)

The copy constructor creates a HighlightControl object that shares the underlying smart-pointer of the source HighlightControl.

Parameters

in_that – The source HighlightControl to copy.

explicit HighlightControl(WindowKey const &in_window)

This constructor creates a HighlightControl object which is tied to the specified window.

Parameters

in_window – The window which this HighlightControl should operate on.

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.

HighlightControl &operator=(HighlightControl &&in_that)

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

Parameters

in_that – An rvalue reference to a HighlightControl to take the impl from.

Returns

A reference to this HighlightControl.

HighlightControl &operator=(HighlightControl const &in_that)

Share the underlying smart-pointer of the HighlightControl source.

Parameters

in_that – The HighlightControl source of the assignment.

Returns

A reference to this HighlightControl.

void ShowHighlightState(Key const &in_key, HighlightSearchOptionsKit const &in_search_options, HighlightState &out_state) const

Show the highlight information for the given key and search options.

Parameters
  • in_keyKey to get highlight information for.

  • in_search_optionsSearch options constraining what type of highlights to look for. If this is empty, all highlights will be considered.

  • out_state – Highlight information for the queried key.

void ShowHighlightState(KeyPath const &in_key_path, HighlightSearchOptionsKit const &in_search_options, HighlightState &out_state) const

Show the highlight information for the given key path and search options.

Parameters
  • in_key_pathKey path to get highlight information for.

  • in_search_optionsSearch options constraining what type of highlights to look for. If this is empty, all highlights will be considered.

  • out_state – Highlight information for the queried key path.

void ShowHighlightStates(KeyArray const &in_keys, HighlightSearchOptionsKit const &in_search_options, HighlightStateArray &out_states) const

Show the highlight information for the given keys and search options.

Parameters
  • in_keys – Keys to get highlight information for.

  • in_search_optionsSearch options constraining what type of highlights to look for. If this is empty, all highlights will be considered.

  • out_states – Highlight information for the queried keys.

void ShowHighlightStates(KeyPathArray const &in_key_paths, HighlightSearchOptionsKit const &in_search_options, HighlightStateArray &out_states) const

Show the highlight information for the given key paths and search options.

Parameters
  • in_key_pathsKey paths to get highlight information for.

  • in_search_optionsSearch options constraining what type of highlights to look for. If this is empty, all highlights will be considered.

  • out_states – Highlight information for the queried key paths.

HighlightControl &Unhighlight(HighlightOptionsKit const &in_options)

Unhighlight geometry which was highlighted with the specified HighlightOptionsKit.

Parameters

in_options – The highlight options to be removed.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(Key const &in_item, HighlightOptionsKit const &in_options, size_t in_vertices_count, size_t const in_vertices[], size_t in_edges_count, size_t const in_edges1[], size_t const in_edges2[], size_t in_faces_count, size_t const in_faces[])

Unhighlight subentities from the specified item by removing the specified highlight options.

Parameters
  • in_item – The key to unhighlight. If the key is invalid, an exception will be thrown..

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

  • in_vertices_count – The number of elements to read from the in_vertices array.

  • in_vertices – An array of vertex indices, specifying vertices to unhighlight.

  • in_edges_count – The number of elements to read from the in_edges1/in_edges2 arrays.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to unhighlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces_count – The number of elements to read from the in_faces array.

  • in_faces – An array of faces indices specifying faces to unhighlight.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(Key const &in_item, HighlightOptionsKit const &in_options, SizeTArray const &in_vertices, SizeTArray const &in_edges1, SizeTArray const &in_edges2, SizeTArray const &in_faces)

Unhighlight subentities from the specified item by removing the specified highlight options.

Parameters
  • in_item – The key to unhighlight. If the key is invalid, an exception will be thrown..

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

  • in_vertices – An array of vertex indices, specifying vertices to unhighlight.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to unhighlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces – An array of faces indices specifying faces to unhighlight.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(Key const &in_item, HighlightOptionsKit const &in_options = HighlightOptionsKit())

Unhighlight the specified key by removing the specified highlight options.

Parameters
  • in_item – The key to unhighlight. If the key is invalid, an exception will be thrown..

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(KeyPath const &in_item, HighlightOptionsKit const &in_options, size_t in_vertices_count, size_t const in_vertices[], size_t in_edges_count, size_t const in_edges1[], size_t const in_edges2[], size_t in_faces_count, size_t const in_faces[])

Unhighlight subentities from the specified item by removing the specified highlight options.

Parameters
  • in_item – The key path to unhighlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

  • in_vertices_count – The number of elements to read from the in_vertices array.

  • in_vertices – An array of vertex indices, specifying vertices to unhighlight.

  • in_edges_count – The number of elements to read from the in_edges1/in_edges2 arrays.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to unhighlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces_count – The number of elements to read from the in_faces array.

  • in_faces – An array of faces indices specifying faces to unhighlight.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(KeyPath const &in_item, HighlightOptionsKit const &in_options, SizeTArray const &in_vertices, SizeTArray const &in_edges1, SizeTArray const &in_edges2, SizeTArray const &in_faces)

Unhighlight subentities from the specified key path by removing the specified highlight options.

Parameters
  • in_item – The key path to unhighlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

  • in_vertices – An array of vertex indices, specifying vertices to unhighlight.

  • in_edges1 – An array of vertex indices, which when paired with the corresponding entries in the in_edges2 array, define a list of edges to unhighlight.

  • in_edges2 – An array of vertex indices to be paired with entries in in_edges1 array to define the edge list.

  • in_faces – An array of faces indices specifying faces to unhighlight.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(KeyPath const &in_item, HighlightOptionsKit const &in_options = HighlightOptionsKit())

Unhighlight the specified key path by removing the specified highlight options.

Parameters
  • in_item – The key path to unhighlight. If there are no keys or invalid keys in the key path, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(SearchResults const &in_items, HighlightOptionsKit const &in_options = HighlightOptionsKit())

Unhighlight the specified search results by removing the specified highlight options.

Parameters
  • in_items – The search results to unhighlight. If there are invalid keys in the search results, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(SelectionItem const &in_item, HighlightOptionsKit const &in_options = HighlightOptionsKit())

Unhighlight the specified selection item by removing the specified highlight options.

Parameters
  • in_item – The selection item to unhighlight. If the selection item is invalid, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

Returns

A reference to this HighlightControl.

HighlightControl &Unhighlight(SelectionResults const &in_items, HighlightOptionsKit const &in_options = HighlightOptionsKit())

Unhighlight the specified selection results by removing the specified highlight options.

Parameters
  • in_items – The selection results to unhighlight. If there are invalid selection items in the selection results, an exception will be thrown.

  • in_options – The highlight options to be removed. Defaults to an empty HighlightOptionsKit.

Returns

A reference to this HighlightControl.

HighlightControl &UnhighlightEverything()

Unhighlight everything in the window associated with this HighlightControl.

Returns

A reference to this HighlightControl.

~HighlightControl()

Public Static Attributes

static const HPS::Type staticType = HPS::Type::HighlightControl