FastUIDraw
painter_shader_group.hpp
Go to the documentation of this file.
1 /*!
2  * \file painter_shader_group.hpp
3  * \brief file painter_shader_group.hpp
4  *
5  * Copyright 2016 by Intel.
6  *
7  * Contact: kevin.rogovin@gmail.com
8  *
9  * This Source Code Form is subject to the
10  * terms of the Mozilla Public License, v. 2.0.
11  * If a copy of the MPL was not distributed with
12  * this file, You can obtain one at
13  * http://mozilla.org/MPL/2.0/.
14  *
15  * \author Kevin Rogovin <kevin.rogovin@gmail.com>
16  *
17  */
18 
19 #ifndef FASTUIDRAW_PAINTER_SHADER_GROUP_HPP
20 #define FASTUIDRAW_PAINTER_SHADER_GROUP_HPP
21 
22 #include <stdint.h>
25 
26 namespace fastuidraw
27 {
28 /*!\addtogroup PainterBackend
29  * @{
30  */
31 
32  /*!
33  * \brief
34  * A PainterShaderGroup gives to what groups the active shaders
35  * of a \ref Painter belong.
36  */
38  {
39  public:
40  /*!
41  * The group (see PainterShader::group())
42  * of the active blend shader.
43  */
44  uint32_t
45  blend_group(void) const;
46 
47  /*!
48  * The group (see PainterShader::group())
49  * of the active item shader.
50  */
51  uint32_t
52  item_group(void) const;
53 
54  /*!
55  * The group (see PainterShader::group())
56  * of the active brush shader.
57  */
58  uint32_t
59  brush_group(void) const;
60 
61  /*!
62  * The \ref BlendMode value for the active blend shader.
63  */
64  BlendMode
65  blend_mode(void) const;
66 
67  /*!
68  * Returns the \ref PainterBlendShader::shader_type
69  * of the active \ref PainterBlendShader. If there is
70  * no active \ref PainterBlendShader, returns \ref
71  * PainterBlendShader::number_types .
72  */
74  blend_shader_type(void) const;
75 
76  protected:
77  /*!
78  * Ctor, do NOT derive from PainterShaderGroup, doing
79  * so is asking for heaps of trouble and pain.
80  */
82  };
83 
84 /*! @} */
85 }
86 
87 #endif
all classes and functions of FastUIDraw are in the namespace fastuidraw.
Definition: colorstop.hpp:28
BlendMode blend_mode(void) const
uint32_t item_group(void) const
file blend_mode.hpp
A PainterShaderGroup gives to what groups the active shaders of a Painter belong. ...
uint32_t blend_group(void) const
enum PainterBlendShader::shader_type blend_shader_type(void) const
Class for which copy ctor and assignment operator are private functions.
Definition: util.hpp:505
shader_type
Enumeration to specify how blend shader operates.
Class to hold the blend mode as exposed by typical 3D APIs.
Definition: blend_mode.hpp:37
uint32_t brush_group(void) const
file painter_blend_shader.hpp