Inheritance diagram for HPS.ReferenceKey:
HPS.GeometryKey HPS.Key HPS.Object

Public Member Functions

override void Dispose ()
 
HPS.ModellingMatrixControl GetModellingMatrixControl ()
 
HPS.Key GetTarget ()
 
override HPS.Type ObjectType ()
 
 ReferenceKey ()
 
 ReferenceKey (HPS.Key in_that)
 
 ReferenceKey (HPS.ReferenceKey in_that)
 
HPS.ReferenceKey SetConditionalExpression (HPS.ConditionalExpression in_conditional)
 
HPS.ReferenceKey SetGeometryMask (HPS.Search.Type[] in_geometry_types)
 
HPS.ReferenceKey SetMaterialMapping (HPS.MaterialMappingKit in_kit)
 
void SetModellingMatrix (HPS.MatrixKit in_kit)
 
bool ShowConditionalExpression (out HPS.ConditionalExpression out_conditional)
 
ulong ShowGeometryMask ()
 
ulong ShowGeometryMask (out HPS.Search.Type[] out_geometry_types)
 
bool ShowMaterialMapping (out HPS.MaterialMappingKit out_kit)
 
bool ShowModellingMatrix (out HPS.MatrixKit out_kit)
 
ulong ShowTargets (bool masked)
 
ulong ShowTargets ()
 
ulong ShowTargets (out HPS.Key[] out_keys, bool masked)
 
ulong ShowTargets (out HPS.Key[] out_keys)
 
HPS.ReferenceKey UnsetConditionalExpression ()
 
HPS.ReferenceKey UnsetGeometryMask ()
 
HPS.ReferenceKey UnsetMaterialMapping ()
 
void UnsetModellingMatrix ()
 
- Public Member Functions inherited from HPS.GeometryKey
 GeometryKey ()
 
 GeometryKey (HPS.Key in_that)
 
 GeometryKey (HPS.GeometryKey in_that)
 
HPS.GeometryKey SetPriority (int in_priority)
 
HPS.GeometryKey SetUserData (IntPtr in_index, ulong in_bytes, byte[] in_data)
 
HPS.GeometryKey SetUserData (IntPtr in_index, byte[] in_data)
 
HPS.GeometryKey SetUserData (IntPtr[] in_indices, byte[][] in_data)
 
bool ShowBounding (out HPS.BoundingKit out_kit)
 
bool ShowPriority (out int out_priority)
 
ulong ShowReferrers (out HPS.SegmentKey[] out_segments)
 
ulong ShowReferrers (out HPS.ReferenceKey[] out_references)
 
bool ShowUserData (IntPtr in_index, out byte[] out_data)
 
bool ShowUserData (out IntPtr[] out_indices, out byte[][] out_data)
 
ulong ShowUserDataCount ()
 
bool ShowUserDataIndices (out IntPtr[] out_indices)
 
HPS.GeometryKey UnsetAllUserData ()
 
HPS.GeometryKey UnsetPriority ()
 
HPS.GeometryKey UnsetUserData (IntPtr in_index)
 
HPS.GeometryKey UnsetUserData (IntPtr[] in_indices)
 
- Public Member Functions inherited from HPS.Key
virtual void Assign (HPS.Key in_that)
 
HPS.Key CopyTo (HPS.SegmentKey in_destination)
 
void Delete ()
 
override bool Equals (System.Object obj)
 
bool Equals (HPS.Key in_that)
 
ulong GetHash ()
 
override int GetHashCode ()
 
bool HasOwner ()
 
 Key ()
 
 Key (HPS.Key in_that)
 
 Key (HPS.Control in_control)
 
void MoveTo (HPS.SegmentKey in_new_owner)
 
HPS.SegmentKey Owner ()
 
HPS.SegmentKey Up ()
 
- Public Member Functions inherited from HPS.Object
virtual bool Empty ()
 
IntPtr GetClassID ()
 
IntPtr GetInstanceID ()
 
bool HasType (HPS.Type in_mask)
 
 Object (HPS.Object that)
 
virtual void Reset ()
 
virtual HPS.Type Type ()
 

Protected Member Functions

override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.Object
virtual IntPtr GetNonDirectorClassID ()
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS.Key
static bool operator!= (HPS.Key a, HPS.Key b)
 
static bool operator== (HPS.Key a, HPS.Key b)
 
- Static Public Member Functions inherited from HPS.Object
static IntPtr ClassID< T > ()
 
- Protected Attributes inherited from HPS.Object
bool cMemOwn
 
HandleRef cptr
 

Detailed Description

The ReferenceKey class is a smart pointer to a database object. It is a handle to a geometry reference returned by SegmentKey.ReferenceGeometry.

Constructor & Destructor Documentation

◆ ReferenceKey() [1/3]

HPS.ReferenceKey.ReferenceKey ( )
inline

The default constructor creates an uninitialized ReferenceKey object. The Type() function will return Type.None.

◆ ReferenceKey() [2/3]

HPS.ReferenceKey.ReferenceKey ( HPS.Key  in_that)
inline

This constructor creates an ReferenceKey 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 reference key. Otherwise the copy will fail and the resulting ReferenceKey will be invalid.

◆ ReferenceKey() [3/3]

HPS.ReferenceKey.ReferenceKey ( HPS.ReferenceKey  in_that)
inline

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

Parameters
in_thatThe source ReferenceKey to copy.

Member Function Documentation

◆ GetModellingMatrixControl()

HPS.ModellingMatrixControl HPS.ReferenceKey.GetModellingMatrixControl ( )
inline

Gets a control that allows querying and modifying modelling matrices set on this reference.

Returns
A control that allows querying and modifying modelling matrices set on this reference.

◆ GetTarget()

HPS.Key HPS.ReferenceKey.GetTarget ( )
inline

Gets the geometry or segment key that was used to create this ReferenceKey. If multiple geometry are referenced only the first is returned.

Returns
The geometry or segment key that was used to create this ReferenceKey.

◆ ObjectType()

override HPS.Type HPS.ReferenceKey.ObjectType ( )
inlinevirtual

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.

Reimplemented from HPS.GeometryKey.

◆ SetConditionalExpression()

HPS.ReferenceKey HPS.ReferenceKey.SetConditionalExpression ( HPS.ConditionalExpression  in_conditional)
inline

Sets a conditional expression on this ReferenceKey. This will either make an unconditional reference into a conditional reference, or modify the condition for an existing conditional reference. The target geometry or segment referenced by this reference will only be drawn in the owning segment if a condition satisfying the given conditional expression is set above this reference in the tree.

Parameters
in_conditionalThe conditional expression for this ReferenceKey.
Returns
A reference to this ReferenceKey.
See also
SegmentKey.SetCondition
ConditionControl.SetCondition
ConditionControl.AddCondition

◆ SetGeometryMask()

HPS.ReferenceKey HPS.ReferenceKey.SetGeometryMask ( HPS.Search.Type []  in_geometry_types)
inline

Sets the masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. Set HPS.Search.Type.Geometry to process all geometry types.

Parameters
in_geometry_typesThe geometry types to be processed by this reference.

◆ SetMaterialMapping()

HPS.ReferenceKey HPS.ReferenceKey.SetMaterialMapping ( HPS.MaterialMappingKit  in_kit)
inline

Sets the specified material mappings on this ReferenceKey. This function will not override colors set directly on the original geometry. Light colors and Window colors are not valid on a ReferenceKey.

Parameters
in_kitThe material mappings to set on this ReferenceKey.
Returns
A reference to this ReferenceKey.

◆ SetModellingMatrix()

void HPS.ReferenceKey.SetModellingMatrix ( HPS.MatrixKit  in_kit)
inline

Sets the specified modelling matrix on this reference.

Parameters
in_kitThe modelling matrix to set on this reference.

◆ ShowConditionalExpression()

bool HPS.ReferenceKey.ShowConditionalExpression ( out HPS.ConditionalExpression  out_conditional)
inline

Shows the conditional expression for this ReferenceKey.

Parameters
out_conditionalThe conditional expression for this ReferenceKey.
Returns
true if a conditional expression is set on this ReferenceKey, false otherwise.

◆ ShowGeometryMask() [1/2]

ulong HPS.ReferenceKey.ShowGeometryMask ( )
inline

Gets the count of masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. If no mask was explicitly set the mask size is one and the value is HPS.Search.Type.Geometry.

Returns
A count of masked geometry types from this reference.

◆ ShowGeometryMask() [2/2]

ulong HPS.ReferenceKey.ShowGeometryMask ( out HPS.Search.Type []  out_geometry_types)
inline

Gets the masked geometry types. Only the geometry types included in the mask will be processed by this ReferenceKey. If no mask was explicitly set the mask size is one and the value is HPS.Search.Type.Geometry.

Parameters
out_geometry_typesThe geometry types processed by this reference.
Returns
A count of masked geometry types from this reference.

◆ ShowMaterialMapping()

bool HPS.ReferenceKey.ShowMaterialMapping ( out HPS.MaterialMappingKit  out_kit)
inline

Shows the material mapping settings on this segment. Returns false if no material mapping settings exist on this ReferenceKey.

◆ ShowModellingMatrix()

bool HPS.ReferenceKey.ShowModellingMatrix ( out HPS.MatrixKit  out_kit)
inline

Shows the modelling matrix on this reference.

Parameters
out_kitThe modelling matrix set on this reference.
Returns
true if a modelling matrix was set, false otherwise.

◆ ShowTargets() [1/4]

ulong HPS.ReferenceKey.ShowTargets ( bool  masked)
inline

Gets the count of geometry keys or a segment key targeted by this ReferenceKey.

Parameters
maskedIf true a geometry mask if present will be applied to the results.
Returns
A count of targeted geometries or a segment from this reference.

◆ ShowTargets() [2/4]

ulong HPS.ReferenceKey.ShowTargets ( )
inline

Gets the count of geometry keys or a segment key targeted by this ReferenceKey.

Returns
A count of targeted geometries or a segment from this reference.

◆ ShowTargets() [3/4]

ulong HPS.ReferenceKey.ShowTargets ( out HPS.Key []  out_keys,
bool  masked 
)
inline

Gets the geometries keys or a segment key targeted by this ReferenceKey.

Parameters
out_keysThe keys targeted by this reference.
maskedIf true a geometry mask if present will be applied to the results.
Returns
A count of targeted geometries or segment from this reference and populates out_keys with their keys.

◆ ShowTargets() [4/4]

ulong HPS.ReferenceKey.ShowTargets ( out HPS.Key []  out_keys)
inline

Gets the geometries keys or a segment key targeted by this ReferenceKey.

Parameters
out_keysThe keys targeted by this reference.
Returns
A count of targeted geometries or segment from this reference and populates out_keys with their keys.

◆ UnsetConditionalExpression()

HPS.ReferenceKey HPS.ReferenceKey.UnsetConditionalExpression ( )
inline

Removes the conditional expression on this ReferenceKey. This will turn a conditional reference into an unconditional reference.

Returns
A reference to this ReferenceKey.

◆ UnsetGeometryMask()

HPS.ReferenceKey HPS.ReferenceKey.UnsetGeometryMask ( )
inline

Resets the masked geometry types on this ReferenceKey to HPS.Search.Type.Geometry.

Returns
A reference to this ReferenceKey.

◆ UnsetMaterialMapping()

HPS.ReferenceKey HPS.ReferenceKey.UnsetMaterialMapping ( )
inline

Removes all material mapping settings from this ReferenceKey.

◆ UnsetModellingMatrix()

void HPS.ReferenceKey.UnsetModellingMatrix ( )
inline

Removes the modelling matrix on this geometry reference.


The documentation for this class was generated from the following file:
  • internals/hps_core/source/cs/HPS.ReferenceKey.cs