FastUIDraw
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 Cfastuidraw::GlyphCache::AllocationHandle
 Cfastuidraw::Path::arcWraps the data to specify an arc
 Cfastuidraw::ArcStrokedPointAn ArcStrokedPoint holds the data for a point of stroking where the segments can be arcs of a circle. The upshot is that a fragment shader will determine per-pixel coverage. In addition, the data is so that changing the stroking width or miter limit does not change the stroking data
 Cfastuidraw::gl::Program::atomic_buffer_infoAn atomic_buffer_info represents an object from which one can query the data of an atomic buffer
 Cfastuidraw::glsl::PainterShaderRegistrarGLSLTypes::BackendConstants
 Cfastuidraw::BlendModeClass to hold the blend mode as exposed by typical 3D APIs
 Cfastuidraw::gl::Program::block_infoA block_info represents an object from which one can query the members of a uniform or shader storage block
 Cfastuidraw::PainterData::brush_valueA brush_value stores the brush applied; it stores a pointer to a PainterBrushShader together with a PainterDataValue<PainterBrushShaderData>. If the pointer to the PainterBrushShader is null, then it indicates to use the standard brush shader, PainterBrushShaderSet::standard_brush()
 Cfastuidraw::c_array< T >A c_array is a wrapper over a C pointer with a size parameter to facilitate bounds checking and provide an STL-like iterator interface
 Cfastuidraw::c_array< const fastuidraw::c_array< const fastuidraw::vecN > >
 Cfastuidraw::c_array< const fastuidraw::TessellatedPath::segment >
 Cfastuidraw::c_array< const T >
 Cfastuidraw::c_array< const uint32_t >
 Cfastuidraw::c_array< const uint8_t >
 Cfastuidraw::c_array< fastuidraw::PainterAttribute >
 Cfastuidraw::c_array< fastuidraw::vecN >
 Cfastuidraw::c_array< PainterIndex >
 Cfastuidraw::c_array< uint32_t >
 Cfastuidraw::c_array< uint8_t >
 Cfastuidraw::c_array< unsigned int >
 Cfastuidraw::TessellatedPath::capRepresents the geometric data for a cap
 Cfastuidraw::ColorStopA ColorStop is a pair consisting of an RGBA value and a place. The value of the place is a floating point value in the range [0, 1]
 Cfastuidraw::gl::PainterEngineGL::ColorStopAtlasParamsClass to hold the construction parameters for creating a GL-backend ColorStopAtlas for a PainterEngineGL
 Cfastuidraw::PainterEngine::ConfigurationBaseA ConfigurationBase holds properties common to all Painter Backend objects returned by PainterEngine::create_backend() from a fixed PainterEngine
 Cfastuidraw::gl::PainterEngineGL::ConfigurationGLA ConfigurationGL gives parameters how to contruct a PainterEngineGL
 Cfastuidraw::Path::contour_closeTag class to mark the close of a contour
 Cfastuidraw::Path::contour_close_arcTag class to mark the close of an contour with an arc
 Cfastuidraw::Path::contour_endTag class to mark the end of a contour without adding a closing edge of the contour and start a new contour
 Cfastuidraw::Path::contour_startIndicates to end the existing contour with adding a closing edge of the contour and start a new contour
 Cfastuidraw::Path::control_pointClass that wraps a vec2 to mark a point as a control point for a Bezier curve
 Cfastuidraw::CustomFillRuleBaseBase class to specify a custom fill rule
 Cfastuidraw::PainterDashedStrokeParams::DashPatternElementA DashPatternElement is an element of a dash pattern. It specifies how long to draw then how much space to emit before the next DashPatternElement
 Cfastuidraw::DataBufferBackingStoreRepresents a buffer directly stored in memory
 Cfastuidraw::glsl::PainterBlendShaderGLSL::DependencyListIf one wishes to make use of other PainterBlendShaderGLSL fastuidraw_gl_compute_blend_value(), fastuidraw_gl_compute_blend_factors() or fastuidraw_gl_compute_post_blended_value() routines of other shaders (for example to have a simple shader that adds on to a previous shader), a DependencyList provides the means to do so
 Cfastuidraw::glsl::PainterBrushShaderGLSL::DependencyListIf one wishes to make use of other PainterBrushShaderGLSL fastuidraw_gl_vert_brush_main()/fastuidraw_gl_frag_brush_main() of other shaders (for example to have a simple shader that adds on to a previous shader), a DependencyList provides the means to do so
 Cfastuidraw::glsl::PainterItemCoverageShaderGLSL::DependencyListIf one wishes to make use of other PainterItemCoverageShaderGLSL fastuidraw_gl_vert_main()/fastuidraw_gl_frag_main() of other shaders (for example to have a simple shader that adds on to a previous shader), a DependencyList provides the means to do so
 Cfastuidraw::glsl::PainterItemShaderGLSL::DependencyListIf one wishes to make use of other PainterItemShaderGLSL fastuidraw_gl_vert_main()/fastuidraw_gl_frag_main() of other shaders (for example to have a simple shader that adds on to a previous shader), a DependencyList provides the means to do so
 Cfastuidraw::false_typeClass for type traits to indicate true. Functionally, a simplified version of std::false_type
 Cfastuidraw_compute_image_atlas_coord_typeStructure to give information about what tile and where within a tile an image texel is located. Only available if FASTUIDRAW_IMAGE_ATLAS_DISABLED is not defined
 Cfastuidraw_dashed_stroking_params_header
 Cfastuidraw_image_extended_info_typeStructure that fully describes a fastuidraw::Image or a sub-image of one. Only available if FASTUIDRAW_IMAGE_ATLAS_DISABLED is not defined
 Cfastuidraw_image_info_typeStructure that describes the relationship between the master index tile and the color tiles of an image. Only available if FASTUIDRAW_IMAGE_ATLAS_DISABLED is not defined
 Cfastuidraw_image_texture_gather_output_typeStructure that holds the 2x2 texel block. Only available if FASTUIDRAW_IMAGE_ATLAS_DISABLED is not defined
 Cfastuidraw_stroking_params
 Cfastuidraw::FontDatabase::FontGroupA FontGroup represents a group of fonts which is selected from a FontProperties value. The accessors for FontGroup are methods of FontDatabase::parent_group(FontGroup), FontDatabase::fetch_font(FontGroup, unsigned int) and FontDatabase::number_fonts(FontGroup)
 Cfastuidraw::FontMetricsRepresents various metric values global to an entire font
 Cfastuidraw::FontPropertiesRepresents defining properties of a font used by FontDatabase to perform font merging
 Cfastuidraw::GlyphA Glyph is essentially an opaque pointer to data for rendering and performing layout of a glyph
 Cfastuidraw::gl::PainterEngineGL::GlyphAtlasParamsClass to hold the construction parameters for creating a GL-backend GlyphAtlas for a PainterEngineGL
 Cfastuidraw::GlyphAttributeA GlyphAttribute represents one Painter Attribute per glyph corner
 Cfastuidraw::GlyphMetricsA GlyphMetrics provides information on the metrics of a glyph, all the values are in units of the font glyph. The function units_per_EM() provides the conversion factor to pixel coordinates via $PixelCoordinates = FontCoordinates * PixelSize / units_per_EM()$ where PixelSize is the pixel size in which one is to render the text
 Cfastuidraw::GlyphMetricsValueA GlyphMetricsValue is to be used by a FontBase derived object to specify the values of a GlyphMetrics object
 Cfastuidraw::GlyphRenderCostInfo
 Cfastuidraw::GlyphRendererSpecifies how to render a glyph
 Cfastuidraw::Painter::GlyphRendererChooserA GlyphRendererChooser provides an interface for choosing how to render glyphs depending on the current transformation matrix, Painter::transformation()
 Cfastuidraw::GlyphSource
 Cfastuidraw::gpu_dirty_state
 Cfastuidraw::gl::PainterEngineGL::ImageAtlasParamsClass to hold the construction parameters for creating the GL-backend ImageAtlas for a PainterEngineGL
 Cfastuidraw::ImageSourceBaseImageSourceBase defines the inteface for copying texel data from a source (CPU memory, a file, etc) to an AtlasColorBackingStoreBase derived object
 Cfastuidraw::TessellatedPath::joinRepresents the geometric data for a join
 Cfastuidraw::glsl::ShaderSource::MacroSet
 Cfastuidraw::matrixNxM< N, M, T >A generic matrix class. The operator() is overloaded to access elements of the matrix as follows:
 Cfastuidraw::matrixNxM< 2, 2, float >
 Cfastuidraw::matrixNxM< 3, 3, float >
 Cfastuidraw::matrixNxM< 3, 3, T >
 Cfastuidraw::noncopyableClass for which copy ctor and assignment operator are private functions
 Cfastuidraw::Painter::NormalizedCoordRectA NormalizedCoordRect is used to specify a rectangle in -normalized- device coordinates. Recall that normalized device coordinates hae that the bottom-left is (-1, 1) and the top right is (+1, +1) ALWAYS
 Cfastuidraw::orthogonal_projection_params< T >An orthogonal_projection_params holds the data to describe an orthogonal projection matrix without perspective
 Cfastuidraw::StrokedPointPacking::packing_size< T, T >Template class taking as argument a PainterEnums::join_style or cap_type_t which defines two enumerations:
 Cfastuidraw::PainterAttributeThe attribute data generated/filled by Painter. Attribute data is sent to 3D API as raw bits with the expectation that shaders will cast the bits to the appropiate types for themselves
 Cfastuidraw::PainterBlendShaderSetA PainterBlendShaderSet represents a set of shaders for the blend modes enumerated by PainterEnums::blend_mode_t
 Cfastuidraw::PainterBrushAdjustA PainterBrushAdjust holds the value for applying a tranformation to the brush position before it is handed off to brush shading. The transformation is shearing composited with a translation, i.e. the transformation is given by
 Cfastuidraw::PainterBrushEnumsClass to contain various enumerations needed for describing a brush
 Cfastuidraw::PainterBrushShaderSetA PainterBrushShaderSet holds the PainterBrushShader objects to be used with the default brushes
 Cfastuidraw::PainterClipEquationsA PainterClipEquations stores the clip equation for Painter
 Cfastuidraw::PainterCustomBrushA PainterCustomBrush is just a conveniance to wrap a pointer to a PainterBrushShader together with a PainterDataValue<PainterBrushShaderData>
 Cfastuidraw::PainterDashedStrokeShaderSetA PainterDashedStrokeShaderSet holds a collection of PainterStrokeShaderSet objects for the purpose of dashed stroking. The shaders within a PainterDashedStrokeShaderSet are expected to draw any caps of dashed stroking from using just the edge data. In particular, attributes/indices for caps induced by stroking are NOT given to a shader within a PainterDashedStrokeShaderSet
 Cfastuidraw::PainterDataA PainterData provides the data for how for a Painter to draw content
 Cfastuidraw::PainterDataValue< T >Element of PainterData to hold shader data either reference directly to unpacked data or to reuseable packed data
 Cfastuidraw::PainterDataValue< fastuidraw::PainterBlendShaderData >
 Cfastuidraw::PainterDataValue< fastuidraw::PainterBrushShaderData >
 Cfastuidraw::PainterDataValue< fastuidraw::PainterItemShaderData >
 Cfastuidraw::PainterFillShaderA PainterFillShader holds the shaders for drawing filled paths. Anti-aliasing is accomplished by drawing 1-pixel thick rects about the boundary of the filled path
 Cfastuidraw::PainterGlyphShaderA PainterGlyphShader holds a shader for each glyph_type. The shaders are to handle attribute data as packed by Glyph::pack_glyph()
 Cfastuidraw::PainterHeaderA PainterHeader represents the values of the header for the shaders to read to draw data. The header holds data that is common for all vertices and fragments for an item to draw, including with what shader and the data for the shader
 Cfastuidraw::PainterItemMatrixA PainterItemMatrix holds the value for the transformation from item coordinates to the coordinates in which the clipping rectangle applies
 Cfastuidraw::PainterPackedValueBase(Private) base class used for PainterPackedValue
 Cfastuidraw::glsl::PainterShaderRegistrarGLSLTypes
 Cfastuidraw::PainterShaderSetA PainterShaderSet provides shaders for blending and drawing each of the item types glyphs, stroking paths and filling paths
 Cfastuidraw::PainterStrokeShaderA PainterStrokeShader holds shaders for stroking. It is to hold shaders for stroking paths linearly or via arcs with and without anti-aliasing along with meta-data to inform what shading is faster
 Cfastuidraw::PathEnumsClass to encapsulate enumerations used by Path and PathContour
 Cfastuidraw::PainterEngine::PerformanceHintsPerformanceHints provides miscellaneous data about Painter Backend objects returned by PainterEngine::create_backend() from a fixed PainterEngine
 Cfastuidraw::gl::PreLinkActionArrayA PreLinkActionArray is a conveniance class wrapper over an array of PreLinkAction handles
 Cfastuidraw::gl::ProgramInitializerArrayConveniance class to hold an array of handles of ProgramInitializer objects
 Cfastuidraw::projection_params< T >A projection_params holds the data to describe a projection matrix with perspective
 Cfastuidraw::GlyphRenderDataBandedRays::query_info
 Cfastuidraw::GlyphRenderDataRestrictedRays::query_info
 Cfastuidraw::range_type< T >A class reprenting the STL range [m_begin, m_end)
 Cfastuidraw::range_type< float >
 Cfastuidraw::range_type< int >
 Cfastuidraw::RectEnums
 Cfastuidraw::reference_counted< T >Defines default reference counting base classes
 Cfastuidraw::reference_counted_ptr< T >A wrapper over a pointer to implement reference counting
 Cfastuidraw::reference_counted_ptr< const fastuidraw::ColorStopSequence >
 Cfastuidraw::reference_counted_ptr< const fastuidraw::Image >
 Cfastuidraw::reference_counted_ptr< fastuidraw::PainterItemCoverageShader >
 Cfastuidraw::remove_const< T >
 Cfastuidraw::remove_const< T const >
 Cfastuidraw::same_const< T, S >
 Cfastuidraw::TessellatedPath::segmentRepresents segment of a tessellated or arc-tessellated path
 Cfastuidraw::TessellatedPath::segment_chain
 Cfastuidraw::gl::Program::shader_variable_infoA shader_variable_info holds the type, size and name of a uniform or an attribute of a GL program
 Cfastuidraw::glsl::PainterShaderRegistrarGLSLTypes::ShaderFilter< ShaderType >An ShaderFilter is used to specify whether or not to include a named shader when creating an uber-shader
 Cfastuidraw::glsl::ShaderSourceA ShaderSource represents the source code to a GLSL shader, specifying blocks of source code and macros to use
 Cfastuidraw::glsl::shareable_value_listA shareable_value_list is a list of values and their types that a shader will have computed after running. These can be used is shader-chaining to get some of the values made from a dependee shader
 Cfastuidraw::static_resourceProvided as a conveniance. The ctor calls generate_static_resource()
 Cfastuidraw::string_array
 Cfastuidraw::StrokedPointA StrokedPoint holds the data for a point of stroking where all segments are line segments (coming from curve tessellation). The upshot is that the fragment shader does NOT perform any coverage computation for non-dashed stroking. In addition, the data is so that changing the stroking width or miter limit does not change the stroking data
 Cfastuidraw::StrokingAttributeWriter::StrokingMethodStrokingMethod specifies how to pack the join and pack values from the source PathEffect::Storage
 Cfastuidraw::StrokingStyle
 Cfastuidraw::FilledPath::SubsetA Subset represents a handle to a portion of a FilledPath. The handle is invalid once the FilledPath from which it comes goes out of scope. Do not save these handle values without also saving a handle of the FilledPath from which they come
 Cfastuidraw::GlyphSequence::Subset
 Cfastuidraw::PartitionedTessellatedPath::SubsetA Subset represents a handle to a portion of a PartitionedTessellatedPath. The handle is invalid once the PartitionedTessellatedPath from which it comes goes out of scope. Do not save these handle values without also saving a handle of the PartitionedTessellatedPath from which they come
 Cfastuidraw::StrokedPath::SubsetA Subset represents a handle to a portion of a StrokedPath. The handle is invalid once the StrokedPath from which it comes goes out of scope. Do not save these handle values without also saving a handle of the StrokedPath from which they come. The region of a Subset is the exact same region as a PartitionedTessellatedPath::Subset object. Also, the ID() value for a Subset is the same value as PartitionedTessellatedPath::Subset::ID() as well
 Cfastuidraw::glsl::symbol_listA symbol_list embodies a varying_list along with a set of shareable values for the vertex and fragment shaders
 Cfastuidraw::PainterShader::TagA Tag is how a PainterShader is described for and by a PainterShaderRegistrar
 Cfastuidraw::TessellatedPath::TessellationParamsA TessellationParams stores how finely to tessellate the curves of a path
 Cfastuidraw::true_typeClass for type traits to indicate true. Functionally, a simplified version of std::true_type
 Cfastuidraw::glsl::PainterShaderRegistrarGLSLTypes::UberShaderParamsAn UberShaderParams specifies how to construct an uber-shader. Note that the usage of HW clip-planes is specified by ConfigurationGLSL, NOT UberShaderParams
 Cfastuidraw::glsl::UnpackSourceGeneratorAn unpack source generator is used to generate shader source code to unpack data from the data store buffer into a GLSL struct
 Cfastuidraw::unvecN< T >
 Cfastuidraw::glsl::varying_listA varying_list lists all the in's of a frag shader (and their names) which is the same as the out's of the vertex shader which which it is paired
 Cfastuidraw::vecN< T, N >VecN is a simple static array class with no virtual functions and no memory overhead. Supports runtim array index checking and STL style iterators via pointer iterators
 Cfastuidraw::vecN< fastuidraw::string_array, type_number_types >
 Cfastuidraw::vecN< fastuidraw::vecN, 4 >
 Cfastuidraw::vecN< float, 2 >
 Cfastuidraw::vecN< float, 4 >
 Cfastuidraw::vecN< float, N *M >
 Cfastuidraw::vecN< int32_t, 2 >
 Cfastuidraw::vecN< T, 2 >
 Cfastuidraw::vecN< T, N *M >
 Cfastuidraw::vecN< uint32_t, 2 >
 Cfastuidraw::vecN< uint32_t, 4 >
 Cfastuidraw::vecN< uint8_t, 4 >
 Cfastuidraw::vecN< vecN< float, 2 >, 4 >
 Cfastuidraw::PainterSurface::Viewport
 Cfastuidraw::PainterAttributeWriter::WriteState