d836f84ab8
Golden SkSL outputs are intended to eventually replace the majority of our unit tests, since they can automatically update themselves when we change implementation details of the compiler. If you change the compiler output without updating the Golden files, the CheckGeneratedFiles housekeeper will be triggered. Set `skia_compile_processors` or `skia_compile_sksl_tests` to true in your GN args to regenerate them. Almost all of the tests from SkSLFPTests.cpp and SkSLGLSLTests.cpp can be migrated into separate unit-test .fp/.sksl files in a followup CL. hcm@ has signed off on removing the copyright boilerplate preamble from our unit test files. Change-Id: I9e24a944bbac8f8efd62c92481b022a0b1ecdd0b Bug: skia:10694 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/316336 Commit-Queue: John Stiles <johnstiles@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
56 lines
1.9 KiB
C++
56 lines
1.9 KiB
C++
/* HELLO WORLD */
|
|
|
|
/**************************************************************************************************
|
|
*** This file was autogenerated from GrHelloWorld.fp; do not modify.
|
|
**************************************************************************************************/
|
|
#include "GrHelloWorld.h"
|
|
|
|
#include "src/core/SkUtils.h"
|
|
#include "src/gpu/GrTexture.h"
|
|
#include "src/gpu/glsl/GrGLSLFragmentProcessor.h"
|
|
#include "src/gpu/glsl/GrGLSLFragmentShaderBuilder.h"
|
|
#include "src/gpu/glsl/GrGLSLProgramBuilder.h"
|
|
#include "src/sksl/SkSLCPP.h"
|
|
#include "src/sksl/SkSLUtil.h"
|
|
class GrGLSLHelloWorld : public GrGLSLFragmentProcessor {
|
|
public:
|
|
GrGLSLHelloWorld() {}
|
|
void emitCode(EmitArgs& args) override {
|
|
GrGLSLFPFragmentBuilder* fragBuilder = args.fFragBuilder;
|
|
const GrHelloWorld& _outer = args.fFp.cast<GrHelloWorld>();
|
|
(void) _outer;
|
|
fragBuilder->codeAppendf(
|
|
R"SkSL(%s = half4(1.0);
|
|
)SkSL"
|
|
, args.fOutputColor);
|
|
}
|
|
private:
|
|
void onSetData(const GrGLSLProgramDataManager& pdman, const GrFragmentProcessor& _proc) override {
|
|
}
|
|
};
|
|
GrGLSLFragmentProcessor* GrHelloWorld::onCreateGLSLInstance() const {
|
|
return new GrGLSLHelloWorld();
|
|
}
|
|
void GrHelloWorld::onGetGLSLProcessorKey(const GrShaderCaps& caps, GrProcessorKeyBuilder* b) const {
|
|
}
|
|
bool GrHelloWorld::onIsEqual(const GrFragmentProcessor& other) const {
|
|
const GrHelloWorld& that = other.cast<GrHelloWorld>();
|
|
(void) that;
|
|
return true;
|
|
}
|
|
bool GrHelloWorld::usesExplicitReturn() const {
|
|
return false;
|
|
}
|
|
GrHelloWorld::GrHelloWorld(const GrHelloWorld& src)
|
|
: INHERITED(kGrHelloWorld_ClassID, src.optimizationFlags()) {
|
|
this->cloneAndRegisterAllChildProcessors(src);
|
|
}
|
|
std::unique_ptr<GrFragmentProcessor> GrHelloWorld::clone() const {
|
|
return std::make_unique<GrHelloWorld>(*this);
|
|
}
|
|
#if GR_TEST_UTILS
|
|
SkString GrHelloWorld::onDumpInfo() const {
|
|
return SkString();
|
|
}
|
|
#endif
|