###########
StateShader
###########

.. cpp:namespace:: RED::StateShader

.. default-domain:: cpp

Types
=====

=== =======================================================
..  :cpp:enumerator:`~RED::StateShader::CULLING_MODE`      
..  :cpp:enumerator:`~RED::StateShader::FUNCTION`          
..  :cpp:enumerator:`~RED::StateShader::DEPTH_MODE`        
..  :cpp:enumerator:`~RED::StateShader::STENCIL_MODE`      
..  :cpp:enumerator:`~RED::StateShader::STENCIL_OPERATION` 
..  :cpp:enumerator:`~RED::StateShader::BLENDING_MODE`     
..  :cpp:enumerator:`~RED::StateShader::BLENDING_EQUATION` 
..  :cpp:enumerator:`~RED::StateShader::BLENDING_FUNCTION` 
..  :cpp:enumerator:`~RED::StateShader::TRANSPARENCY_MODE` 
=== =======================================================

Fields
======

=== ==============================================================
..  :cpp:enum:`~RED::StateShader::BACK`                           
..  :cpp:enum:`~RED::StateShader::FRONT`                          
..  :cpp:enum:`~RED::StateShader::NONE`                           
..  :cpp:enum:`~RED::StateShader::NEVER`                          
..  :cpp:enum:`~RED::StateShader::LESS`                           
..  :cpp:enum:`~RED::StateShader::LEQUAL`                         
..  :cpp:enum:`~RED::StateShader::GREATER`                        
..  :cpp:enum:`~RED::StateShader::GEQUAL`                         
..  :cpp:enum:`~RED::StateShader::EQUAL`                          
..  :cpp:enum:`~RED::StateShader::NOTEQUAL`                       
..  :cpp:enum:`~RED::StateShader::ALWAYS`                         
..  :cpp:enum:`~RED::StateShader::DEPTH_SKIP`                     
..  :cpp:enum:`~RED::StateShader::ON`                             
..  :cpp:enum:`~RED::StateShader::OFF`                            
..  :cpp:enum:`~RED::StateShader::STENCIL_ON`                     
..  :cpp:enum:`~RED::StateShader::STENCIL_OFF`                    
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_KEEP`                
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_ZERO`                
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_REPLACE`             
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_INCR`                
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_DECR`                
..  :cpp:enum:`~RED::StateShader::STENCIL_OP_INVERT`              
..  :cpp:enum:`~RED::StateShader::SKIP`                           
..  :cpp:enum:`~RED::StateShader::NO_BLENDING`                    
..  :cpp:enum:`~RED::StateShader::ADDITIVE`                       
..  :cpp:enum:`~RED::StateShader::SUBTRACTIVE`                    
..  :cpp:enum:`~RED::StateShader::MULTIPLICATIVE`                 
..  :cpp:enum:`~RED::StateShader::CUSTOM`                         
..  :cpp:enum:`~RED::StateShader::ADD`                            
..  :cpp:enum:`~RED::StateShader::SUBTRACT`                       
..  :cpp:enum:`~RED::StateShader::REVERSE_SUBTRACT`               
..  :cpp:enum:`~RED::StateShader::MIN`                            
..  :cpp:enum:`~RED::StateShader::MAX`                            
..  :cpp:enum:`~RED::StateShader::EQ_ENUM_SIZE`                   
..  :cpp:enum:`~RED::StateShader::ZERO`                           
..  :cpp:enum:`~RED::StateShader::ONE`                            
..  :cpp:enum:`~RED::StateShader::SRC_COLOR`                      
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_SRC_COLOR`            
..  :cpp:enum:`~RED::StateShader::DST_COLOR`                      
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_DST_COLOR`            
..  :cpp:enum:`~RED::StateShader::SRC_ALPHA`                      
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_SRC_ALPHA`            
..  :cpp:enum:`~RED::StateShader::DST_ALPHA`                      
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_DST_ALPHA`            
..  :cpp:enum:`~RED::StateShader::SRC_ALPHA_SATURATE`             
..  :cpp:enum:`~RED::StateShader::CONSTANT_COLOR`                 
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_CONSTANT_COLOR`       
..  :cpp:enum:`~RED::StateShader::CONSTANT_ALPHA`                 
..  :cpp:enum:`~RED::StateShader::ONE_MINUS_CONSTANT_ALPHA`       
..  :cpp:enum:`~RED::StateShader::FUNC_ENUM_SIZE`                 
..  :cpp:enum:`~RED::StateShader::NO_TRANSPARENCY`                
..  :cpp:enum:`~RED::StateShader::MASKED_TRANSPARENCY`            
..  :cpp:enum:`~RED::StateShader::SORTED_TRANSPARENCY`            
..  :cpp:enum:`~RED::StateShader::SORTED_AND_MASKED_TRANSPARENCY` 
=== ==============================================================

Functions
=========

============================ ================================================================================================================================================================================================================================================================================
:doc:`classRED_1_1CID`       :cpp:func:`GetClassID <static RED::CID RED::StateShader::GetClassID()>`                                                                                                                                                                                                         
unsigned int                 :cpp:func:`GetChunkSignature <static unsigned int RED::StateShader::GetChunkSignature()>`                                                                                                                                                                                       
:cpp:enumerator:`~RED_RC`    :cpp:func:`Interpret <static RED_RC RED::StateShader::Interpret(RED::IReferenceManager *iReferenceManager, RED::IStream *iStream, const RED::StreamingPolicy &iPolicy, unsigned int iChunkSignature, RED::uint64 iChunkSize, RED::Object **oResult, const RED::State &iState)>` 
void *                       :cpp:func:`As <virtual void * RED::StateShader::As(const RED::CID &iCID)>`                                                                                                                                                                                                      
const void *                 :cpp:func:`As <virtual const void * RED::StateShader::As(const RED::CID &iCID) const>`                                                                                                                                                                                          
class T_As                   :cpp:func:`As <T_As * RED::StateShader::As()>`                                                                                                                                                                                                                                  
class T_As                   :cpp:func:`As <const T_As * RED::StateShader::As() const>`                                                                                                                                                                                                                      
..                           :cpp:func:`StateShader <RED::StateShader::StateShader>`                                                                                                                                                                                                                         
:doc:`classRED_1_1Shader` *  :cpp:func:`Clone <virtual RED::Shader * RED::StateShader::Clone() const>`                                                                                                                                                                                                       
..                           :cpp:func:`~StateShader <virtual RED::StateShader::~StateShader>`                                                                                                                                                                                                               
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetNoTransparency <RED_RC RED::StateShader::SetNoTransparency(RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                                  
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetMaskedTransparency <RED_RC RED::StateShader::SetMaskedTransparency(const RED::Object *iAlphaImage, RED::MESH_CHANNEL iAlphaChannel, const RED::Matrix &iAlphaMatrix, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                        
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetSortedTransparency <RED_RC RED::StateShader::SetSortedTransparency(const RED::Color &iOpacityColor, const RED::Object *iOpacityTexture, RED::MESH_CHANNEL iOpacityUV, const RED::Matrix &iOpacityMatrix, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetSortedTransparency <RED_RC RED::StateShader::SetSortedTransparency(const RED::Color &iOpacityColor, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetSortedAndMaskedTransparency <RED_RC RED::StateShader::SetSortedAndMaskedTransparency(const RED::Object *iOpacityTexture, RED::MESH_CHANNEL iOpacityUV, const RED::Matrix &iOpacityMatrix, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                   
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetAlphaThreshold <RED_RC RED::StateShader::SetAlphaThreshold(float iAlphaThreshold, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                           
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetFaceCulling <RED_RC RED::StateShader::SetFaceCulling(CULLING_MODE iCullingMode, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetBlendingMode <RED_RC RED::StateShader::SetBlendingMode(BLENDING_MODE iBlendingMode, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetBlendingMode <RED_RC RED::StateShader::SetBlendingMode(BLENDING_MODE iBlendingMode, BLENDING_FUNCTION iFunction1, BLENDING_EQUATION iOperation, BLENDING_FUNCTION iFunction2, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                               
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetBlendingConstant <RED_RC RED::StateShader::SetBlendingConstant(const RED::Color &iConstant, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                 
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetBlendingMode <RED_RC RED::StateShader::SetBlendingMode(int iNumBuffer, BLENDING_FUNCTION iFunction1, BLENDING_EQUATION iOperation, BLENDING_FUNCTION iFunction2, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                            
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetDoubleSided <RED_RC RED::StateShader::SetDoubleSided(bool iDoubleSided, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetDepthFunction <RED_RC RED::StateShader::SetDepthFunction(FUNCTION iFunc, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetDepthTest <RED_RC RED::StateShader::SetDepthTest(DEPTH_MODE iTest, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetDepthMask <RED_RC RED::StateShader::SetDepthMask(DEPTH_MODE iMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetLineWidth <RED_RC RED::StateShader::SetLineWidth(float iWidth, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetLineStipple <RED_RC RED::StateShader::SetLineStipple(bool iOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                           
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetLineStipplePattern <RED_RC RED::StateShader::SetLineStipplePattern(int iFactor, short iPattern, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetLineSmoothing <RED_RC RED::StateShader::SetLineSmoothing(bool iOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                       
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetPointSmoothing <RED_RC RED::StateShader::SetPointSmoothing(bool iOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetPointSize <RED_RC RED::StateShader::SetPointSize(float iSize, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                               
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetPolygonOffset <RED_RC RED::StateShader::SetPolygonOffset(bool iOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                       
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetPolygonOffsetValue <RED_RC RED::StateShader::SetPolygonOffsetValue(float iFactor, float iUnits, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetColorMask <RED_RC RED::StateShader::SetColorMask(bool iWriteR, bool iWriteG, bool iWriteB, bool iWriteA, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetMatte <RED_RC RED::StateShader::SetMatte(bool iMatte, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                                       
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetDisplacement <RED_RC RED::StateShader::SetDisplacement(float iDispHeight, const RED::Object *iDispTexture, const RED::Matrix &iDispMatrix, RED::MESH_CHANNEL iDispUV, float iDispOffset, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetStencilTest <RED_RC RED::StateShader::SetStencilTest(STENCIL_MODE iTest, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetStencilFunction <RED_RC RED::StateShader::SetStencilFunction(FUNCTION iFunc, int iRef, int iMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                           
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetStencilOperation <RED_RC RED::StateShader::SetStencilOperation(STENCIL_OPERATION iFailOp, STENCIL_OPERATION iZFailOp, STENCIL_OPERATION iZPassOp, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                           
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetStencilMask <RED_RC RED::StateShader::SetStencilMask(int iMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetReflectiveCaustics <RED_RC RED::StateShader::SetReflectiveCaustics(bool iReflectiveCaustics, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                
:cpp:enumerator:`~RED_RC`    :cpp:func:`SetRefractiveCaustics <RED_RC RED::StateShader::SetRefractiveCaustics(bool iRefractiveCaustics, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC)>`                                                                                                                
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPlatformsCount <RED_RC RED::StateShader::GetPlatformsCount(int &oCount) const>`                                                                                                                                                                                   
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPlatformList <RED_RC RED::StateShader::GetPlatformList(RED::Vector< RED::HARDWARE_PLATFORM > &oPlatformList) const>`                                                                                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetTransparencyMode <RED_RC RED::StateShader::GetTransparencyMode(TRANSPARENCY_MODE &oTransparency, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                      
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetTransparencyImage <RED_RC RED::StateShader::GetTransparencyImage(RED::Object **oImage, RED::MESH_CHANNEL &oUVChannel, RED::Matrix &oMatrix, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                           
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetTransparencyColor <RED_RC RED::StateShader::GetTransparencyColor(RED::Color &oTransparColor, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetAlphaThreshold <RED_RC RED::StateShader::GetAlphaThreshold(float &oAlpha, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetBlendingMode <RED_RC RED::StateShader::GetBlendingMode(BLENDING_MODE &oBlend, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetBlendingMode <RED_RC RED::StateShader::GetBlendingMode(BLENDING_MODE &oBlend, BLENDING_FUNCTION &oFunction1, BLENDING_EQUATION &oEquation, BLENDING_FUNCTION &oFunction2, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetBlendingMode <RED_RC RED::StateShader::GetBlendingMode(BLENDING_FUNCTION &oFunction1, BLENDING_EQUATION &oEquation, BLENDING_FUNCTION &oFunction2, int iNumBuffer, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetFaceCulling <RED_RC RED::StateShader::GetFaceCulling(CULLING_MODE &oCullMode, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetDoubleSided <RED_RC RED::StateShader::GetDoubleSided(bool &oDoubleSided, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetDepthFunction <RED_RC RED::StateShader::GetDepthFunction(FUNCTION &oFunc, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                             
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetDepthTest <RED_RC RED::StateShader::GetDepthTest(DEPTH_MODE &oDepth, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                  
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetDepthMask <RED_RC RED::StateShader::GetDepthMask(DEPTH_MODE &oMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                   
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetLineWidth <RED_RC RED::StateShader::GetLineWidth(float &oWidth, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                       
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetLineStipple <RED_RC RED::StateShader::GetLineStipple(bool &oOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                    
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetLineStipplePattern <RED_RC RED::StateShader::GetLineStipplePattern(int &oFactor, short &oPattern, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetLineSmoothing <RED_RC RED::StateShader::GetLineSmoothing(bool &oOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPointSmoothing <RED_RC RED::StateShader::GetPointSmoothing(bool &oOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                              
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPointSize <RED_RC RED::StateShader::GetPointSize(float &oPointSize, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                   
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPolygonOffset <RED_RC RED::StateShader::GetPolygonOffset(bool &oOnOff, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetPolygonOffsetValue <RED_RC RED::StateShader::GetPolygonOffsetValue(float &oFactor, float &oUnits, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                     
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetColorMask <RED_RC RED::StateShader::GetColorMask(bool &oWriteR, bool &oWriteG, bool &oWriteB, bool &oWriteA, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetMatte <RED_RC RED::StateShader::GetMatte(bool &oMatte, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                                
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetDisplacement <RED_RC RED::StateShader::GetDisplacement(float &oDispHeight, RED::Object *&oDispTexture, RED::Matrix &oDispMatrix, RED::MESH_CHANNEL &oDispUV, float &oDispOffset, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                      
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetStencilTest <RED_RC RED::StateShader::GetStencilTest(STENCIL_MODE &oStencil, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                          
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetStencilFunction <RED_RC RED::StateShader::GetStencilFunction(FUNCTION &oFunc, int &oRef, int &oMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                  
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetStencilOperation <RED_RC RED::StateShader::GetStencilOperation(STENCIL_OPERATION &oFailOp, STENCIL_OPERATION &oZFailOp, STENCIL_OPERATION &oZPassOp, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                  
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetStencilMask <RED_RC RED::StateShader::GetStencilMask(int &oMask, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                                                      
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetReflectiveCaustics <RED_RC RED::StateShader::GetReflectiveCaustics(bool &oReflectiveCaustics, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetRefractiveCaustics <RED_RC RED::StateShader::GetRefractiveCaustics(bool &oRefractiveCaustics, RED::HARDWARE_PLATFORM iPlatformID=RED::HW_GENERIC) const>`                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`UpdateFrom <virtual RED_RC RED::StateShader::UpdateFrom(const RED::Object &iShader, const RED::State &iState, int iSrcStateNumber)>`                                                                                                                                 
:cpp:enumerator:`~RED_RC`    :cpp:func:`GetOperationStream <virtual RED_RC RED::StateShader::GetOperationStream(const RED::Object *iCaller, RED::Vector< int > &ioStream, RED::HARDWARE_PLATFORM iPlatformID) const>`                                                                                        
:cpp:enumerator:`~RED_RC`    :cpp:func:`Solve <RED_RC RED::StateShader::Solve(RED::IReferenceManager *iReferenceManager, const RED::State &iState)>`                                                                                                                                                         
:cpp:enumerator:`~RED_RC`    :cpp:func:`Save <virtual RED_RC RED::StateShader::Save(RED::IStream *iStream, StreamingPolicy &iPolicy, int iState=-1) const>`                                                                                                                                                  
============================ ================================================================================================================================================================================================================================================================================

.. cpp:namespace:: nullptr

Detailed Description
====================

.. doxygenclass:: RED::StateShader
   :project: RED
   :members:
   :undoc-members:



