8#ifndef skgpu_graphite_DrawOrder_DEFINED
9#define skgpu_graphite_DrawOrder_DEFINED
19template<
typename Sequence>
39 uint16_t
bits()
const {
return fIndex; }
112 inline static constexpr
120 , fDepth(originalOrder) {}
123 : fPaintOrder(compressedOrder)
125 , fDepth(originalOrder) {}
136 if (fPaintOrder <
next) {
145 fStencilIndex = disjointSet;
static float next(float f)
DrawOrder(PaintersDepth originalOrder)
static constexpr PaintersDepth kClearDepth
DrawOrder(PaintersDepth originalOrder, CompressedPaintersOrder compressedOrder)
static constexpr DisjointStencilIndex kUnassigned
DrawOrder & dependsOnStencil(DisjointStencilIndex disjointSet)
static constexpr CompressedPaintersOrder kNoIntersection
float depthAsFloat() const
DrawOrder & dependsOnPaintersOrder(CompressedPaintersOrder prevDraw)
CompressedPaintersOrder paintOrder() const
PaintersDepth depth() const
DisjointStencilIndex stencilIndex() const
bool operator==(MonotonicValue o) const
MonotonicValue(const MonotonicValue &o)=default
bool operator<=(MonotonicValue o) const
static constexpr MonotonicValue Last()
bool operator<(MonotonicValue o) const
static constexpr MonotonicValue First()
MonotonicValue & operator=(const MonotonicValue &o)=default
bool operator>(MonotonicValue o) const
bool operator!=(MonotonicValue o) const
MonotonicValue next() const
bool operator>=(MonotonicValue o) const