Public Member Functions | List of all members
HPS::SelectionControl Class Reference

#include <hps.h>

Inheritance diagram for HPS::SelectionControl:
HPS::Object

Public Member Functions

 SelectionControl (WindowKey const &in_window)
 
 SelectionControl (SelectionControl const &in_that)
 
 SelectionControl (SelectionControl &&in_that)
 
SelectionControloperator= (SelectionControl &&in_that)
 
HPS::Type ObjectType () const
 
SelectionControloperator= (SelectionControl const &in_that)
 
size_t SelectByPoint (Point const &in_location, SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByPoint (Point const &in_location, SelectionResults &out_results) const
 
size_t SelectByArea (Rectangle const &in_area, SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByArea (Rectangle const &in_area, SelectionResults &out_results) const
 
size_t SelectByPolygon (PointArray const &in_points, SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByPolygon (PointArray const &in_points, SelectionResults &out_results) const
 
size_t SelectByPolygon (size_t in_point_count, Point const in_points[], SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByPolygon (size_t in_point_count, Point const in_points[], SelectionResults &out_results) const
 
size_t SelectByLine (PointArray const &in_points, SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByLine (PointArray const &in_points, SelectionResults &out_results) const
 
size_t SelectByLine (size_t in_point_count, Point const in_points[], SelectionOptionsKit const &in_options, SelectionResults &out_results) const
 
size_t SelectByLine (size_t in_point_count, Point const in_points[], SelectionResults &out_results) const
 
size_t SelectByShell (ShellKit const &in_shell, SelectionOptionsKit const &in_options, SelectionResults &out_results)
 
size_t SelectByShell (ShellKit const &in_shell, SelectionResults &out_results)
 
size_t SelectByShell (ShellKey const &in_shell, SelectionOptionsKit const &in_options, SelectionResults &out_results)
 
size_t SelectByShell (ShellKey const &in_shell, SelectionResults &out_results)
 
size_t SelectByVolume (SimpleCuboid const &in_volume, SelectionOptionsKit const &in_options, SelectionResults &out_results)
 
size_t SelectByVolume (SimpleCuboid const &in_volume, SelectionResults &out_results)
 
size_t SelectByRay (Point const &in_start_point, Vector const &in_direction, SelectionOptionsKit const &in_options, SelectionResults &out_results)
 
size_t SelectByRay (Point const &in_start_point, Vector const &in_direction, SelectionResults &out_results)
 
- Public Member Functions inherited from HPS::Object
 Object (Object const &that)
 
Objectoperator= (Object const &other_object)
 
 Object (Object &&in_that)
 
Objectoperator= (Object &&in_that)
 
HPS::Type Type () const
 
virtual bool Empty () const
 
virtual void Reset ()
 
bool HasType (HPS::Type in_mask) const
 
intptr_t GetClassID () const
 
intptr_t GetInstanceID () const
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS::Object
template<typename T >
static intptr_t ClassID ()
 

Detailed Description

The SelectionControl class is a smart pointer that is tied to a database object. It is used to perform both window space selections (by point, by area, by polygon, by line) and object space selections (by shell, by volume, by ray).

Constructor & Destructor Documentation

HPS::SelectionControl::SelectionControl ( WindowKey const &  in_window)
explicit

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

Parameters
in_windowThe window which this SelectionControl should operate on.
HPS::SelectionControl::SelectionControl ( SelectionControl const &  in_that)

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

Parameters
in_thatThe source SelectionControl to copy.
HPS::SelectionControl::SelectionControl ( SelectionControl &&  in_that)

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

Parameters
in_thatAn rvalue reference to a SelectionControl to take the impl from.

Member Function Documentation

HPS::Type HPS::SelectionControl::ObjectType ( ) const
inlinevirtual

This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.

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

Reimplemented from HPS::Object.

SelectionControl& HPS::SelectionControl::operator= ( SelectionControl &&  in_that)

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

Parameters
in_thatAn rvalue reference to a SelectionControl to take the impl from.
Returns
A reference to this SelectionControl.
SelectionControl& HPS::SelectionControl::operator= ( SelectionControl const &  in_that)

Share the underlying smart-pointer of the SelectionControl source.

Parameters
in_thatThe SelectionControl source of the assignment.
Returns
A reference to this SelectionControl.
size_t HPS::SelectionControl::SelectByArea ( Rectangle const &  in_area,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space area selection starting at the specified segment using the specified selection options.

Parameters
in_areaRectangle in window space at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByArea ( Rectangle const &  in_area,
SelectionResults out_results 
) const

Perform a window space area selection starting at the specified segment using selection options set in the segment tree.

Parameters
in_areaRectangle in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByLine ( PointArray const &  in_points,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space line selection starting at the specified segment using the specified selection options.

Parameters
in_pointsLine in window space at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByLine ( PointArray const &  in_points,
SelectionResults out_results 
) const

Perform a window space line selection starting at the specified segment using the selection options set in the segment tree.

Parameters
in_pointsLine in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByLine ( size_t  in_point_count,
Point const  in_points[],
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space line selection starting at the specified segment using the specified selection options.

Parameters
in_point_countSize of the following array.
in_pointsLine in window space at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByLine ( size_t  in_point_count,
Point const  in_points[],
SelectionResults out_results 
) const

Perform a window space line selection with the specified line and start segment using the selection options set in the segment tree.

Parameters
in_point_countSize of the following array.
in_pointsLine in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPoint ( Point const &  in_location,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space point selection starting at the specified segment using the specified selection options.

Parameters
in_locationPoint in window space at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPoint ( Point const &  in_location,
SelectionResults out_results 
) const

Perform a window space point selection starting at the specified segment using selection options set in segment tree.

Parameters
in_locationPoint in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPolygon ( PointArray const &  in_points,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space polygon selection starting at the specified segment using the specified selection options.

Parameters
in_pointsPolygon in window space at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPolygon ( PointArray const &  in_points,
SelectionResults out_results 
) const

Perform a window space polygon selection starting at the specified segment using selection options set in the segment tree.

Parameters
in_pointsPolygon in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPolygon ( size_t  in_point_count,
Point const  in_points[],
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
) const

Perform a window space polygon selection starting at the specified segment using the specified selection options.

Parameters
in_point_countSize of the following array.
in_pointsPolygon in window space for the polygon at which to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByPolygon ( size_t  in_point_count,
Point const  in_points[],
SelectionResults out_results 
) const

Perform a window space polygon selection starting at the specified segment using selection options set in the segment tree.

Parameters
in_point_countSize of the following array.
in_pointsPolygon in window space at which to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByRay ( Point const &  in_start_point,
Vector const &  in_direction,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
)

Performs an object space selection by ray starting at the specified segment using the specified selection options.

Parameters
in_start_pointStart point of ray.
in_directionDirection vector for ray.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByRay ( Point const &  in_start_point,
Vector const &  in_direction,
SelectionResults out_results 
)

Performs an object space selection by ray starting at the specified segment using the selection options set in the segment tree.

Parameters
in_start_pointStart point of ray.
in_directionDirection vector for ray.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByShell ( ShellKit const &  in_shell,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
)

Performs an object space selection by shell starting at the specified segment using the specified selection options.

Parameters
in_shellShell to use to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByShell ( ShellKit const &  in_shell,
SelectionResults out_results 
)

Performs an object space selection by shell starting at the specified segment using the selection options set in the segment tree.

Parameters
in_shellShell to use to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByShell ( ShellKey const &  in_shell,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
)

Performs an object space selection by shell starting at the specified segment using the specified selection options.

Parameters
in_shellShell in the database to use to perform the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByShell ( ShellKey const &  in_shell,
SelectionResults out_results 
)

Performs an object space selection by shell starting at the specified segment using the selection options set in the segment tree.

Parameters
in_shellShell in the database to use to perform the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByVolume ( SimpleCuboid const &  in_volume,
SelectionOptionsKit const &  in_options,
SelectionResults out_results 
)

Performs an object space selection by volume starting at the specified segment using the specified selection options. If the volume is invalid, i.e., min > max for any component, an exception will be thrown.

Parameters
in_volumeVolume to use when performing the selection.
in_optionsSelection options to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.
size_t HPS::SelectionControl::SelectByVolume ( SimpleCuboid const &  in_volume,
SelectionResults out_results 
)

Performs an object space selection by volume starting at the specified segment using the selection options set in the segment tree. If the volume is invalid, i.e., min > max for any component, an exception will be thrown.

Parameters
in_volumeVolume to use when performing the selection.
out_resultsResults of the selection.
Returns
Number of selected items.

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