Donner SVG 0.8.0
0.8.0 ยท ebf353960.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
donner::svg::components::CpuTransientBufferCount Struct Reference

Computes one CPU primitive's transient float-buffer demand. More...

#include "donner/svg/components/filter/FilterGraph.h"

Public Member Functions

std::uint64_t operator() (const filter_primitive::GaussianBlur &) const
 None when the graph's only node blurs the source graphic, otherwise one.
std::uint64_t operator() (const filter_primitive::Merge &) const
 One, plus one per input when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::Blend &) const
 One, plus two when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::Composite &) const
 One, plus two when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::DisplacementMap &) const
 One, plus two when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::ConvolveMatrix &) const
 One, plus one when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::Morphology &) const
 One, plus one when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::DiffuseLighting &) const
 One, plus one when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::SpecularLighting &) const
 One, plus one when converting to linearRGB.
std::uint64_t operator() (const filter_primitive::DropShadow &) const
 Five, plus one when converting to linearRGB.
template<typename Primitive>
std::uint64_t operator() (const Primitive &) const
 One for every other primitive.

Public Attributes

const FilterGraph & graph
 Graph that owns the node.
const FilterNode & node
 Node whose primitive is measured.
bool linearRgb
 Whether the node converts its inputs to linearRGB.

Detailed Description

Computes one CPU primitive's transient float-buffer demand.

Each call operator returns the number of transient full-surface float buffers that one primitive type needs while it runs.


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