// INTERNAL INCLUDES
#include <dali/public-api/common/dali-common.h> // DALI_ASSERT_ALWAYS
#include <dali/public-api/common/intrusive-ptr.h> // Dali::IntrusivePtr
-#include <dali/devel-api/rendering/renderer.h> // Dali::Renderer
+#include <dali/public-api/rendering/renderer.h> // Dali::Renderer
#include <dali/internal/common/blending-options.h>
#include <dali/internal/event/common/connectable.h> // Dali::Internal::Connectable
#include <dali/internal/event/common/object-connector.h> // Dali::Internal::ObjectConnector
#include <dali/internal/event/common/object-impl.h> // Dali::Internal::Object
#include <dali/internal/event/rendering/texture-set-impl.h> // Dali::Internal::TextureSet
#include <dali/internal/event/rendering/geometry-impl.h> // Dali::Internal::Geometry
+#include <dali/internal/render/renderers/render-renderer.h> // Dali::Render::Renderer::StencilParameters
namespace Dali
{
class Renderer;
}
-
class Renderer;
typedef IntrusivePtr<Renderer> RendererPtr;
*/
int GetDepthIndex() const;
- /**
- * @copydoc Dali::Renderer::SetFaceCullingMode()
- */
- void SetFaceCullingMode( FaceCullingMode::Type cullingMode );
-
- /**
- * @copydoc Dali::Renderer::GetFaceCullingMode()
- */
- FaceCullingMode::Type GetFaceCullingMode();
-
/**
* @copydoc Dali::Renderer::SetBlendMode()
*/
private: // data
SceneGraph::Renderer* mSceneObject;
- Vector4* mBlendColor; ///< Local copy of blend color, pointer only as its rarely used
- GeometryPtr mGeometry; ///< Connector that holds the geometry used by this renderer
- ObjectConnector<TextureSet> mTextureSetConnector; ///< Connector that holds the texture set used by this renderer
- IntrusivePtr<Shader> mShader; ///< Connector that holds the shader used by this renderer
+ Vector4* mBlendColor; ///< Local copy of blend color, pointer only as its rarely used
+ GeometryPtr mGeometry; ///< Connector that holds the geometry used by this renderer
+ ObjectConnector<TextureSet> mTextureSetConnector; ///< Connector that holds the texture set used by this renderer
+ IntrusivePtr<Shader> mShader; ///< Connector that holds the shader used by this renderer
int mDepthIndex;
int mOnStageCount;
- size_t mIndexedDrawFirstElement; ///< Offset of first element to draw from bound index buffer
- size_t mIndexedDrawElementCount; ///< Number of elements to draw
+ size_t mIndexedDrawFirstElement; ///< Offset of first element to draw from bound index buffer
+ size_t mIndexedDrawElementCount; ///< Number of elements to draw
- Dali::FaceCullingMode::Type mFaceCullingMode; ///< Local copy of face culling mode
- BlendMode::Type mBlendMode; ///< Local copy of blending mode
- BlendingOptions mBlendingOptions; ///< Local copy of blending options bitmask
- Dali::DepthWriteMode::Type mDepthWriteMode; ///< Local copy of depth write mode
- Dali::DepthFunction::Type mDepthFunction; ///< Local copy of depth function
- Dali::DepthTestMode::Type mDepthTestMode; ///< Local copy of depth test mode
+ Render::Renderer::StencilParameters mStencilParameters; ///< Struct containing all stencil related options
+ BlendingOptions mBlendingOptions; ///< Local copy of blending options bitmask
- bool mPremultipledAlphaEnabled : 1; ///< Flag indicating whether the Pre-multiplied Alpha Blending is required
+ DepthFunction::Type mDepthFunction:3; ///< Local copy of the depth function
+ FaceCullingMode::Type mFaceCullingMode:2; ///< Local copy of the mode of face culling
+ BlendMode::Type mBlendMode:2; ///< Local copy of the mode of blending
+ DepthWriteMode::Type mDepthWriteMode:2; ///< Local copy of the depth write mode
+ DepthTestMode::Type mDepthTestMode:2; ///< Local copy of the depth test mode
+ bool mPremultipledAlphaEnabled:1; ///< Flag indicating whether the Pre-multiplied Alpha Blending is required
};
} // namespace Internal