Skip to content

Commit d1c7a67

Browse files
mattleibowCopilot
andcommitted
Add maxSampleRadius to single-child C API
Pass sampleRadius through to C++ RuntimeShader single-child path instead of defaulting to 0. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 7a3037d commit d1c7a67

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

include/c/sk_runtimeeffect.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ SK_C_API void sk_runtimeeffect_unref(sk_runtimeeffect_t* effect);
1919
SK_C_API sk_shader_t* sk_runtimeeffect_make_shader(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, const sk_matrix_t* localMatrix);
2020
SK_C_API sk_colorfilter_t* sk_runtimeeffect_make_color_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount);
2121
SK_C_API sk_blender_t* sk_runtimeeffect_make_blender(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount);
22-
SK_C_API sk_imagefilter_t* sk_runtimeeffect_make_image_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, const char* childShaderName, const sk_imagefilter_t* input);
22+
SK_C_API sk_imagefilter_t* sk_runtimeeffect_make_image_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, float maxSampleRadius, const char* childShaderName, const sk_imagefilter_t* input);
2323
SK_C_API sk_imagefilter_t* sk_runtimeeffect_make_image_filter_with_children(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, float maxSampleRadius, const char** childShaderNames, const sk_imagefilter_t** inputs, int inputCount);
2424
SK_C_API size_t sk_runtimeeffect_get_uniform_byte_size(const sk_runtimeeffect_t* effect);
2525

src/c/sk_runtimeeffect.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ void sk_runtimeeffect_get_child_from_name(const sk_runtimeeffect_t* effect, cons
133133
*cchild = *ToRuntimeEffectChild(AsRuntimeEffect(effect)->findChild(std::string_view(name, len)));
134134
}
135135

136-
sk_imagefilter_t* sk_runtimeeffect_make_image_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, const char* childShaderName, const sk_imagefilter_t* input) {
136+
sk_imagefilter_t* sk_runtimeeffect_make_image_filter(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, float maxSampleRadius, const char* childShaderName, const sk_imagefilter_t* input) {
137137
SkRuntimeShaderBuilder builder(sk_ref_sp(AsRuntimeEffect(effect)), sk_ref_sp(AsData(uniforms)));
138138

139139
auto effectChildren = AsRuntimeEffect(effect)->children();
@@ -142,7 +142,7 @@ sk_imagefilter_t* sk_runtimeeffect_make_image_filter(sk_runtimeeffect_t* effect,
142142
}
143143

144144
std::string_view name = childShaderName ? std::string_view(childShaderName) : std::string_view();
145-
return ToImageFilter(SkImageFilters::RuntimeShader(builder, name, sk_ref_sp(AsImageFilter(input))).release());
145+
return ToImageFilter(SkImageFilters::RuntimeShader(builder, maxSampleRadius, name, sk_ref_sp(AsImageFilter(input))).release());
146146
}
147147

148148
sk_imagefilter_t* sk_runtimeeffect_make_image_filter_with_children(sk_runtimeeffect_t* effect, sk_data_t* uniforms, sk_flattenable_t** children, size_t childCount, float maxSampleRadius, const char** childShaderNames, const sk_imagefilter_t** inputs, int inputCount) {

0 commit comments

Comments
 (0)