Lines Matching defs:const
41 sk_sp<SkShader> makeInvertAlpha() const;
42 sk_sp<SkShader> makeWithCTM(const SkMatrix&) const; // owns its own ctm
48 virtual bool isConstant() const { return false; }
50 const SkMatrix& getLocalMatrix() const { return fLocalMatrix; }
56 /** set if the spans only vary in X (const in Y).
72 ContextRec(const SkPaint& paint, const SkMatrix& matrix, const SkMatrix* localM,
82 const SkMatrix* fMatrix; // the current matrix in the canvas
83 const SkMatrix* fLocalMatrix; // optional local matrix
89 bool isLegacyCompatible(SkColorSpace* shadersColorSpace) const;
94 Context(const SkShaderBase& shader, const ContextRec&);
105 virtual uint32_t getFlags() const { return 0; }
116 const SkShaderBase& fShader;
118 uint8_t getPaintAlpha() const { return fPaintAlpha; }
119 const SkMatrix& getTotalInverse() const { return fTotalInverse; }
120 const SkMatrix& getCTM() const { return fCTM; }
135 Context* makeContext(const ContextRec&, SkArenaAlloc*) const;
151 virtual std::unique_ptr<GrFragmentProcessor> asFragmentProcessor(const GrFPArgs&) const;
162 bool asLuminanceColor(SkColor*) const;
166 bool appendStages(const SkStageRec&) const;
168 bool SK_WARN_UNUSED_RESULT computeTotalInverse(const SkMatrix& ctm,
169 const SkMatrix* outerLocalMatrix,
170 SkMatrix* totalInverse) const;
176 SkTCopyOnFirstWrite<SkMatrix> totalLocalMatrix(const SkMatrix* preLocalMatrix) const;
178 virtual SkImage* onIsAImage(SkMatrix*, SkTileMode[2]) const {
182 virtual SkRuntimeEffect* asRuntimeEffect() const { return nullptr; }
185 Type getFlattenableType() const override { return GetFlattenableType(); }
187 static sk_sp<SkShaderBase> Deserialize(const void* data, size_t size,
188 const SkDeserialProcs* procs = nullptr) {
198 virtual sk_sp<SkShader> makeAsALocalMatrixShader(SkMatrix* localMatrix) const;
200 SkUpdatableShader* updatableShader(SkArenaAlloc* alloc) const;
201 virtual SkUpdatableShader* onUpdatableShader(SkArenaAlloc* alloc) const;
203 SkStageUpdater* appendUpdatableStages(const SkStageRec& rec) const {
209 const SkMatrixProvider&, const SkMatrix* localM, const SkColorInfo& dst,
210 skvm::Uniforms* uniforms, SkArenaAlloc* alloc) const;
213 SkShaderBase(const SkMatrix* localMatrix = nullptr);
215 void flatten(SkWriteBuffer&) const override;
222 virtual Context* onMakeContext(const ContextRec&, SkArenaAlloc*) const {
227 virtual bool onAsLuminanceColor(SkColor*) const {
232 virtual bool onAppendStages(const SkStageRec&) const;
234 virtual SkStageUpdater* onAppendUpdatableStages(const SkStageRec&) const { return nullptr; }
237 static skvm::Coord ApplyMatrix(skvm::Builder*, const SkMatrix&, skvm::Coord, skvm::Uniforms*);
240 // This is essentially const, but not officially so it can be modified in constructors.
245 const SkMatrixProvider&, const SkMatrix* localM,
246 const SkColorInfo& dst, skvm::Uniforms*, SkArenaAlloc*) const = 0;
264 virtual bool SK_WARN_UNUSED_RESULT update(const SkMatrix& ctm) const = 0;
272 Factory getFactory() const override { return nullptr; }
273 const char* getTypeName() const override { return nullptr; }
280 inline const SkShaderBase* as_SB(const SkShader* shader) {
281 return static_cast<const SkShaderBase*>(shader);
284 inline const SkShaderBase* as_SB(const sk_sp<SkShader>& shader) {