1 /* 2 * Copyright (c) 2022-2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef RENDER_SERVICE_CLIENT_CORE_MODIFIER_RS_PROPERTY_MODIFIER_H 17 #define RENDER_SERVICE_CLIENT_CORE_MODIFIER_RS_PROPERTY_MODIFIER_H 18 19 #include "modifier/rs_modifier.h" 20 21 namespace OHOS { 22 namespace Rosen { 23 class RSC_EXPORT RSBoundsModifier : public RSGeometryModifier { 24 public: 25 explicit RSBoundsModifier(const std::shared_ptr<RSPropertyBase>& property); 26 virtual ~RSBoundsModifier() = default; 27 protected: 28 RSModifierType GetModifierType() const override; 29 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 30 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 31 }; 32 33 class RSC_EXPORT RSBoundsSizeModifier : public RSGeometryModifier { 34 public: 35 explicit RSBoundsSizeModifier(const std::shared_ptr<RSPropertyBase>& property); 36 virtual ~RSBoundsSizeModifier() = default; 37 protected: 38 RSModifierType GetModifierType() const override; 39 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 40 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 41 }; 42 43 class RSC_EXPORT RSBoundsPositionModifier : public RSGeometryModifier { 44 public: 45 explicit RSBoundsPositionModifier(const std::shared_ptr<RSPropertyBase>& property); 46 virtual ~RSBoundsPositionModifier() = default; 47 protected: 48 RSModifierType GetModifierType() const override; 49 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 50 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 51 }; 52 53 class RSC_EXPORT RSFrameModifier : public RSGeometryModifier { 54 public: 55 explicit RSFrameModifier(const std::shared_ptr<RSPropertyBase>& property); 56 virtual ~RSFrameModifier() = default; 57 protected: 58 RSModifierType GetModifierType() const override; 59 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 60 }; 61 62 class RSC_EXPORT RSPositionZModifier : public RSGeometryModifier { 63 public: 64 explicit RSPositionZModifier(const std::shared_ptr<RSPropertyBase>& property); 65 virtual ~RSPositionZModifier() = default; 66 protected: 67 RSModifierType GetModifierType() const override; 68 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 69 }; 70 71 class RSC_EXPORT RSPositionZApplicableCamera3DModifier : public RSGeometryModifier { 72 public: 73 explicit RSPositionZApplicableCamera3DModifier(const std::shared_ptr<RSPropertyBase>& property); 74 virtual ~RSPositionZApplicableCamera3DModifier() = default; 75 protected: 76 RSModifierType GetModifierType() const override; 77 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 78 }; 79 80 class RSC_EXPORT RSSandBoxModifier : public RSGeometryModifier { 81 public: 82 explicit RSSandBoxModifier(const std::shared_ptr<RSPropertyBase>& property); 83 virtual ~RSSandBoxModifier() = default; 84 protected: 85 RSModifierType GetModifierType() const override; 86 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 87 }; 88 89 class RSC_EXPORT RSPivotModifier : public RSGeometryModifier { 90 public: 91 explicit RSPivotModifier(const std::shared_ptr<RSPropertyBase>& property); 92 virtual ~RSPivotModifier() = default; 93 protected: 94 RSModifierType GetModifierType() const override; 95 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 96 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 97 }; 98 99 class RSC_EXPORT RSPivotZModifier : public RSGeometryModifier { 100 public: 101 explicit RSPivotZModifier(const std::shared_ptr<RSPropertyBase>& property); 102 virtual ~RSPivotZModifier() = default; 103 protected: 104 RSModifierType GetModifierType() const override; 105 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 106 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 107 }; 108 109 class RSC_EXPORT RSQuaternionModifier : public RSGeometryModifier { 110 public: 111 explicit RSQuaternionModifier(const std::shared_ptr<RSPropertyBase>& property); 112 virtual ~RSQuaternionModifier() = default; 113 protected: 114 RSModifierType GetModifierType() const override; 115 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 116 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 117 }; 118 119 class RSC_EXPORT RSRotationModifier : public RSGeometryModifier { 120 public: 121 explicit RSRotationModifier(const std::shared_ptr<RSPropertyBase>& property); 122 virtual ~RSRotationModifier() = default; 123 protected: 124 RSModifierType GetModifierType() const override; 125 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 126 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 127 }; 128 129 class RSC_EXPORT RSRotationXModifier : public RSGeometryModifier { 130 public: 131 explicit RSRotationXModifier(const std::shared_ptr<RSPropertyBase>& property); 132 virtual ~RSRotationXModifier() = default; 133 protected: 134 RSModifierType GetModifierType() const override; 135 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 136 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 137 }; 138 139 class RSC_EXPORT RSRotationYModifier : public RSGeometryModifier { 140 public: 141 explicit RSRotationYModifier(const std::shared_ptr<RSPropertyBase>& property); 142 virtual ~RSRotationYModifier() = default; 143 protected: 144 RSModifierType GetModifierType() const override; 145 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 146 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 147 }; 148 149 class RSC_EXPORT RSCameraDistanceModifier : public RSGeometryModifier { 150 public: 151 explicit RSCameraDistanceModifier(const std::shared_ptr<RSPropertyBase>& property); 152 virtual ~RSCameraDistanceModifier() = default; 153 protected: 154 RSModifierType GetModifierType() const override; 155 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 156 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 157 }; 158 159 class RSC_EXPORT RSScaleModifier : public RSGeometryModifier { 160 public: 161 explicit RSScaleModifier(const std::shared_ptr<RSPropertyBase>& property); 162 virtual ~RSScaleModifier() = default; 163 protected: 164 RSModifierType GetModifierType() const override; 165 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 166 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 167 }; 168 169 class RSC_EXPORT RSScaleZModifier : public RSGeometryModifier { 170 public: 171 explicit RSScaleZModifier(const std::shared_ptr<RSPropertyBase>& property); 172 virtual ~RSScaleZModifier() = default; 173 protected: 174 RSModifierType GetModifierType() const override; 175 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 176 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 177 }; 178 179 class RSC_EXPORT RSSkewModifier : public RSGeometryModifier { 180 public: 181 explicit RSSkewModifier(const std::shared_ptr<RSPropertyBase>& property); 182 virtual ~RSSkewModifier() = default; 183 protected: 184 RSModifierType GetModifierType() const override; 185 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 186 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 187 }; 188 189 class RSC_EXPORT RSPerspModifier : public RSGeometryModifier { 190 public: 191 explicit RSPerspModifier(const std::shared_ptr<RSPropertyBase>& property); 192 virtual ~RSPerspModifier() = default; 193 protected: 194 RSModifierType GetModifierType() const override; 195 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 196 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 197 }; 198 199 class RSC_EXPORT RSTranslateModifier : public RSGeometryModifier { 200 public: 201 explicit RSTranslateModifier(const std::shared_ptr<RSPropertyBase>& property); 202 virtual ~RSTranslateModifier() = default; 203 protected: 204 RSModifierType GetModifierType() const override; 205 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 206 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 207 }; 208 209 class RSC_EXPORT RSTranslateZModifier : public RSGeometryModifier { 210 public: 211 explicit RSTranslateZModifier(const std::shared_ptr<RSPropertyBase>& property); 212 virtual ~RSTranslateZModifier() = default; 213 protected: 214 RSModifierType GetModifierType() const override; 215 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 216 void Apply(const std::shared_ptr<RSObjAbsGeometry>& geometry) override; 217 }; 218 219 class RSC_EXPORT RSCornerRadiusModifier : public RSAppearanceModifier { 220 public: 221 explicit RSCornerRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 222 virtual ~RSCornerRadiusModifier() = default; 223 protected: 224 RSModifierType GetModifierType() const override; 225 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 226 }; 227 228 class RSC_EXPORT RSAlphaModifier : public RSAppearanceModifier { 229 public: 230 explicit RSAlphaModifier(const std::shared_ptr<RSPropertyBase>& property); 231 virtual ~RSAlphaModifier() = default; 232 protected: 233 RSModifierType GetModifierType() const override; 234 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 235 }; 236 237 class RSC_EXPORT RSAlphaOffscreenModifier : public RSAppearanceModifier { 238 public: 239 explicit RSAlphaOffscreenModifier(const std::shared_ptr<RSPropertyBase>& property); 240 virtual ~RSAlphaOffscreenModifier() = default; 241 protected: 242 RSModifierType GetModifierType() const override; 243 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 244 }; 245 246 class RS_EXPORT RSEnvForegroundColorModifier : public RSForegroundModifier { 247 public: 248 explicit RSEnvForegroundColorModifier(const std::shared_ptr<RSPropertyBase>& property); 249 virtual ~RSEnvForegroundColorModifier() = default; 250 251 protected: 252 RSModifierType GetModifierType() const override; 253 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 254 }; 255 256 class RS_EXPORT RSEnvForegroundColorStrategyModifier : public RSForegroundModifier { 257 public: 258 explicit RSEnvForegroundColorStrategyModifier(const std::shared_ptr<RSPropertyBase>& property); 259 virtual ~RSEnvForegroundColorStrategyModifier() = default; 260 261 protected: 262 RSModifierType GetModifierType() const override; 263 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 264 }; 265 266 class RSC_EXPORT RSForegroundColorModifier : public RSForegroundModifier { 267 public: 268 explicit RSForegroundColorModifier(const std::shared_ptr<RSPropertyBase>& property); 269 virtual ~RSForegroundColorModifier() = default; 270 protected: 271 RSModifierType GetModifierType() const override; 272 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 273 }; 274 275 class RSC_EXPORT RSUseShadowBatchingModifier : public RSBackgroundModifier { 276 public: 277 explicit RSUseShadowBatchingModifier(const std::shared_ptr<RSPropertyBase>& property); 278 virtual ~RSUseShadowBatchingModifier() = default; 279 protected: 280 RSModifierType GetModifierType() const override; 281 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 282 }; 283 284 class RSC_EXPORT RSBackgroundColorModifier : public RSBackgroundModifier { 285 public: 286 explicit RSBackgroundColorModifier(const std::shared_ptr<RSPropertyBase>& property); 287 virtual ~RSBackgroundColorModifier() = default; 288 protected: 289 RSModifierType GetModifierType() const override; 290 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 291 }; 292 293 class RSC_EXPORT RSBackgroundShaderModifier : public RSBackgroundModifier { 294 public: 295 explicit RSBackgroundShaderModifier(const std::shared_ptr<RSPropertyBase>& property); 296 virtual ~RSBackgroundShaderModifier() = default; 297 protected: 298 RSModifierType GetModifierType() const override; 299 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 300 }; 301 302 class RSC_EXPORT RSBackgroundShaderProgressModifier : public RSBackgroundModifier { 303 public: 304 explicit RSBackgroundShaderProgressModifier(const std::shared_ptr<RSPropertyBase>& property); 305 virtual ~RSBackgroundShaderProgressModifier() = default; 306 protected: 307 RSModifierType GetModifierType() const override; 308 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 309 }; 310 311 class RSC_EXPORT RSBgImageModifier : public RSBackgroundModifier { 312 public: 313 explicit RSBgImageModifier(const std::shared_ptr<RSPropertyBase>& property); 314 virtual ~RSBgImageModifier() = default; 315 protected: 316 RSModifierType GetModifierType() const override; 317 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 318 }; 319 320 class RSC_EXPORT RSBgImageInnerRectModifier : public RSBackgroundModifier { 321 public: 322 explicit RSBgImageInnerRectModifier(const std::shared_ptr<RSPropertyBase>& property); 323 virtual ~RSBgImageInnerRectModifier() = default; 324 protected: 325 RSModifierType GetModifierType() const override; 326 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 327 }; 328 329 class RSC_EXPORT RSBgImageWidthModifier : public RSBackgroundModifier { 330 public: 331 explicit RSBgImageWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 332 virtual ~RSBgImageWidthModifier() = default; 333 protected: 334 RSModifierType GetModifierType() const override; 335 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 336 }; 337 338 class RSC_EXPORT RSBgImageHeightModifier : public RSBackgroundModifier { 339 public: 340 explicit RSBgImageHeightModifier(const std::shared_ptr<RSPropertyBase>& property); 341 virtual ~RSBgImageHeightModifier() = default; 342 protected: 343 RSModifierType GetModifierType() const override; 344 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 345 }; 346 347 class RSC_EXPORT RSBgImagePositionXModifier : public RSBackgroundModifier { 348 public: 349 explicit RSBgImagePositionXModifier(const std::shared_ptr<RSPropertyBase>& property); 350 virtual ~RSBgImagePositionXModifier() = default; 351 protected: 352 RSModifierType GetModifierType() const override; 353 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 354 }; 355 356 class RSC_EXPORT RSBgImagePositionYModifier : public RSBackgroundModifier { 357 public: 358 explicit RSBgImagePositionYModifier(const std::shared_ptr<RSPropertyBase>& property); 359 virtual ~RSBgImagePositionYModifier() = default; 360 protected: 361 RSModifierType GetModifierType() const override; 362 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 363 }; 364 365 class RSC_EXPORT RSBorderColorModifier : public RSForegroundModifier { 366 public: 367 explicit RSBorderColorModifier(const std::shared_ptr<RSPropertyBase>& property); 368 virtual ~RSBorderColorModifier() = default; 369 protected: 370 RSModifierType GetModifierType() const override; 371 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 372 }; 373 374 class RSC_EXPORT RSBorderWidthModifier : public RSForegroundModifier { 375 public: 376 explicit RSBorderWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 377 virtual ~RSBorderWidthModifier() = default; 378 protected: 379 RSModifierType GetModifierType() const override; 380 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 381 }; 382 383 class RSC_EXPORT RSBorderStyleModifier : public RSForegroundModifier { 384 public: 385 explicit RSBorderStyleModifier(const std::shared_ptr<RSPropertyBase>& property); 386 virtual ~RSBorderStyleModifier() = default; 387 protected: 388 RSModifierType GetModifierType() const override; 389 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 390 }; 391 392 class RSC_EXPORT RSBorderDashWidthModifier : public RSForegroundModifier { 393 public: 394 explicit RSBorderDashWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 395 virtual ~RSBorderDashWidthModifier() = default; 396 protected: 397 RSModifierType GetModifierType() const override; 398 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 399 }; 400 401 class RSC_EXPORT RSBorderDashGapModifier : public RSForegroundModifier { 402 public: 403 explicit RSBorderDashGapModifier(const std::shared_ptr<RSPropertyBase>& property); 404 virtual ~RSBorderDashGapModifier() = default; 405 protected: 406 RSModifierType GetModifierType() const override; 407 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 408 }; 409 410 class RSC_EXPORT RSOutlineColorModifier : public RSForegroundModifier { 411 public: 412 explicit RSOutlineColorModifier(const std::shared_ptr<RSPropertyBase>& property); 413 virtual ~RSOutlineColorModifier() = default; 414 protected: 415 RSModifierType GetModifierType() const override; 416 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 417 }; 418 419 class RSC_EXPORT RSOutlineWidthModifier : public RSForegroundModifier { 420 public: 421 explicit RSOutlineWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 422 virtual ~RSOutlineWidthModifier() = default; 423 protected: 424 RSModifierType GetModifierType() const override; 425 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 426 }; 427 428 class RSC_EXPORT RSOutlineDashWidthModifier : public RSForegroundModifier { 429 public: 430 explicit RSOutlineDashWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 431 virtual ~RSOutlineDashWidthModifier() = default; 432 protected: 433 RSModifierType GetModifierType() const override; 434 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 435 }; 436 437 class RSC_EXPORT RSOutlineDashGapModifier : public RSForegroundModifier { 438 public: 439 explicit RSOutlineDashGapModifier(const std::shared_ptr<RSPropertyBase>& property); 440 virtual ~RSOutlineDashGapModifier() = default; 441 protected: 442 RSModifierType GetModifierType() const override; 443 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 444 }; 445 446 class RSC_EXPORT RSOutlineStyleModifier : public RSForegroundModifier { 447 public: 448 explicit RSOutlineStyleModifier(const std::shared_ptr<RSPropertyBase>& property); 449 virtual ~RSOutlineStyleModifier() = default; 450 protected: 451 RSModifierType GetModifierType() const override; 452 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 453 }; 454 455 class RSC_EXPORT RSOutlineRadiusModifier : public RSForegroundModifier { 456 public: 457 explicit RSOutlineRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 458 virtual ~RSOutlineRadiusModifier() = default; 459 protected: 460 RSModifierType GetModifierType() const override; 461 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 462 }; 463 464 class RSC_EXPORT RSForegroundEffectRadiusModifier : public RSForegroundModifier { 465 public: 466 explicit RSForegroundEffectRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 467 virtual ~RSForegroundEffectRadiusModifier() = default; 468 protected: 469 RSModifierType GetModifierType() const override; 470 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 471 }; 472 473 class RSC_EXPORT RSFilterModifier : public RSForegroundModifier { 474 public: 475 explicit RSFilterModifier(const std::shared_ptr<RSPropertyBase>& property); 476 virtual ~RSFilterModifier() = default; 477 protected: 478 RSModifierType GetModifierType() const override; 479 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 480 }; 481 482 class RSC_EXPORT RSBackgroundBlurRadiusModifier : public RSBackgroundModifier { 483 public: 484 explicit RSBackgroundBlurRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 485 virtual ~RSBackgroundBlurRadiusModifier() = default; 486 protected: 487 RSModifierType GetModifierType() const override; 488 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 489 }; 490 491 class RSC_EXPORT RSBackgroundBlurSaturationModifier : public RSBackgroundModifier { 492 public: 493 explicit RSBackgroundBlurSaturationModifier(const std::shared_ptr<RSPropertyBase>& property); 494 virtual ~RSBackgroundBlurSaturationModifier() = default; 495 protected: 496 RSModifierType GetModifierType() const override; 497 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 498 }; 499 500 class RSC_EXPORT RSBackgroundBlurBrightnessModifier : public RSBackgroundModifier { 501 public: 502 explicit RSBackgroundBlurBrightnessModifier(const std::shared_ptr<RSPropertyBase>& property); 503 virtual ~RSBackgroundBlurBrightnessModifier() = default; 504 protected: 505 RSModifierType GetModifierType() const override; 506 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 507 }; 508 509 class RSC_EXPORT RSBackgroundBlurMaskColorModifier : public RSBackgroundModifier { 510 public: 511 explicit RSBackgroundBlurMaskColorModifier(const std::shared_ptr<RSPropertyBase>& property); 512 virtual ~RSBackgroundBlurMaskColorModifier() = default; 513 protected: 514 RSModifierType GetModifierType() const override; 515 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 516 }; 517 518 class RSC_EXPORT RSBackgroundBlurColorModeModifier : public RSBackgroundModifier { 519 public: 520 explicit RSBackgroundBlurColorModeModifier(const std::shared_ptr<RSPropertyBase>& property); 521 virtual ~RSBackgroundBlurColorModeModifier() = default; 522 protected: 523 RSModifierType GetModifierType() const override; 524 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 525 }; 526 527 class RSC_EXPORT RSBackgroundBlurRadiusXModifier : public RSBackgroundModifier { 528 public: 529 explicit RSBackgroundBlurRadiusXModifier(const std::shared_ptr<RSPropertyBase>& property); 530 virtual ~RSBackgroundBlurRadiusXModifier() = default; 531 protected: 532 RSModifierType GetModifierType() const override; 533 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 534 }; 535 536 class RSC_EXPORT RSBackgroundBlurRadiusYModifier : public RSBackgroundModifier { 537 public: 538 explicit RSBackgroundBlurRadiusYModifier(const std::shared_ptr<RSPropertyBase>& property); 539 virtual ~RSBackgroundBlurRadiusYModifier() = default; 540 protected: 541 RSModifierType GetModifierType() const override; 542 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 543 }; 544 545 class RSC_EXPORT RSForegroundBlurRadiusModifier : public RSForegroundModifier { 546 public: 547 explicit RSForegroundBlurRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 548 virtual ~RSForegroundBlurRadiusModifier() = default; 549 protected: 550 RSModifierType GetModifierType() const override; 551 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 552 }; 553 554 class RSC_EXPORT RSForegroundBlurSaturationModifier : public RSForegroundModifier { 555 public: 556 explicit RSForegroundBlurSaturationModifier(const std::shared_ptr<RSPropertyBase>& property); 557 virtual ~RSForegroundBlurSaturationModifier() = default; 558 protected: 559 RSModifierType GetModifierType() const override; 560 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 561 }; 562 563 class RSC_EXPORT RSForegroundBlurBrightnessModifier : public RSForegroundModifier { 564 public: 565 explicit RSForegroundBlurBrightnessModifier(const std::shared_ptr<RSPropertyBase>& property); 566 virtual ~RSForegroundBlurBrightnessModifier() = default; 567 protected: 568 RSModifierType GetModifierType() const override; 569 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 570 }; 571 572 class RSC_EXPORT RSForegroundBlurMaskColorModifier : public RSForegroundModifier { 573 public: 574 explicit RSForegroundBlurMaskColorModifier(const std::shared_ptr<RSPropertyBase>& property); 575 virtual ~RSForegroundBlurMaskColorModifier() = default; 576 protected: 577 RSModifierType GetModifierType() const override; 578 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 579 }; 580 581 class RSC_EXPORT RSForegroundBlurColorModeModifier : public RSForegroundModifier { 582 public: 583 explicit RSForegroundBlurColorModeModifier(const std::shared_ptr<RSPropertyBase>& property); 584 virtual ~RSForegroundBlurColorModeModifier() = default; 585 protected: 586 RSModifierType GetModifierType() const override; 587 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 588 }; 589 590 class RSC_EXPORT RSForegroundBlurRadiusXModifier : public RSForegroundModifier { 591 public: 592 explicit RSForegroundBlurRadiusXModifier(const std::shared_ptr<RSPropertyBase>& property); 593 virtual ~RSForegroundBlurRadiusXModifier() = default; 594 protected: 595 RSModifierType GetModifierType() const override; 596 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 597 }; 598 599 class RSC_EXPORT RSForegroundBlurRadiusYModifier : public RSForegroundModifier { 600 public: 601 explicit RSForegroundBlurRadiusYModifier(const std::shared_ptr<RSPropertyBase>& property); 602 virtual ~RSForegroundBlurRadiusYModifier() = default; 603 protected: 604 RSModifierType GetModifierType() const override; 605 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 606 }; 607 608 class RSC_EXPORT RSLightUpEffectModifier : public RSForegroundModifier { 609 public: 610 explicit RSLightUpEffectModifier(const std::shared_ptr<RSPropertyBase>& property); 611 virtual ~RSLightUpEffectModifier() = default; 612 protected: 613 RSModifierType GetModifierType() const override; 614 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 615 }; 616 617 class RSC_EXPORT RSDynamicLightUpRateModifier : public RSForegroundModifier { 618 public: 619 explicit RSDynamicLightUpRateModifier(const std::shared_ptr<RSPropertyBase>& property); 620 virtual ~RSDynamicLightUpRateModifier() = default; 621 protected: 622 RSModifierType GetModifierType() const override; 623 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 624 }; 625 626 class RSC_EXPORT RSDynamicLightUpDegreeModifier : public RSForegroundModifier { 627 public: 628 explicit RSDynamicLightUpDegreeModifier(const std::shared_ptr<RSPropertyBase>& property); 629 virtual ~RSDynamicLightUpDegreeModifier() = default; 630 protected: 631 RSModifierType GetModifierType() const override; 632 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 633 }; 634 635 class RSC_EXPORT RSWaterRippleParamsModifier : public RSBackgroundModifier { 636 public: 637 explicit RSWaterRippleParamsModifier(const std::shared_ptr<RSPropertyBase>& property); 638 virtual ~RSWaterRippleParamsModifier() = default; 639 protected: 640 RSModifierType GetModifierType() const override; 641 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 642 }; 643 644 class RSC_EXPORT RSWaterRippleProgressModifier : public RSBackgroundModifier { 645 public: 646 explicit RSWaterRippleProgressModifier(const std::shared_ptr<RSPropertyBase>& property); 647 virtual ~RSWaterRippleProgressModifier() = default; 648 protected: 649 RSModifierType GetModifierType() const override; 650 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 651 }; 652 653 class RSC_EXPORT RSFlyOutParamsModifier : public RSForegroundModifier { 654 public: 655 explicit RSFlyOutParamsModifier(const std::shared_ptr<RSPropertyBase>& property); 656 virtual ~RSFlyOutParamsModifier() = default; 657 protected: 658 RSModifierType GetModifierType() const override; 659 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 660 }; 661 662 class RSC_EXPORT RSFlyOutDegreeModifier : public RSForegroundModifier { 663 public: 664 explicit RSFlyOutDegreeModifier(const std::shared_ptr<RSPropertyBase>& property); 665 virtual ~RSFlyOutDegreeModifier() = default; 666 protected: 667 RSModifierType GetModifierType() const override; 668 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 669 }; 670 671 class RSC_EXPORT RSDistortionKModifier : public RSForegroundModifier { 672 public: 673 explicit RSDistortionKModifier(const std::shared_ptr<RSPropertyBase>& property); 674 virtual ~RSDistortionKModifier() = default; 675 protected: 676 RSModifierType GetModifierType() const override; 677 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 678 }; 679 680 class RSC_EXPORT RSFgBrightnessRatesModifier : public RSForegroundModifier { 681 public: 682 explicit RSFgBrightnessRatesModifier(const std::shared_ptr<RSPropertyBase>& property); 683 virtual ~RSFgBrightnessRatesModifier() = default; 684 protected: 685 RSModifierType GetModifierType() const override; 686 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 687 }; 688 689 class RSC_EXPORT RSFgBrightnessSaturationModifier : public RSForegroundModifier { 690 public: 691 explicit RSFgBrightnessSaturationModifier(const std::shared_ptr<RSPropertyBase>& property); 692 virtual ~RSFgBrightnessSaturationModifier() = default; 693 protected: 694 RSModifierType GetModifierType() const override; 695 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 696 }; 697 698 class RSC_EXPORT RSFgBrightnessPosCoeffModifier : public RSForegroundModifier { 699 public: 700 explicit RSFgBrightnessPosCoeffModifier(const std::shared_ptr<RSPropertyBase>& property); 701 virtual ~RSFgBrightnessPosCoeffModifier() = default; 702 protected: 703 RSModifierType GetModifierType() const override; 704 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 705 }; 706 707 class RSC_EXPORT RSFgBrightnessNegCoeffModifier : public RSForegroundModifier { 708 public: 709 explicit RSFgBrightnessNegCoeffModifier(const std::shared_ptr<RSPropertyBase>& property); 710 virtual ~RSFgBrightnessNegCoeffModifier() = default; 711 protected: 712 RSModifierType GetModifierType() const override; 713 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 714 }; 715 716 class RSC_EXPORT RSFgBrightnessFractModifier : public RSForegroundModifier { 717 public: 718 explicit RSFgBrightnessFractModifier(const std::shared_ptr<RSPropertyBase>& property); 719 virtual ~RSFgBrightnessFractModifier() = default; 720 protected: 721 RSModifierType GetModifierType() const override; 722 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 723 }; 724 725 class RSC_EXPORT RSBgBrightnessRatesModifier : public RSBackgroundModifier { 726 public: 727 explicit RSBgBrightnessRatesModifier(const std::shared_ptr<RSPropertyBase>& property); 728 virtual ~RSBgBrightnessRatesModifier() = default; 729 protected: 730 RSModifierType GetModifierType() const override; 731 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 732 }; 733 734 class RSC_EXPORT RSBgBrightnessSaturationModifier : public RSBackgroundModifier { 735 public: 736 explicit RSBgBrightnessSaturationModifier(const std::shared_ptr<RSPropertyBase>& property); 737 virtual ~RSBgBrightnessSaturationModifier() = default; 738 protected: 739 RSModifierType GetModifierType() const override; 740 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 741 }; 742 743 class RSC_EXPORT RSBgBrightnessPosCoeffModifier : public RSBackgroundModifier { 744 public: 745 explicit RSBgBrightnessPosCoeffModifier(const std::shared_ptr<RSPropertyBase>& property); 746 virtual ~RSBgBrightnessPosCoeffModifier() = default; 747 protected: 748 RSModifierType GetModifierType() const override; 749 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 750 }; 751 752 class RSC_EXPORT RSBgBrightnessNegCoeffModifier : public RSBackgroundModifier { 753 public: 754 explicit RSBgBrightnessNegCoeffModifier(const std::shared_ptr<RSPropertyBase>& property); 755 virtual ~RSBgBrightnessNegCoeffModifier() = default; 756 protected: 757 RSModifierType GetModifierType() const override; 758 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 759 }; 760 761 class RSC_EXPORT RSBgBrightnessFractModifier : public RSBackgroundModifier { 762 public: 763 explicit RSBgBrightnessFractModifier(const std::shared_ptr<RSPropertyBase>& property); 764 virtual ~RSBgBrightnessFractModifier() = default; 765 protected: 766 RSModifierType GetModifierType() const override; 767 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 768 }; 769 770 class RSC_EXPORT RSDynamicDimDegreeModifier : public RSForegroundModifier { 771 public: 772 explicit RSDynamicDimDegreeModifier(const std::shared_ptr<RSPropertyBase>& property); 773 virtual ~RSDynamicDimDegreeModifier() = default; 774 protected: 775 RSModifierType GetModifierType() const override; 776 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 777 }; 778 779 class RSC_EXPORT RSEmitterUpdaterModifier : public RSForegroundModifier { 780 public: 781 explicit RSEmitterUpdaterModifier(const std::shared_ptr<RSPropertyBase>& property); 782 virtual ~RSEmitterUpdaterModifier() = default; 783 protected: 784 RSModifierType GetModifierType() const override; 785 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 786 }; 787 788 class RSC_EXPORT RSParticleNoiseFieldsModifier : public RSForegroundModifier { 789 public: 790 explicit RSParticleNoiseFieldsModifier(const std::shared_ptr<RSPropertyBase>& property); 791 virtual ~RSParticleNoiseFieldsModifier() = default; 792 protected: 793 RSModifierType GetModifierType() const override; 794 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 795 }; 796 797 class RSC_EXPORT RSLinearGradientBlurParaModifier : public RSForegroundModifier { 798 public: 799 explicit RSLinearGradientBlurParaModifier(const std::shared_ptr<RSPropertyBase>& property); 800 virtual ~RSLinearGradientBlurParaModifier() = default; 801 protected: 802 RSModifierType GetModifierType() const override; 803 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 804 }; 805 806 class RSC_EXPORT RSMotionBlurParaModifier : public RSForegroundModifier { 807 public: 808 explicit RSMotionBlurParaModifier(const std::shared_ptr<RSPropertyBase>& property); 809 virtual ~RSMotionBlurParaModifier() = default; 810 protected: 811 RSModifierType GetModifierType() const override; 812 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 813 }; 814 815 class RSC_EXPORT RSMagnifierParamsModifier : public RSForegroundModifier { 816 public: 817 explicit RSMagnifierParamsModifier(const std::shared_ptr<RSPropertyBase>& property); 818 virtual ~RSMagnifierParamsModifier() = default; 819 protected: 820 RSModifierType GetModifierType() const override; 821 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 822 }; 823 824 class RSC_EXPORT RSBackgroundFilterModifier : public RSBackgroundModifier { 825 public: 826 explicit RSBackgroundFilterModifier(const std::shared_ptr<RSPropertyBase>& property); 827 virtual ~RSBackgroundFilterModifier() = default; 828 protected: 829 RSModifierType GetModifierType() const override; 830 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 831 }; 832 833 class RSC_EXPORT RSFrameGravityModifier : public RSAppearanceModifier { 834 public: 835 explicit RSFrameGravityModifier(const std::shared_ptr<RSPropertyBase>& property); 836 virtual ~RSFrameGravityModifier() = default; 837 protected: 838 RSModifierType GetModifierType() const override; 839 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 840 }; 841 842 class RSC_EXPORT RSClipRRectModifier : public RSAppearanceModifier { 843 public: 844 explicit RSClipRRectModifier(const std::shared_ptr<RSPropertyBase>& property); 845 virtual ~RSClipRRectModifier() = default; 846 protected: 847 RSModifierType GetModifierType() const override; 848 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 849 }; 850 851 class RSC_EXPORT RSClipBoundsModifier : public RSAppearanceModifier { 852 public: 853 explicit RSClipBoundsModifier(const std::shared_ptr<RSPropertyBase>& property); 854 virtual ~RSClipBoundsModifier() = default; 855 protected: 856 RSModifierType GetModifierType() const override; 857 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 858 }; 859 860 class RSC_EXPORT RSClipToBoundsModifier : public RSAppearanceModifier { 861 public: 862 explicit RSClipToBoundsModifier(const std::shared_ptr<RSPropertyBase>& property); 863 virtual ~RSClipToBoundsModifier() = default; 864 protected: 865 RSModifierType GetModifierType() const override; 866 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 867 }; 868 869 class RSC_EXPORT RSClipToFrameModifier : public RSAppearanceModifier { 870 public: 871 explicit RSClipToFrameModifier(const std::shared_ptr<RSPropertyBase>& property); 872 virtual ~RSClipToFrameModifier() = default; 873 protected: 874 RSModifierType GetModifierType() const override; 875 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 876 }; 877 878 class RS_EXPORT RSCustomClipToFrameModifier : public RSForegroundModifier { 879 public: 880 explicit RSCustomClipToFrameModifier(const std::shared_ptr<RSPropertyBase>& property); 881 virtual ~RSCustomClipToFrameModifier() = default; 882 883 protected: 884 RSModifierType GetModifierType() const override; 885 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 886 }; 887 888 class RS_EXPORT RSHDRBrightnessModifier : public RSForegroundModifier { 889 public: 890 explicit RSHDRBrightnessModifier(const std::shared_ptr<RSPropertyBase>& property); 891 virtual ~RSHDRBrightnessModifier() = default; 892 893 protected: 894 RSModifierType GetModifierType() const override; 895 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 896 }; 897 898 class RSC_EXPORT RSVisibleModifier : public RSAppearanceModifier { 899 public: 900 explicit RSVisibleModifier(const std::shared_ptr<RSPropertyBase>& property); 901 virtual ~RSVisibleModifier() = default; 902 protected: 903 RSModifierType GetModifierType() const override; 904 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 905 }; 906 907 class RSC_EXPORT RSSpherizeModifier : public RSAppearanceModifier { 908 public: 909 explicit RSSpherizeModifier(const std::shared_ptr<RSPropertyBase>& property); 910 virtual ~RSSpherizeModifier() = default; 911 protected: 912 RSModifierType GetModifierType() const override; 913 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 914 }; 915 916 class RSC_EXPORT RSAttractionFractionModifier : public RSAppearanceModifier { 917 public: 918 explicit RSAttractionFractionModifier(const std::shared_ptr<RSPropertyBase>& property); 919 virtual ~RSAttractionFractionModifier() = default; 920 protected: 921 RSModifierType GetModifierType() const override; 922 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 923 }; 924 925 class RSC_EXPORT RSAttractionDstPointModifier : public RSAppearanceModifier { 926 public: 927 explicit RSAttractionDstPointModifier(const std::shared_ptr<RSPropertyBase>& property); 928 virtual ~RSAttractionDstPointModifier() = default; 929 protected: 930 RSModifierType GetModifierType() const override; 931 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 932 }; 933 934 class RSC_EXPORT RSShadowColorModifier : public RSBackgroundModifier { 935 public: 936 explicit RSShadowColorModifier(const std::shared_ptr<RSPropertyBase>& property); 937 virtual ~RSShadowColorModifier() = default; 938 protected: 939 RSModifierType GetModifierType() const override; 940 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 941 }; 942 943 class RSC_EXPORT RSShadowOffsetXModifier : public RSBackgroundModifier { 944 public: 945 explicit RSShadowOffsetXModifier(const std::shared_ptr<RSPropertyBase>& property); 946 virtual ~RSShadowOffsetXModifier() = default; 947 protected: 948 RSModifierType GetModifierType() const override; 949 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 950 }; 951 952 class RSC_EXPORT RSShadowOffsetYModifier : public RSBackgroundModifier { 953 public: 954 explicit RSShadowOffsetYModifier(const std::shared_ptr<RSPropertyBase>& property); 955 virtual ~RSShadowOffsetYModifier() = default; 956 protected: 957 RSModifierType GetModifierType() const override; 958 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 959 }; 960 961 class RSC_EXPORT RSShadowAlphaModifier : public RSBackgroundModifier { 962 public: 963 explicit RSShadowAlphaModifier(const std::shared_ptr<RSPropertyBase>& property); 964 virtual ~RSShadowAlphaModifier() = default; 965 protected: 966 RSModifierType GetModifierType() const override; 967 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 968 }; 969 970 class RSC_EXPORT RSShadowElevationModifier : public RSBackgroundModifier { 971 public: 972 explicit RSShadowElevationModifier(const std::shared_ptr<RSPropertyBase>& property); 973 virtual ~RSShadowElevationModifier() = default; 974 protected: 975 RSModifierType GetModifierType() const override; 976 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 977 }; 978 979 class RSC_EXPORT RSShadowRadiusModifier : public RSBackgroundModifier { 980 public: 981 explicit RSShadowRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 982 virtual ~RSShadowRadiusModifier() = default; 983 protected: 984 RSModifierType GetModifierType() const override; 985 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 986 }; 987 988 class RSC_EXPORT RSShadowPathModifier : public RSBackgroundModifier { 989 public: 990 explicit RSShadowPathModifier(const std::shared_ptr<RSPropertyBase>& property); 991 virtual ~RSShadowPathModifier() = default; 992 protected: 993 RSModifierType GetModifierType() const override; 994 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 995 }; 996 997 class RSC_EXPORT RSShadowMaskModifier : public RSBackgroundModifier { 998 public: 999 explicit RSShadowMaskModifier(const std::shared_ptr<RSPropertyBase>& property); 1000 virtual ~RSShadowMaskModifier() = default; 1001 protected: 1002 RSModifierType GetModifierType() const override; 1003 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1004 }; 1005 1006 class RSC_EXPORT RSShadowIsFilledModifier : public RSBackgroundModifier { 1007 public: 1008 explicit RSShadowIsFilledModifier(const std::shared_ptr<RSPropertyBase>& property); 1009 virtual ~RSShadowIsFilledModifier() = default; 1010 protected: 1011 RSModifierType GetModifierType() const override; 1012 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1013 }; 1014 1015 class RSC_EXPORT RSGreyCoefModifier : public RSBackgroundModifier { 1016 public: 1017 explicit RSGreyCoefModifier(const std::shared_ptr<RSPropertyBase>& property); 1018 virtual ~RSGreyCoefModifier() = default; 1019 protected: 1020 RSModifierType GetModifierType() const override; 1021 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1022 }; 1023 1024 class RSC_EXPORT RSMaskModifier : public RSForegroundModifier { 1025 public: 1026 explicit RSMaskModifier(const std::shared_ptr<RSPropertyBase>& property); 1027 virtual ~RSMaskModifier() = default; 1028 protected: 1029 RSModifierType GetModifierType() const override; 1030 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1031 }; 1032 1033 class RSC_EXPORT RSPixelStretchModifier : public RSGeometryModifier { 1034 public: 1035 explicit RSPixelStretchModifier(const std::shared_ptr<RSPropertyBase>& property); 1036 virtual ~RSPixelStretchModifier() = default; 1037 protected: 1038 RSModifierType GetModifierType() const override; 1039 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1040 }; 1041 1042 class RSC_EXPORT RSPixelStretchPercentModifier : public RSGeometryModifier { 1043 public: 1044 explicit RSPixelStretchPercentModifier(const std::shared_ptr<RSPropertyBase>& property); 1045 virtual ~RSPixelStretchPercentModifier() = default; 1046 protected: 1047 RSModifierType GetModifierType() const override; 1048 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1049 }; 1050 1051 class RSC_EXPORT RSPixelStretchTileModeModifier : public RSGeometryModifier { 1052 public: 1053 explicit RSPixelStretchTileModeModifier(const std::shared_ptr<RSPropertyBase>& property); 1054 virtual ~RSPixelStretchTileModeModifier() = default; 1055 protected: 1056 RSModifierType GetModifierType() const override; 1057 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1058 }; 1059 1060 class RSC_EXPORT RSGrayScaleModifier : public RSForegroundModifier { 1061 public: 1062 explicit RSGrayScaleModifier(const std::shared_ptr<RSPropertyBase>& property); 1063 virtual ~RSGrayScaleModifier() = default; 1064 protected: 1065 RSModifierType GetModifierType() const override; 1066 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1067 }; 1068 1069 class RSC_EXPORT RSLightIntensityModifier : public RSForegroundModifier { 1070 public: 1071 explicit RSLightIntensityModifier(const std::shared_ptr<RSPropertyBase>& property); 1072 virtual ~RSLightIntensityModifier() = default; 1073 protected: 1074 RSModifierType GetModifierType() const override; 1075 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1076 }; 1077 1078 class RSC_EXPORT RSLightColorModifier : public RSForegroundModifier { 1079 public: 1080 explicit RSLightColorModifier(const std::shared_ptr<RSPropertyBase>& property); 1081 virtual ~RSLightColorModifier() = default; 1082 protected: 1083 RSModifierType GetModifierType() const override; 1084 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1085 }; 1086 1087 class RSC_EXPORT RSIlluminatedTypeModifier : public RSForegroundModifier { 1088 public: 1089 explicit RSIlluminatedTypeModifier(const std::shared_ptr<RSPropertyBase>& property); 1090 virtual ~RSIlluminatedTypeModifier() = default; 1091 protected: 1092 RSModifierType GetModifierType() const override; 1093 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1094 }; 1095 1096 class RSC_EXPORT RSLightPositionModifier : public RSForegroundModifier { 1097 public: 1098 explicit RSLightPositionModifier(const std::shared_ptr<RSPropertyBase>& property); 1099 virtual ~RSLightPositionModifier() = default; 1100 protected: 1101 RSModifierType GetModifierType() const override; 1102 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1103 }; 1104 1105 class RSC_EXPORT RSIlluminatedBorderWidthModifier : public RSForegroundModifier { 1106 public: 1107 explicit RSIlluminatedBorderWidthModifier(const std::shared_ptr<RSPropertyBase>& property); 1108 virtual ~RSIlluminatedBorderWidthModifier() = default; 1109 protected: 1110 RSModifierType GetModifierType() const override; 1111 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1112 }; 1113 1114 class RSC_EXPORT RSBloomModifier : public RSForegroundModifier { 1115 public: 1116 explicit RSBloomModifier(const std::shared_ptr<RSPropertyBase>& property); 1117 virtual ~RSBloomModifier() = default; 1118 protected: 1119 RSModifierType GetModifierType() const override; 1120 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1121 }; 1122 1123 class RSC_EXPORT RSBrightnessModifier : public RSForegroundModifier { 1124 public: 1125 explicit RSBrightnessModifier(const std::shared_ptr<RSPropertyBase>& property); 1126 virtual ~RSBrightnessModifier() = default; 1127 protected: 1128 RSModifierType GetModifierType() const override; 1129 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1130 }; 1131 1132 class RSC_EXPORT RSContrastModifier : public RSForegroundModifier { 1133 public: 1134 explicit RSContrastModifier(const std::shared_ptr<RSPropertyBase>& property); 1135 virtual ~RSContrastModifier() = default; 1136 protected: 1137 RSModifierType GetModifierType() const override; 1138 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1139 }; 1140 1141 class RSC_EXPORT RSSaturateModifier : public RSForegroundModifier { 1142 public: 1143 explicit RSSaturateModifier(const std::shared_ptr<RSPropertyBase>& property); 1144 virtual ~RSSaturateModifier() = default; 1145 protected: 1146 RSModifierType GetModifierType() const override; 1147 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1148 }; 1149 1150 class RSC_EXPORT RSSepiaModifier : public RSForegroundModifier { 1151 public: 1152 explicit RSSepiaModifier(const std::shared_ptr<RSPropertyBase>& property); 1153 virtual ~RSSepiaModifier() = default; 1154 protected: 1155 RSModifierType GetModifierType() const override; 1156 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1157 }; 1158 1159 class RSC_EXPORT RSInvertModifier : public RSForegroundModifier { 1160 public: 1161 explicit RSInvertModifier(const std::shared_ptr<RSPropertyBase>& property); 1162 virtual ~RSInvertModifier() = default; 1163 protected: 1164 RSModifierType GetModifierType() const override; 1165 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1166 }; 1167 1168 class RSC_EXPORT RSAiInvertModifier : public RSForegroundModifier { 1169 public: 1170 explicit RSAiInvertModifier(const std::shared_ptr<RSPropertyBase>& property); 1171 virtual ~RSAiInvertModifier() = default; 1172 protected: 1173 RSModifierType GetModifierType() const override; 1174 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1175 }; 1176 1177 class RSC_EXPORT RSSystemBarEffectModifier : public RSBackgroundModifier { 1178 public: 1179 explicit RSSystemBarEffectModifier(const std::shared_ptr<RSPropertyBase>& property); 1180 virtual ~RSSystemBarEffectModifier() = default; 1181 protected: 1182 RSModifierType GetModifierType() const override; 1183 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1184 }; 1185 1186 class RSC_EXPORT RSHueRotateModifier : public RSForegroundModifier { 1187 public: 1188 explicit RSHueRotateModifier(const std::shared_ptr<RSPropertyBase>& property); 1189 virtual ~RSHueRotateModifier() = default; 1190 protected: 1191 RSModifierType GetModifierType() const override; 1192 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1193 }; 1194 1195 class RSC_EXPORT RSColorBlendModifier : public RSForegroundModifier { 1196 public: 1197 explicit RSColorBlendModifier(const std::shared_ptr<RSPropertyBase>& property); 1198 virtual ~RSColorBlendModifier() = default; 1199 protected: 1200 RSModifierType GetModifierType() const override; 1201 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1202 }; 1203 1204 class RSC_EXPORT RSUseEffectModifier : public RSBackgroundModifier { 1205 public: 1206 explicit RSUseEffectModifier(const std::shared_ptr<RSPropertyBase>& property); 1207 virtual ~RSUseEffectModifier() = default; 1208 protected: 1209 RSModifierType GetModifierType() const override; 1210 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1211 }; 1212 1213 class RSC_EXPORT RSUseEffectTypeModifier : public RSBackgroundModifier { 1214 public: 1215 explicit RSUseEffectTypeModifier(const std::shared_ptr<RSPropertyBase>& property); 1216 virtual ~RSUseEffectTypeModifier() = default; 1217 protected: 1218 RSModifierType GetModifierType() const override; 1219 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1220 }; 1221 1222 class RSC_EXPORT RSBehindWindowFilterEnabledModifier : public RSBackgroundModifier { 1223 public: 1224 explicit RSBehindWindowFilterEnabledModifier(const std::shared_ptr<RSPropertyBase>& property); 1225 virtual ~RSBehindWindowFilterEnabledModifier() = default; 1226 protected: 1227 RSModifierType GetModifierType() const override; 1228 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1229 }; 1230 1231 class RSC_EXPORT RSBehindWindowFilterRadiusModifier : public RSBackgroundModifier { 1232 public: 1233 explicit RSBehindWindowFilterRadiusModifier(const std::shared_ptr<RSPropertyBase>& property); 1234 virtual ~RSBehindWindowFilterRadiusModifier() = default; 1235 protected: 1236 RSModifierType GetModifierType() const override; 1237 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1238 }; 1239 1240 class RSC_EXPORT RSBehindWindowFilterSaturationModifier : public RSBackgroundModifier { 1241 public: 1242 explicit RSBehindWindowFilterSaturationModifier(const std::shared_ptr<RSPropertyBase>& property); 1243 virtual ~RSBehindWindowFilterSaturationModifier() = default; 1244 protected: 1245 RSModifierType GetModifierType() const override; 1246 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1247 }; 1248 1249 class RSC_EXPORT RSBehindWindowFilterBrightnessModifier : public RSBackgroundModifier { 1250 public: 1251 explicit RSBehindWindowFilterBrightnessModifier(const std::shared_ptr<RSPropertyBase>& property); 1252 virtual ~RSBehindWindowFilterBrightnessModifier() = default; 1253 protected: 1254 RSModifierType GetModifierType() const override; 1255 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1256 }; 1257 1258 class RSC_EXPORT RSBehindWindowFilterMaskColorModifier : public RSBackgroundModifier { 1259 public: 1260 explicit RSBehindWindowFilterMaskColorModifier(const std::shared_ptr<RSPropertyBase>& property); 1261 virtual ~RSBehindWindowFilterMaskColorModifier() = default; 1262 protected: 1263 RSModifierType GetModifierType() const override; 1264 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1265 }; 1266 1267 class RSC_EXPORT RSColorBlendModeModifier : public RSBackgroundModifier { 1268 public: 1269 explicit RSColorBlendModeModifier(const std::shared_ptr<RSPropertyBase>& property); 1270 virtual ~RSColorBlendModeModifier() = default; 1271 protected: 1272 RSModifierType GetModifierType() const override; 1273 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1274 }; 1275 1276 class RSC_EXPORT RSColorBlendApplyTypeModifier : public RSBackgroundModifier { 1277 public: 1278 explicit RSColorBlendApplyTypeModifier(const std::shared_ptr<RSPropertyBase>& property); 1279 virtual ~RSColorBlendApplyTypeModifier() = default; 1280 protected: 1281 RSModifierType GetModifierType() const override; 1282 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1283 }; 1284 1285 class RSC_EXPORT RSShadowColorStrategyModifier : public RSBackgroundModifier { 1286 public: 1287 explicit RSShadowColorStrategyModifier(const std::shared_ptr<RSPropertyBase>& property); 1288 virtual ~RSShadowColorStrategyModifier() = default; 1289 protected: 1290 RSModifierType GetModifierType() const override; 1291 std::shared_ptr<RSRenderModifier> CreateRenderModifier() const override; 1292 }; 1293 } // namespace Rosen 1294 } // namespace OHOS 1295 1296 #endif // RENDER_SERVICE_CLIENT_CORE_MODIFIER_RS_PROPERTY_MODIFIER_H 1297