Public Member Functions | Protected Member Functions | List of all members
HPS.DistantLightKey Class Reference

The DistantLightKey class is a smart pointer to a database object. It is a handle to a distant light inserted via SegmentKey::InsertDistantLight. More...

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

Public Member Functions

override void Dispose ()
 
 DistantLightKey ()
 The default constructor creates an uninitialized DistantLightKey object. The Type() function will return Type::None. More...
 
 DistantLightKey (HPS.Key in_that)
 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. More...
 
 DistantLightKey (HPS.DistantLightKey in_that)
 The copy constructor creates a DistantLightKey object that shares the underlying smart-pointer of the source DistantLightKey. More...
 
override HPS.Type ObjectType ()
 This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More...
 
void Consume (HPS.DistantLightKit in_kit)
 Completely replaces all settings on this DistantLightKey with those set on the specified kit and resets the kit. More...
 
void Set (HPS.DistantLightKit in_kit)
 Replace those settings on this DistantLightKey with those set on the specified kit. More...
 
void Show (out HPS.DistantLightKit out_kit)
 Copy the contents of this DistantLightKey into the specified kit. More...
 
HPS.DistantLightKey SetDirection (HPS.Vector 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. More...
 
HPS.DistantLightKey SetColor (HPS.RGBAColor in_rgba_color)
 Sets the RGBA color to use for this DistantLightKey. More...
 
HPS.DistantLightKey SetColorByIndex (float in_index)
 Sets the color index to use for this DistantLightKey. More...
 
HPS.DistantLightKey SetCameraRelative (bool in_state)
 Sets the camera-relative setting for this DistantLightKey. More...
 
HPS.DistantLightKey UnsetColor ()
 Removes the color (RGBA or material index) set on this DistantLightKey. More...
 
bool ShowDirection (out HPS.Vector out_vector)
 Shows the direction in which this DistantLightKey lies. More...
 
bool ShowColor (out HPS.Material.Type out_type, out HPS.RGBAColor out_rgba_color, out float out_index)
 Shows the color for this DistantLightKey. More...
 
bool ShowCameraRelative (out bool out_state)
 Shows the camera-relative setting for this DistantLightKey. More...
 
- Public Member Functions inherited from HPS.GeometryKey
override void Dispose ()
 
 GeometryKey ()
 The default constructor creates an uninitialized GeometryKey object. The Type() function will return Type::None. More...
 
 GeometryKey (HPS.Key in_that)
 This constructor creates a GeometryKey object that shares the underlying smart-pointer of the source Key. The copy will only be successful if the source key is really a type of geometry key. Otherwise the copy will fail and the resulting GeometryKey will be invalid. More...
 
 GeometryKey (HPS.GeometryKey in_that)
 The copy constructor creates a GeometryKey object that shares the underlying smart-pointer of the source GeometryKey. More...
 
override HPS.Type ObjectType ()
 This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More...
 
ulong ShowReferrers (out HPS.SegmentKey[] out_segments)
 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. More...
 
ulong ShowReferrers (out HPS.ReferenceKey[] out_references)
 Shows the all the references to this key. More...
 
HPS.GeometryKey SetPriority (int in_priority)
 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. More...
 
HPS.GeometryKey UnsetPriority ()
 Removes the drawing priority setting. More...
 
bool ShowPriority (out int out_priority)
 Shows the drawing priority. More...
 
HPS.GeometryKey SetUserData (IntPtr in_index, ulong in_bytes, byte[] in_data)
 Sets user data on this key. More...
 
HPS.GeometryKey SetUserData (IntPtr in_index, byte[] in_data)
 Sets user data on this key. More...
 
HPS.GeometryKey SetUserData (IntPtr[] in_indices, byte[][] in_data)
 Sets user data on this key. More...
 
HPS.GeometryKey UnsetUserData (IntPtr in_index)
 Removes the user data at the given index from this key. More...
 
HPS.GeometryKey UnsetUserData (IntPtr[] in_indices)
 Removes the user data at the given indices from this key. More...
 
HPS.GeometryKey UnsetAllUserData ()
 Removes all user data from this key. More...
 
ulong ShowUserDataCount ()
 Get the number of user data indices set on this key. More...
 
bool ShowUserDataIndices (out IntPtr[] out_indices)
 Shows the indices of all user data set on this key. More...
 
bool ShowUserData (IntPtr in_index, out byte[] out_data)
 Shows the user data at a given index for this key. More...
 
bool ShowUserData (out IntPtr[] out_indices, out byte[][] out_data)
 Shows all user data for this key. More...
 
bool ShowBoundings (out HPS.BoundingKit out_kit)
 Shows the bounding of this geometry. More...
 
- Public Member Functions inherited from HPS.Key
override void Dispose ()
 
 Key ()
 An uninitialized key refers to no database object and Type() will return Type::None. More...
 
 Key (HPS.Key in_that)
 Shares a reference to a database object referred to by in_that. More...
 
 Key (HPS.Control in_control)
 Initializes a key tied to the Control in_control. More...
 
override HPS.Type ObjectType ()
 This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object. More...
 
bool HasOwner ()
 
Returns
Indicates whether this key has an owner or not.

 
HPS.SegmentKey Up ()
 
Returns
The segment containing this key.

 
HPS.SegmentKey Owner ()
 
Returns
The segment containing this key.

 
void Delete ()
 Removes the database object referred to by this key. More...
 
void MoveTo (HPS.SegmentKey in_new_owner)
 Moves the database object referred to by this key into a new containing segment pointed to by in_new_owner. More...
 
HPS.Key CopyTo (HPS.SegmentKey in_destination)
 Copies the database object referred to by this key into a segment pointed to by in_destination. More...
 
virtual void Assign (HPS.Key in_that)
 Share the underlying smart-pointer of the Key source. More...
 
override bool Equals (System.Object obj)
 
override int GetHashCode ()
 
bool Equals (HPS.Key in_that)
 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.) More...
 
ulong GetHash ()
 Returns a hash code for the key. More...
 
- Public Member Functions inherited from HPS.Object
IntPtr GetClassID ()
 
 Object (HPS.Object that)
 
HPS.Type Type ()
 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. More...
 
virtual bool Empty ()
 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)
 This function indicates whether this Object has the given Type mask. More...
 
IntPtr GetInstanceID ()
 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. More...
 

Protected Member Functions

override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.GeometryKey
override void deleteCptr ()
 
- Protected Member Functions inherited from HPS.Key
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
HandleRef cptr
 
HandleRef scptr
 
bool cMemOwn
 

Detailed Description

The DistantLightKey class is a smart pointer to a database object. It is a handle to a distant light inserted via SegmentKey::InsertDistantLight.

Constructor & Destructor Documentation

HPS.DistantLightKey.DistantLightKey ( )
inline

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

HPS.DistantLightKey.DistantLightKey ( HPS.Key  in_that)
inline

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.

HPS.DistantLightKey.DistantLightKey ( HPS.DistantLightKey  in_that)
inline

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

Parameters
in_thatThe source DistantLightKey to copy.

Member Function Documentation

void HPS.DistantLightKey.Consume ( HPS.DistantLightKit  in_kit)
inline

Completely replaces all settings on this DistantLightKey with those set on the specified kit and resets the kit.

Parameters
in_kitThe kit from which to get the settings to replace on this DistantLightKey.
override HPS.Type HPS.DistantLightKey.ObjectType ( )
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.

void HPS.DistantLightKey.Set ( HPS.DistantLightKit  in_kit)
inline

Replace those settings on this DistantLightKey with those set on the specified kit.

Parameters
in_kitThe kit from which to get the settings to replace on this DistantLightKey.
HPS.DistantLightKey HPS.DistantLightKey.SetCameraRelative ( bool  in_state)
inline

Sets the camera-relative setting for this DistantLightKey.

Parameters
in_stateWhether the direction of this DistantLightKey is treated as being in object space or camera-relative space.
Returns
A reference to this DistantLightKey.

SetDirection

HPS.DistantLightKey HPS.DistantLightKey.SetColor ( HPS.RGBAColor  in_rgba_color)
inline

Sets the RGBA color to use for this DistantLightKey.

Parameters
in_rgba_colorThe RGBA color to use for this DistantLightKey.
Returns
A reference to this DistantLightKey.
HPS.DistantLightKey HPS.DistantLightKey.SetColorByIndex ( float  in_index)
inline

Sets the color index to use for this DistantLightKey.

Parameters
in_indexThe color index to use for this DistantLightKey.
Returns
A reference to this DistantLightKey.
HPS.DistantLightKey HPS.DistantLightKey.SetDirection ( HPS.Vector  in_vector)
inline

Sets the direction in which this DistantLightKey lies. The rays emitted by this light will travel in the opposite direction of this vector.

Parameters
in_vectorThe 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.
Returns
A reference to this DistantLightKey.

SetCameraRelative

void HPS.DistantLightKey.Show ( out HPS.DistantLightKit  out_kit)
inline

Copy the contents of this DistantLightKey into the specified kit.

Parameters
out_kitThe kit to populate with the contents of this DistantLightKey.
bool HPS.DistantLightKey.ShowCameraRelative ( out bool  out_state)
inline

Shows the camera-relative setting for this DistantLightKey.

Parameters
out_stateWhether the direction of this DistantLightKey is treated as being in object space or camera-relative space.
Returns
true if a camera-relative setting was specified, false otherwise.
bool HPS.DistantLightKey.ShowColor ( out HPS.Material.Type  out_type,
out HPS.RGBAColor  out_rgba_color,
out float  out_index 
)
inline

Shows the color for this DistantLightKey.

Parameters
out_typeThe type of color for the distant light.
out_rgba_colorThe RGBA color for the distant light. This is only valid if out_type is Material::Type::ExplicitRGBAColor.
out_indexThe material index for the distant light. This is only valid if out_type is Material::Type::MaterialIndex.
Returns
true if a color was set, false otherwise.
bool HPS.DistantLightKey.ShowDirection ( out HPS.Vector  out_vector)
inline

Shows the direction in which this DistantLightKey lies.

Parameters
out_vectorThe direction in which this DistantLightKey lies.
Returns
true if a direction was set, false otherwise.
HPS.DistantLightKey HPS.DistantLightKey.UnsetColor ( )
inline

Removes the color (RGBA or material index) set on this DistantLightKey.

Returns
A reference to this DistantLightKey.

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