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

#include <hps.h>

Inheritance diagram for HPS::ShaderKit:
HPS::Object

Public Member Functions

 ShaderKit ()
 
 ShaderKit (ShaderKit const &in_kit)
 
 ShaderKit (ShaderKit &&in_that)
 
ShaderKitoperator= (ShaderKit &&in_that)
 
HPS::Type ObjectType () const
 
void Set (ShaderKit const &in_kit)
 
void Show (ShaderKit &out_kit) const
 
ShaderKitoperator= (ShaderKit const &in_kit)
 
bool Empty () const
 
bool Equals (ShaderKit const &in_kit) const
 
bool operator== (ShaderKit const &in_kit) const
 
bool operator!= (ShaderKit const &in_kit) const
 
ShaderKitSetSource (char const *in_source)
 
ShaderKitSetMultitexture (bool in_state)
 
ShaderKitSetParameterizationSource (Shader::Parameterization in_source)
 
ShaderKitSetTransformMatrix (MatrixKit const &in_transform)
 
ShaderKitUnsetSource ()
 
ShaderKitUnsetMultitexture ()
 
ShaderKitUnsetParameterizationSource ()
 
ShaderKitUnsetTransformMatrix ()
 
ShaderKitUnsetEverything ()
 
bool ShowSource (UTF8 &out_source) const
 
bool ShowMultitexture (bool &out_state) const
 
bool ShowParameterizationSource (Shader::Parameterization &out_source) const
 
bool ShowTransformMatrix (MatrixKit &out_transform) const
 
- Public Member Functions inherited from HPS::Object
Objectoperator= (Object const &other_object)
 
 Object (Object &&in_that)
 
Objectoperator= (Object &&in_that)
 
HPS::Type Type () 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 ShaderKit class is a user space object. It is used for specifying all settings related to a ShaderDefinition.

Constructor & Destructor Documentation

HPS::ShaderKit::ShaderKit ( )

The default constructor creates an empty ShaderKit object.

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.
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.

Member Function Documentation

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.

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.
HPS::Type HPS::ShaderKit::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.

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.
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.
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.
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.
void HPS::ShaderKit::Set ( ShaderKit const &  in_kit)

Copies the source ShaderKit into this ShaderKit.

Parameters
in_kitThe source ShaderKit to copy.
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.
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.
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.
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.
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.
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.
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.
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.
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.
ShaderKit& HPS::ShaderKit::UnsetEverything ( )

Removes all settings from this ShaderKit.

Returns
A reference to this ShaderKit.
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.
ShaderKit& HPS::ShaderKit::UnsetParameterizationSource ( )

Removes the parameterization source for the shader.

Returns
A reference to this ShaderKit.
ShaderKit& HPS::ShaderKit::UnsetSource ( )

Removes the source code for the shader.

Returns
A reference to this ShaderKit.
ShaderKit& HPS::ShaderKit::UnsetTransformMatrix ( )

Removes the transform matrix for the shader.

Returns
A reference to this ShaderKit.

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