The DistantLightKey class is a smart pointer to a database object. More...
#include <hps.h>
Public Member Functions | |
DistantLightKey () | |
The default constructor creates an uninitialized DistantLightKey object. More... | |
DistantLightKey (Key const &in_that) | |
This constructor creates a DistantLightKey object that shares the underlying smart-pointer of the source Key. More... | |
DistantLightKey (DistantLightKey const &in_that) | |
The copy constructor creates a DistantLightKey object that shares the underlying smart-pointer of the source DistantLightKey. More... | |
DistantLightKey & | operator= (DistantLightKey const &in_that) |
Associate this DistantLightKey with the same underlying impl as the source DistantLightKey. More... | |
DistantLightKey (DistantLightKey &&in_that) | |
The move constructor creates a DistantLightKey by transferring the underlying impl of the rvalue reference to this DistantLightKey thereby avoiding a copy and allocation. More... | |
DistantLightKey & | operator= (DistantLightKey &&in_that) |
The move assignment operator transfers the underlying impl of the rvalue reference to this DistantLightKey thereby avoiding a copy. More... | |
~DistantLightKey () | |
HPS::Type | ObjectType () const |
void | Consume (DistantLightKit &in_kit) |
Completely replaces all settings on this DistantLightKey with those set on the specified kit and resets the kit. More... | |
void | Set (DistantLightKit const &in_kit) |
Replace those settings on this DistantLightKey with those set on the specified kit. More... | |
void | Show (DistantLightKit &out_kit) const |
Copy the contents of this DistantLightKey into the specified kit. More... | |
DistantLightKey & | SetDirection (HPS::Vector const &in_vector) |
Sets the direction in which this DistantLightKey lies. More... | |
DistantLightKey & | SetColor (RGBAColor const &in_rgba_color) |
Sets the RGBA color to use for this DistantLightKey. More... | |
DistantLightKey & | SetColorByIndex (float in_index) |
Sets the color index to use for this DistantLightKey. More... | |
DistantLightKey & | SetCameraRelative (bool in_state) |
Sets the camera-relative setting for this DistantLightKey. More... | |
DistantLightKey & | UnsetColor () |
Removes the color (RGBA or material index) set on this DistantLightKey. More... | |
bool | ShowDirection (HPS::Vector &out_vector) const |
Shows the direction in which this DistantLightKey lies. More... | |
bool | ShowColor (Material::Type &out_type, RGBAColor &out_rgba_color, float &out_index) const |
Shows the color for this DistantLightKey. More... | |
bool | ShowCameraRelative (bool &out_state) const |
Shows the camera-relative setting for this DistantLightKey. More... | |
size_t | ShowReferrers (SegmentKeyArray &out_segments) const |
Shows the all the segments which contain references to this key. More... | |
size_t | ShowReferrers (ReferenceKeyArray &out_references) const |
Shows the all the references to this key. More... | |
GeometryKey & | SetPriority (int in_priority) |
Assigns a drawing priority value to the geometry. More... | |
GeometryKey & | UnsetPriority () |
Removes the drawing priority setting. More... | |
bool | ShowPriority (int &out_priority) const |
Shows the drawing priority. More... | |
GeometryKey & | SetUserData (intptr_t in_index, size_t in_bytes, byte const in_data[]) |
Sets user data on this key. More... | |
GeometryKey & | SetUserData (intptr_t in_index, ByteArray const &in_data) |
Sets user data on this key. More... | |
GeometryKey & | SetUserData (IntPtrTArray const &in_indices, ByteArrayArray const &in_data) |
Sets user data on this key. More... | |
GeometryKey & | UnsetUserData (intptr_t in_index) |
Removes the user data at the given index from this key. More... | |
GeometryKey & | UnsetUserData (size_t in_count, intptr_t const in_indices[]) |
Removes the user data at the given indices from this key. More... | |
GeometryKey & | UnsetUserData (IntPtrTArray const &in_indices) |
Removes the user data at the given indices from this key. More... | |
GeometryKey & | UnsetAllUserData () |
Removes all user data from this key. More... | |
size_t | ShowUserDataCount () const |
Get the number of user data indices set on this key. More... | |
bool | ShowUserDataIndices (IntPtrTArray &out_indices) const |
Shows the indices of all user data set on this key. More... | |
bool | ShowUserData (intptr_t in_index, ByteArray &out_data) const |
Shows the user data at a given index for this key. More... | |
bool | ShowUserData (IntPtrTArray &out_indices, ByteArrayArray &out_data) const |
Shows all user data for this key. More... | |
bool | ShowBounding (BoundingKit &out_kit) const |
Shows the bounding of this geometry. More... | |
bool | HasOwner () const |
SegmentKey | Up () const |
SegmentKey | Owner () const |
void | Delete () |
Removes the database object referred to by this key. More... | |
void | MoveTo (SegmentKey const &in_new_owner) |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner. More... | |
Key | CopyTo (SegmentKey const &in_destination) const |
Copies the database object referred to by this key into a segment pointed to by in_destination. More... | |
virtual void | Assign (Key const &in_that) |
Share the underlying smart-pointer of the Key source. More... | |
bool | Equals (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator!= (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
bool | operator== (Key const &in_that) const |
Determines whether the database objects pointed to by this key and in_that are the same. More... | |
size_t | GetHash () const |
Returns a hash code for the key. More... | |
virtual HPS::Type | Type () const |
This function returns the true type of the underlying object. More... | |
virtual bool | Empty () const |
Indicates whether this object has any values set on it. More... | |
virtual void | Reset () |
Resets this object to its initial, uninitialized state. More... | |
bool | HasType (HPS::Type in_mask) const |
This function indicates whether this Object has the given Type mask. More... | |
intptr_t | GetClassID () const |
Returns a unique identifier that is shared by all objects of the same class. More... | |
intptr_t | GetInstanceID () const |
Returns an identifier that can be used to identify which instance of a class an object is. More... | |
Static Public Member Functions | |
template<typename T > | |
static intptr_t | ClassID () |
Unique identifier for this class. More... | |
Static Public Attributes | |
static const HPS::Type | staticType = HPS::Type::DistantLightKey |
The DistantLightKey class is a smart pointer to a database object.
It is a handle to a distant light inserted via SegmentKey::InsertDistantLight.
HPS::DistantLightKey::DistantLightKey | ( | ) |
The default constructor creates an uninitialized DistantLightKey object.
The Type() function will return Type::None.
|
explicit |
This constructor creates a DistantLightKey object that shares the underlying smart-pointer of the source Key.
The copy will only be successful if the source key is really an upcast of a DistantLight key. Otherwise the copy will fail and the resulting DistantLightKey will be invalid.
in_key | The source Key to copy. |
HPS::DistantLightKey::DistantLightKey | ( | DistantLightKey const & | in_that | ) |
The copy constructor creates a DistantLightKey object that shares the underlying smart-pointer of the source DistantLightKey.
in_that | The source DistantLightKey to copy. |
HPS::DistantLightKey::DistantLightKey | ( | DistantLightKey && | in_that | ) |
The move constructor creates a DistantLightKey by transferring the underlying impl of the rvalue reference to this DistantLightKey thereby avoiding a copy and allocation.
in_that | An rvalue reference to a DistantLightKey to take the impl from. |
HPS::DistantLightKey::~DistantLightKey | ( | ) |
|
virtualinherited |
|
inlinestaticinherited |
Unique identifier for this class.
Note: this method uses construction of static objects. If used in a constructor, it should be used in the body not the initializer list.
void HPS::DistantLightKey::Consume | ( | DistantLightKit & | in_kit | ) |
Completely replaces all settings on this DistantLightKey with those set on the specified kit and resets the kit.
in_kit | The kit from which to get the settings to replace on this DistantLightKey. |
|
inherited |
Copies the database object referred to by this key into a segment pointed to by in_destination.
|
inherited |
Removes the database object referred to by this key.
|
inlinevirtualinherited |
Indicates whether this object has any values set on it.
Reimplemented in HPS::STL::ImportResultsKit, HPS::STL::ImportOptionsKit, HPS::OBJ::ImportResultsKit, HPS::OBJ::ImportOptionsKit, HPS::Hardcopy::File::ExportOptionsKit, HPS::Stream::ExportOptionsKit, HPS::Stream::ImportResultsKit, HPS::Stream::ImportOptionsKit, HPS::PointCloud::ImportOptionsKit, HPS::PointCloud::ImportResultsKit, HPS::UpdateOptionsKit, HPS::HighlightSearchOptionsKit, HPS::HighlightOptionsKit, HPS::SelectionOptionsKit, HPS::SearchOptionsKit, HPS::CutGeometryGatheringOptionsKit, HPS::ShapeKit, HPS::ShaderKit, HPS::Shader::ImportOptionsKit, HPS::ImageKit, HPS::Image::ImportOptionsKit, HPS::Image::ExportOptionsKit, HPS::TextureOptionsKit, HPS::LinePatternKit, HPS::LinePatternParallelKit, HPS::LinePatternOptionsKit, HPS::GlyphKit, HPS::ApplicationWindowOptionsKit, HPS::OffScreenWindowOptionsKit, HPS::StandAloneWindowOptionsKit, HPS::GridKit, HPS::PolygonKit, HPS::MeshKit, HPS::ShellKit, HPS::ShellRelationResultsKit, HPS::ShellRelationOptionsKit, HPS::ShellOptimizationOptionsKit, HPS::TextKit, HPS::EllipticalArcKit, HPS::EllipseKit, HPS::TrimKit, HPS::NURBSSurfaceKit, HPS::NURBSCurveKit, HPS::SpotlightKit, HPS::InfiniteLineKit, HPS::CuttingSectionKit, HPS::CircularWedgeKit, HPS::CircularArcKit, HPS::CircleKit, HPS::SphereKit, HPS::CylinderKit, HPS::DistantLightKit, HPS::MarkerKit, HPS::LineKit, HPS::AttributeLockKit, HPS::FontInfoState, HPS::WindowInfoKit, HPS::DebuggingKit, HPS::SubwindowKit, HPS::ContourLineKit, HPS::VisualEffectsKit, HPS::TransformMaskKit, HPS::PostProcessEffectsKit, HPS::DrawingAttributeKit, HPS::HiddenLineAttributeKit, HPS::PerformanceKit, HPS::NURBSSurfaceAttributeKit, HPS::MaterialKit, HPS::MaterialMappingKit, HPS::MatrixKit, HPS::CurveAttributeKit, HPS::EdgeAttributeKit, HPS::LineAttributeKit, HPS::TextAttributeKit, HPS::CuttingSectionAttributeKit, HPS::CylinderAttributeKit, HPS::LightingAttributeKit, HPS::SphereAttributeKit, HPS::MarkerAttributeKit, HPS::CullingKit, HPS::ColorInterpolationKit, HPS::TransparencyKit, HPS::SelectabilityKit, HPS::CameraKit, HPS::VisibilityKit, HPS::BoundingKit, HPS::SegmentOptimizationOptionsKit, HPS::Publish::ExportOptionsKit, HPS::Publish::TextFieldKit, HPS::Publish::SignatureFieldKit, HPS::Publish::DropDownListKit, HPS::Exchange::TessellationOptionsKit, HPS::Publish::ListBoxKit, HPS::Exchange::ExportSTEPOptionsKit, HPS::Exchange::ExportParasolidOptionsKit, HPS::Publish::RadioButtonKit, HPS::Exchange::ExportIGESOptionsKit, HPS::Exchange::ExportXMLOptionsKit, HPS::Publish::CheckBoxKit, HPS::Exchange::ExportU3DOptionsKit, HPS::Exchange::ExportSTLOptionsKit, HPS::Publish::ButtonKit, HPS::Exchange::ExportPRCOptionsKit, HPS::Publish::LinkKit, HPS::Exchange::ExportJTOptionsKit, HPS::Publish::SlideTableKit, HPS::Exchange::ExportACISOptionsKit, HPS::Publish::TableKit, HPS::Exchange::Export3MFOptionsKit, HPS::Publish::ImageKit, HPS::Publish::TextKit, HPS::Exchange::ModelFileImportOptionsKit, HPS::Publish::ViewKit, HPS::Exchange::TranslationOptionsKit, HPS::Publish::ArtworkKit, HPS::Publish::AnnotationKit, HPS::ComponentPath, HPS::Exchange::ImportOptionsKit, HPS::Parasolid::ExportOptionsKit, HPS::Exchange::NURBSConversionOptionsKit, HPS::Parasolid::LineTessellationKit, HPS::Exchange::Configuration, HPS::Publish::PageKit, HPS::Parasolid::FacetTessellationKit, HPS::Publish::DocumentKit, HPS::Parasolid::ImportOptionsKit, HPS::DWG::ImportOptionsKit, HPS::OOC::ImportOptionsKit, HPS::Sketchup::ImportOptionsKit, and HPS::Sketchup::ImportResultsKit.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
Empty keys (when key.Empty() returns true) are never equal to any key, even when the key is compared against itself (they act analogously to NaN comparisons in this case.)
|
inherited |
Returns a unique identifier that is shared by all objects of the same class.
|
inherited |
Returns a hash code for the key.
|
inherited |
Returns an identifier that can be used to identify which instance of a class an object is.
Different keys and controls will return the same value if they are backed by the same database resource.
|
inherited |
|
inherited |
|
inherited |
Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner.
|
inlinevirtual |
Reimplemented from HPS::GeometryKey.
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
DistantLightKey& HPS::DistantLightKey::operator= | ( | DistantLightKey const & | in_that | ) |
Associate this DistantLightKey with the same underlying impl as the source DistantLightKey.
in_that | The source DistantLightKey for the assignment. |
DistantLightKey& HPS::DistantLightKey::operator= | ( | DistantLightKey && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this DistantLightKey thereby avoiding a copy.
in_that | An rvalue reference to a DistantLightKey to take the impl from. |
|
inherited |
Determines whether the database objects pointed to by this key and in_that are the same.
|
inherited |
|
virtualinherited |
Resets this object to its initial, uninitialized state.
Reimplemented in HPS::EventHandler, HPS::EventDispatcher, HPS::World, HPS::HighlightSearchResults, HPS::HighlightSearchResultsIterator, HPS::SelectionResults, HPS::SelectionResultsIterator, HPS::FontSearchResults, HPS::FontSearchResultsIterator, HPS::SearchResults, and HPS::SearchResultsIterator.
void HPS::DistantLightKey::Set | ( | DistantLightKit const & | in_kit | ) |
Replace those settings on this DistantLightKey with those set on the specified kit.
in_kit | The kit from which to get the settings to replace on this DistantLightKey. |
DistantLightKey& HPS::DistantLightKey::SetCameraRelative | ( | bool | in_state | ) |
Sets the camera-relative setting for this DistantLightKey.
in_state | Whether the direction of this DistantLightKey is treated as being in object space or camera-relative space. |
DistantLightKey& HPS::DistantLightKey::SetColor | ( | RGBAColor const & | in_rgba_color | ) |
Sets the RGBA color to use for this DistantLightKey.
in_rgba_color | The RGBA color to use for this DistantLightKey. |
DistantLightKey& HPS::DistantLightKey::SetColorByIndex | ( | float | in_index | ) |
Sets the color index to use for this DistantLightKey.
in_index | The color index to use for this DistantLightKey. |
DistantLightKey& HPS::DistantLightKey::SetDirection | ( | HPS::Vector const & | in_vector | ) |
Sets the direction in which this DistantLightKey lies.
The rays emitted by this light will travel in the opposite direction of this vector.
in_vector | The direction in which this DistantLightKey lies. The vector will either be treated as being in object space or in camera-relative units depending on the setting passed SetCameraRelative. |
|
inherited |
Assigns a drawing priority value to the geometry.
It affects the order in which the geometry is visited if and only if the rendering algorithm is set to Priority. The geometry has a default drawing priority assigned, based on the order of insertion.
in_priority | The drawing priority; higher priority items are drawn on top of lower priority items. |
|
inherited |
Sets user data on this key.
in_index | The index of the user data to set. |
in_bytes | The number of bytes of user data to set. |
in_data | The bytes of user data to set. |
|
inherited |
Sets user data on this key.
in_index | The index of the user data to set. |
in_data | The bytes of user data to set. |
|
inherited |
Sets user data on this key.
in_indices | An array of user data indices to set. |
in_data | An array of bytes of user data to set. |
void HPS::DistantLightKey::Show | ( | DistantLightKit & | out_kit | ) | const |
Copy the contents of this DistantLightKey into the specified kit.
out_kit | The kit to populate with the contents of this DistantLightKey. |
|
inherited |
Shows the bounding of this geometry.
out_kit | The BoundingKit that is set on this GeometryKey |
bool HPS::DistantLightKey::ShowCameraRelative | ( | bool & | out_state | ) | const |
Shows the camera-relative setting for this DistantLightKey.
out_state | Whether the direction of this DistantLightKey is treated as being in object space or camera-relative space. |
bool HPS::DistantLightKey::ShowColor | ( | Material::Type & | out_type, |
RGBAColor & | out_rgba_color, | ||
float & | out_index | ||
) | const |
Shows the color for this DistantLightKey.
out_type | The type of color for the distant light. |
out_rgba_color | The RGBA color for the distant light. This is only valid if out_type is Material::Type::RGBAColor. |
out_index | The material index for the distant light. This is only valid if out_type is Material::Type::MaterialIndex. |
bool HPS::DistantLightKey::ShowDirection | ( | HPS::Vector & | out_vector | ) | const |
Shows the direction in which this DistantLightKey lies.
out_vector | The direction in which this DistantLightKey lies. |
|
inherited |
Shows the drawing priority.
out_priority | The drawing priority; higher priority items are drawn on top of lower priority items. |
|
inherited |
Shows the all the segments which contain references to this key.
Note that while a segment may only appear once in the returned array, that segment could have multiple references to this key.
out_segments | The list of segments which contains references to this key. |
|
inherited |
Shows the all the references to this key.
out_references | The list of all references to this key. |
|
inherited |
Shows the user data at a given index for this key.
in_index | The index of the user data to show. |
out_data | The user data at the given index. |
|
inherited |
Shows all user data for this key.
out_indices | An array of all user data indices set on this key. |
out_data | An array of all user data set on this key. |
|
inherited |
Get the number of user data indices set on this key.
|
inherited |
Shows the indices of all user data set on this key.
out_indices | The user data indices set on this key. |
|
virtualinherited |
This function returns the true type of the underlying object.
This function is useful for finding the type of smart pointer objects that have been cast to more generic types.
Reimplemented in HPS::UpdateOptionsControl, HPS::HighlightControl, HPS::SelectionOptionsControl, HPS::OffScreenWindowOptionsControl, HPS::ApplicationWindowOptionsControl, HPS::StandAloneWindowOptionsControl, HPS::AttributeLockControl, HPS::WindowInfoControl, HPS::DebuggingControl, HPS::SubwindowControl, HPS::ContourLineControl, HPS::VisualEffectsControl, HPS::TransformMaskControl, HPS::PostProcessEffectsControl, HPS::DrawingAttributeControl, HPS::HiddenLineAttributeControl, HPS::PerformanceControl, HPS::NURBSSurfaceAttributeControl, HPS::ConditionControl, HPS::StyleControl, HPS::PortfolioControl, HPS::MaterialMappingControl, HPS::TextureMatrixControl, HPS::ModellingMatrixControl, HPS::CurveAttributeControl, HPS::EdgeAttributeControl, HPS::LineAttributeControl, HPS::TextAttributeControl, HPS::CuttingSectionAttributeControl, HPS::CylinderAttributeControl, HPS::LightingAttributeControl, HPS::SphereAttributeControl, HPS::MarkerAttributeControl, HPS::CullingControl, HPS::ColorInterpolationControl, HPS::TransparencyControl, HPS::SelectabilityControl, HPS::CameraControl, HPS::VisibilityControl, HPS::BoundingControl, HPS::Kit, and HPS::Control.
|
inherited |
Removes all user data from this key.
DistantLightKey& HPS::DistantLightKey::UnsetColor | ( | ) |
Removes the color (RGBA or material index) set on this DistantLightKey.
|
inherited |
Removes the drawing priority setting.
|
inherited |
Removes the user data at the given index from this key.
in_index | The index of the user data to remove. |
|
inherited |
Removes the user data at the given indices from this key.
in_count | The size of the following array. |
in_indices | The indices of the user data to remove. |
|
inherited |
Removes the user data at the given indices from this key.
in_indices | The indices of the user data to remove. |
|
inherited |
|
static |