Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | List of all members
skgpu::graphite::ShaderNode Class Reference

#include <ShaderCodeDictionary.h>

Public Member Functions

 ShaderNode (const ShaderSnippet *snippet, SkSpan< const ShaderNode * > children, int codeID, int keyIndex)
 
int32_t codeSnippetId () const
 
int32_t keyIndex () const
 
const ShaderSnippetentry () const
 
SkEnumBitMask< SnippetRequirementFlagsrequiredFlags () const
 
int numChildren () const
 
SkSpan< const ShaderNode * > children () const
 
const ShaderNodechild (int childIndex) const
 

Detailed Description

Definition at line 129 of file ShaderCodeDictionary.h.

Constructor & Destructor Documentation

◆ ShaderNode()

skgpu::graphite::ShaderNode::ShaderNode ( const ShaderSnippet snippet,
SkSpan< const ShaderNode * >  children,
int  codeID,
int  keyIndex 
)
inline

Definition at line 132 of file ShaderCodeDictionary.h.

136 : fEntry(snippet)
137 , fChildren(children)
138 , fCodeID(codeID)
139 , fKeyIndex(keyIndex)
140 , fRequiredFlags(snippet->fSnippetRequirementFlags) {
141 SkASSERT(children.size() == (size_t) fEntry->fNumChildren);
142 // TODO: RuntimeEffects can actually mask off requirements if they invoke a child with
143 // explicit arguments.
144 for (const ShaderNode* child : children) {
145 fRequiredFlags |= child->requiredFlags();
146 }
147 }
#define SkASSERT(cond)
Definition SkAssert.h:116
const ShaderNode * child(int childIndex) const
SkSpan< const ShaderNode * > children() const
SkEnumBitMask< SnippetRequirementFlags > requiredFlags() const

Member Function Documentation

◆ child()

const ShaderNode * skgpu::graphite::ShaderNode::child ( int  childIndex) const
inline

Definition at line 157 of file ShaderCodeDictionary.h.

157{ return fChildren[childIndex]; }

◆ children()

SkSpan< const ShaderNode * > skgpu::graphite::ShaderNode::children ( ) const
inline

Definition at line 156 of file ShaderCodeDictionary.h.

156{ return fChildren; }

◆ codeSnippetId()

int32_t skgpu::graphite::ShaderNode::codeSnippetId ( ) const
inline

Definition at line 149 of file ShaderCodeDictionary.h.

149{ return fCodeID; }

◆ entry()

const ShaderSnippet * skgpu::graphite::ShaderNode::entry ( ) const
inline

Definition at line 151 of file ShaderCodeDictionary.h.

151{ return fEntry; }

◆ keyIndex()

int32_t skgpu::graphite::ShaderNode::keyIndex ( ) const
inline

Definition at line 150 of file ShaderCodeDictionary.h.

150{ return fKeyIndex; }

◆ numChildren()

int skgpu::graphite::ShaderNode::numChildren ( ) const
inline

Definition at line 155 of file ShaderCodeDictionary.h.

155{ return fEntry->fNumChildren; }

◆ requiredFlags()

SkEnumBitMask< SnippetRequirementFlags > skgpu::graphite::ShaderNode::requiredFlags ( ) const
inline

Definition at line 153 of file ShaderCodeDictionary.h.

153{ return fRequiredFlags; }

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