Hoops Visualize HPS  version 2018-SP2
Hoops Visualize HPS 3D Rendering Engine
Looking for a senior C++ dev?
I'm looking for work. Hire me!
HPS::ShaderKit Class Reference

Internal use only - customers should not use. More...

#include <hps.h>

Inheritance diagram for HPS::ShaderKit:
Collaboration diagram for HPS::ShaderKit:

Public Member Functions

 ShaderKit ()
 The default constructor creates an empty ShaderKit object. More...
 
 ShaderKit (ShaderKit const &in_kit)
 The copy constructor creates a new ShaderKit object that contains the same settings as the source ShaderKit. More...
 
 ShaderKit (ShaderKit &&in_that)
 The move constructor creates a ShaderKit by transferring the underlying impl of the rvalue reference to this ShaderKit thereby avoiding a copy and allocation. More...
 
ShaderKitoperator= (ShaderKit &&in_that)
 The move assignment operator transfers the underlying impl of the rvalue reference to this ShaderKit thereby avoiding a copy. More...
 
virtual ~ShaderKit ()
 
HPS::Type ObjectType () const
 
void Set (ShaderKit const &in_kit)
 Copies the source ShaderKit into this ShaderKit. More...
 
void Show (ShaderKit &out_kit) const
 Copies this ShaderKit into the given ShaderKit. More...
 
ShaderKitoperator= (ShaderKit const &in_kit)
 Copies the source ShaderKit into this ShaderKit. More...
 
bool Empty () const
 Indicates whether this ShaderKit has any values set on it. More...
 
bool Equals (ShaderKit const &in_kit) const
 Check if the source ShaderKit is equivalent to this ShaderKit. More...
 
bool operator== (ShaderKit const &in_kit) const
 Check if the source ShaderKit is equivalent to this ShaderKit. More...
 
bool operator!= (ShaderKit const &in_kit) const
 Check if the source ShaderKit is not equivalent to this ShaderKit. More...
 
ShaderKitSetSource (char const *in_source)
 Sets the source code for the shader. More...
 
ShaderKitSetMultitexture (bool in_state)
 Sets whether to apply diffuse textures from layers greater than <span class='code>0 on top of the shader when it is applied to geometry. More...
 
ShaderKitSetParameterizationSource (Shader::Parameterization in_source)
 Sets the parameterization source for the shader. More...
 
ShaderKitSetTransformMatrix (MatrixKit const &in_transform)
 Sets the transform matrix for the shader. More...
 
ShaderKitUnsetSource ()
 Removes the source code for the shader. More...
 
ShaderKitUnsetMultitexture ()
 Removes whether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry. More...
 
ShaderKitUnsetParameterizationSource ()
 Removes the parameterization source for the shader. More...
 
ShaderKitUnsetTransformMatrix ()
 Removes the transform matrix for the shader. More...
 
ShaderKitUnsetEverything ()
 Removes all settings from this ShaderKit. More...
 
bool ShowSource (UTF8 &out_source) const
 Shows the source code for the shader. More...
 
bool ShowMultitexture (bool &out_state) const
 Shows whether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry. More...
 
bool ShowParameterizationSource (Shader::Parameterization &out_source) const
 Shows the parameterization source for the shader. More...
 
bool ShowTransformMatrix (MatrixKit &out_transform) const
 Shows the transform matrix for the shader. More...
 
virtual HPS::Type Type () const
 This function returns the true type of the underlying object. 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::ShaderKit
 

Detailed Description

Internal use only - customers should not use.

The ShaderKit class is a user space object. It is used for specifying all settings related to a ShaderDefinition.

Constructor & Destructor Documentation

◆ ShaderKit() [1/3]

HPS::ShaderKit::ShaderKit ( )

The default constructor creates an empty ShaderKit object.

◆ ShaderKit() [2/3]

HPS::ShaderKit::ShaderKit ( ShaderKit const &  in_kit)

The copy constructor creates a new ShaderKit object that contains the same settings as the source ShaderKit.

Parameters
in_kitThe source ShaderKit to copy.

◆ ShaderKit() [3/3]

HPS::ShaderKit::ShaderKit ( ShaderKit &&  in_that)

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

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

◆ ~ShaderKit()

virtual HPS::ShaderKit::~ShaderKit ( )
virtual

Member Function Documentation

◆ ClassID()

template<typename T >
static intptr_t HPS::Object::ClassID ( )
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.

◆ Empty()

bool HPS::ShaderKit::Empty ( ) const
virtual

Indicates whether this ShaderKit has any values set on it.

Returns
true if no values are set on this ShaderKit, false otherwise.

Reimplemented from HPS::Object.

◆ Equals()

bool HPS::ShaderKit::Equals ( ShaderKit const &  in_kit) const

Check if the source ShaderKit is equivalent to this ShaderKit.

Parameters
in_kitThe source ShaderKit to compare to this ShaderKit.
Returns
true if the objects are equivalent, false otherwise.

◆ GetClassID()

intptr_t HPS::Object::GetClassID ( ) const
inherited

Returns a unique identifier that is shared by all objects of the same class.

Returns
A unique value shared by all objects of the same class.

◆ GetInstanceID()

intptr_t HPS::Object::GetInstanceID ( ) const
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.

Returns
A value unique to an instance of an object and all objects that are backed by the same database resource.

◆ HasType()

bool HPS::Object::HasType ( HPS::Type  in_mask) const
inherited

This function indicates whether this Object has the given Type mask.

Parameters
in_maskThe Type mask to check against this Object.
Returns
true if this Object has the given Type mask, false otherwise.

◆ ObjectType()

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

Reimplemented from HPS::Kit.

Here is the call graph for this function:

◆ operator!=()

bool HPS::ShaderKit::operator!= ( ShaderKit const &  in_kit) const

Check if the source ShaderKit is not equivalent to this ShaderKit.

Parameters
in_kitThe source ShaderKit to compare to this ShaderKit.
Returns
true if the objects are not equivalent, false otherwise.

◆ operator=() [1/2]

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

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

Parameters
in_thatAn rvalue reference to a ShaderKit to take the impl from.
Returns
A reference to this ShaderKit.

◆ operator=() [2/2]

ShaderKit& HPS::ShaderKit::operator= ( ShaderKit const &  in_kit)

Copies the source ShaderKit into this ShaderKit.

Parameters
in_kitThe source ShaderKit to copy.
Returns
A reference to this ShaderKit.

◆ operator==()

bool HPS::ShaderKit::operator== ( ShaderKit const &  in_kit) const

Check if the source ShaderKit is equivalent to this ShaderKit.

Parameters
in_kitThe source ShaderKit to compare to this ShaderKit.
Returns
true if the objects are equivalent, false otherwise.

◆ Reset()

◆ Set()

void HPS::ShaderKit::Set ( ShaderKit const &  in_kit)

Copies the source ShaderKit into this ShaderKit.

Parameters
in_kitThe source ShaderKit to copy.

◆ SetMultitexture()

ShaderKit& HPS::ShaderKit::SetMultitexture ( bool  in_state)

Sets whether to apply diffuse textures from layers greater than <span class='code>0 on top of the shader when it is applied to geometry.

Parameters
in_stateWhether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry. If true, the additional textures will be applied; if false, the addtional textures will not be applied.
Returns
A reference to this ShaderKit.

◆ SetParameterizationSource()

ShaderKit& HPS::ShaderKit::SetParameterizationSource ( Shader::Parameterization  in_source)

Sets the parameterization source for the shader.

Parameters
in_sourceThe parameterization source for the shader.
Returns
A reference to this ShaderKit.

◆ SetSource()

ShaderKit& HPS::ShaderKit::SetSource ( char const *  in_source)

Sets the source code for the shader.

Parameters
in_sourceThe source code for the shader.
Returns
A reference to this ShaderKit.

◆ SetTransformMatrix()

ShaderKit& HPS::ShaderKit::SetTransformMatrix ( MatrixKit const &  in_transform)

Sets the transform matrix for the shader.

Parameters
in_transformThe transform matrix for the shader.
Returns
A reference to this ShaderKit.

◆ Show()

void HPS::ShaderKit::Show ( ShaderKit out_kit) const

Copies this ShaderKit into the given ShaderKit.

Parameters
out_kitThe ShaderKit to populate with the contents of this ShaderKit.

◆ ShowMultitexture()

bool HPS::ShaderKit::ShowMultitexture ( bool &  out_state) const

Shows whether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry.

Parameters
out_statewhether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry.
Returns
true if the flag is valid, false otherwise.

◆ ShowParameterizationSource()

bool HPS::ShaderKit::ShowParameterizationSource ( Shader::Parameterization out_source) const

Shows the parameterization source for the shader.

Parameters
out_sourceThe parameterization source for the shader.
Returns
true if the parameterization source is valid, false otherwise.

◆ ShowSource()

bool HPS::ShaderKit::ShowSource ( UTF8 out_source) const

Shows the source code for the shader.

Parameters
out_sourceThe source code for the shader.
Returns
true if the source code is valid, false otherwise.

◆ ShowTransformMatrix()

bool HPS::ShaderKit::ShowTransformMatrix ( MatrixKit out_transform) const

Shows the transform matrix for the shader.

Parameters
out_transformThe transform matrix for the shader.
Returns
true if the transform is valid, false otherwise.

◆ Type()

virtual HPS::Type HPS::Kit::Type ( ) const
inlinevirtualinherited

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.

Returns
The true type of the object in question.

Reimplemented from HPS::Object.

◆ UnsetEverything()

ShaderKit& HPS::ShaderKit::UnsetEverything ( )

Removes all settings from this ShaderKit.

Returns
A reference to this ShaderKit.

◆ UnsetMultitexture()

ShaderKit& HPS::ShaderKit::UnsetMultitexture ( )

Removes whether to apply diffuse textures from layers greater than 0 on top of the shader when it is applied to geometry.

Returns
A reference to this ShaderKit.

◆ UnsetParameterizationSource()

ShaderKit& HPS::ShaderKit::UnsetParameterizationSource ( )

Removes the parameterization source for the shader.

Returns
A reference to this ShaderKit.

◆ UnsetSource()

ShaderKit& HPS::ShaderKit::UnsetSource ( )

Removes the source code for the shader.

Returns
A reference to this ShaderKit.

◆ UnsetTransformMatrix()

ShaderKit& HPS::ShaderKit::UnsetTransformMatrix ( )

Removes the transform matrix for the shader.

Returns
A reference to this ShaderKit.

Member Data Documentation

◆ staticType

const HPS::Type HPS::ShaderKit::staticType = HPS::Type::ShaderKit
static

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