1 /* 2 * Copyright (c) 2024 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 META_INTERFACE_BUILTIN_ANIMATIONS_H 17 #define META_INTERFACE_BUILTIN_ANIMATIONS_H 18 19 #include <meta/base/namespace.h> 20 #include <meta/base/types.h> 21 22 META_BEGIN_NAMESPACE() 23 24 /** Animation controller */ 25 META_REGISTER_CLASS(AnimationController, "32ccf293-e684-46e3-b733-85f9bbcc703c", ObjectCategoryBits::NO_CATEGORY) 26 27 /** Animation containers */ 28 META_REGISTER_CLASS(SequentialAnimation, "4fa1577f-2096-49b9-8327-2b7f2d9a6363", ObjectCategoryBits::ANIMATION) 29 META_REGISTER_CLASS(ParallelAnimation, "09a6805a-cfac-4ea5-b39d-dbc07cb05d79", ObjectCategoryBits::ANIMATION) 30 31 /** Property animation types */ 32 META_REGISTER_CLASS(PropertyAnimation, "f28ac10f-9410-46e6-bf1c-613557d2d391", ObjectCategoryBits::ANIMATION) 33 META_REGISTER_CLASS(KeyframeAnimation, "78d13777-10b4-43de-925d-c9ad7c28874a", ObjectCategoryBits::ANIMATION) 34 META_REGISTER_CLASS(TrackAnimation, "acdcc754-8d97-4a4d-8885-67fb8e35ca12", ObjectCategoryBits::ANIMATION) 35 36 /** Animation modifiers */ 37 META_REGISTER_CLASS( 38 LoopAnimationModifier, "b16ff5f2-8b37-476b-ab4e-84db1fc8e5f2", ObjectCategoryBits::ANIMATION_MODIFIER) 39 META_REGISTER_CLASS( 40 SpeedAnimationModifier, "f265ac2b-edc7-4d80-bffb-1cfa290fd118", ObjectCategoryBits::ANIMATION_MODIFIER) 41 META_REGISTER_CLASS( 42 ReverseAnimationModifier, "274784a4-bdf5-4cb2-9468-d17299364f17", ObjectCategoryBits::ANIMATION_MODIFIER) 43 44 /** Interpolator types */ 45 META_REGISTER_SINGLETON_CLASS(FloatInterpolator, "a419ec55-de61-44ca-b38c-c3e90c20ae43", ObjectCategoryBits::INTERNAL) 46 META_REGISTER_SINGLETON_CLASS(DoubleInterpolator, "7af8c81d-a7ed-4daa-ad6e-5cd50d9146bf", ObjectCategoryBits::INTERNAL) 47 META_REGISTER_SINGLETON_CLASS(UInt8Interpolator, "9d49b47e-4070-49e8-b6aa-53c7de5c5467", ObjectCategoryBits::INTERNAL) 48 META_REGISTER_SINGLETON_CLASS(UInt16Interpolator, "0c01dda0-effb-48c4-8913-7f207da453b9", ObjectCategoryBits::INTERNAL) 49 META_REGISTER_SINGLETON_CLASS(UInt32Interpolator, "3961c6de-96c1-49b1-8cc2-778816a2a560", ObjectCategoryBits::INTERNAL) 50 META_REGISTER_SINGLETON_CLASS(UInt64Interpolator, "25d90077-1c4b-4637-9409-774a63b569f0", ObjectCategoryBits::INTERNAL) 51 META_REGISTER_SINGLETON_CLASS(Int8Interpolator, "a9615d85-20d6-4685-a530-1459b896cc93", ObjectCategoryBits::INTERNAL) 52 META_REGISTER_SINGLETON_CLASS(Int16Interpolator, "b311b907-7082-41c6-96a5-0bc7d50ff994", ObjectCategoryBits::INTERNAL) 53 META_REGISTER_SINGLETON_CLASS(Int32Interpolator, "6d0ffdb2-5067-491d-8b74-8345e8633b93", ObjectCategoryBits::INTERNAL) 54 META_REGISTER_SINGLETON_CLASS(Int64Interpolator, "4872d903-a5e3-4695-b111-7799f888a7ed", ObjectCategoryBits::INTERNAL) 55 META_REGISTER_SINGLETON_CLASS(Vec2Interpolator, "94e0b14c-b278-4d3e-896e-dff0f64c539c", ObjectCategoryBits::INTERNAL) 56 META_REGISTER_SINGLETON_CLASS(Vec3Interpolator, "bccaa813-f363-481f-956f-f6c4189ec856", ObjectCategoryBits::INTERNAL) 57 META_REGISTER_SINGLETON_CLASS(Vec4Interpolator, "bef3ed39-f685-4c21-bd86-77bde62a03b7", ObjectCategoryBits::INTERNAL) 58 META_REGISTER_SINGLETON_CLASS(UVec2Interpolator, "14f191e7-0e1c-4066-819f-c4579c7a93b3", ObjectCategoryBits::INTERNAL) 59 META_REGISTER_SINGLETON_CLASS(UVec3Interpolator, "534682fe-09c1-4f01-846c-f22d2b895dfc", ObjectCategoryBits::INTERNAL) 60 META_REGISTER_SINGLETON_CLASS(UVec4Interpolator, "12e8ba49-5077-45a4-8753-4e7c451a00f1", ObjectCategoryBits::INTERNAL) 61 META_REGISTER_SINGLETON_CLASS(IVec2Interpolator, "3cc6de25-323c-4671-aad4-23e2a782fdde", ObjectCategoryBits::INTERNAL) 62 META_REGISTER_SINGLETON_CLASS(IVec3Interpolator, "4fd8ad06-bac7-4dda-bd91-e96148a7a29c", ObjectCategoryBits::INTERNAL) 63 META_REGISTER_SINGLETON_CLASS(IVec4Interpolator, "437fe435-3d71-4ef2-ac37-b422ad00ced9", ObjectCategoryBits::INTERNAL) 64 META_REGISTER_SINGLETON_CLASS(QuatInterpolator, "21b7a73f-3389-4107-8c04-902b0768d7cf", ObjectCategoryBits::INTERNAL) 65 META_REGISTER_SINGLETON_CLASS(DefaultInterpolator, "7011a72b-ce36-4f17-a017-daeef39cf57c", ObjectCategoryBits::INTERNAL) 66 67 /** Easing curves */ 68 META_REGISTER_SINGLETON_CLASS(LinearEasingCurve, "849f98a4-03dd-4b12-ae59-72a5eb6914c2", ObjectCategoryBits::CURVE) 69 META_REGISTER_SINGLETON_CLASS(InQuadEasingCurve, "8cdf008d-5266-4877-8ff7-ceb19997e485", ObjectCategoryBits::CURVE) 70 META_REGISTER_SINGLETON_CLASS(OutQuadEasingCurve, "8df10f87-b508-4727-a97a-66e6c348346d", ObjectCategoryBits::CURVE) 71 META_REGISTER_SINGLETON_CLASS(InOutQuadEasingCurve, "25412788-ee21-4665-adfb-ad5d4deed592", ObjectCategoryBits::CURVE) 72 META_REGISTER_SINGLETON_CLASS(InCubicEasingCurve, "efe63f17-ad14-49a9-8083-9a963eab2ec6", ObjectCategoryBits::CURVE) 73 META_REGISTER_SINGLETON_CLASS(OutCubicEasingCurve, "2ff9d5d1-0de9-40ef-8222-bb841245a027", ObjectCategoryBits::CURVE) 74 META_REGISTER_SINGLETON_CLASS(InOutCubicEasingCurve, "cd1858f6-0bbd-420e-b72e-baaf5bec333c", ObjectCategoryBits::CURVE) 75 META_REGISTER_SINGLETON_CLASS(InSineEasingCurve, "784695ed-1e31-4829-b780-d837152d35fc", ObjectCategoryBits::CURVE) 76 META_REGISTER_SINGLETON_CLASS(OutSineEasingCurve, "baeaa8b2-e69b-472a-a161-76d3c04bd6b6", ObjectCategoryBits::CURVE) 77 META_REGISTER_SINGLETON_CLASS(InOutSineEasingCurve, "e183b7af-949d-4a78-92ba-3fe3b4e5cfec", ObjectCategoryBits::CURVE) 78 META_REGISTER_SINGLETON_CLASS(InQuartEasingCurve, "edf9877d-1486-4342-b36c-59bdda6994b5", ObjectCategoryBits::CURVE) 79 META_REGISTER_SINGLETON_CLASS(OutQuartEasingCurve, "ed0affff-cc84-4863-8f44-5d20fdc4ea86", ObjectCategoryBits::CURVE) 80 META_REGISTER_SINGLETON_CLASS(InOutQuartEasingCurve, "9f858bfc-e11a-4e69-a02f-ed8ccc6249f5", ObjectCategoryBits::CURVE) 81 META_REGISTER_SINGLETON_CLASS(InQuintEasingCurve, "34fc80e8-9e62-478e-8f7e-72a8df7a278c", ObjectCategoryBits::CURVE) 82 META_REGISTER_SINGLETON_CLASS(OutQuintEasingCurve, "d28e6874-e7f2-414a-ae84-c38b016279af", ObjectCategoryBits::CURVE) 83 META_REGISTER_SINGLETON_CLASS(InOutQuintEasingCurve, "3f25d8fb-d0e6-44d6-a6dc-00eee4c7f642", ObjectCategoryBits::CURVE) 84 META_REGISTER_SINGLETON_CLASS(InExpoEasingCurve, "ddb621d4-de30-42c3-acb3-5d755237fc5a", ObjectCategoryBits::CURVE) 85 META_REGISTER_SINGLETON_CLASS(OutExpoEasingCurve, "65038ea5-5121-4b33-bbc4-8961c556b7e4", ObjectCategoryBits::CURVE) 86 META_REGISTER_SINGLETON_CLASS(InOutExpoEasingCurve, "55c64ecc-4f13-48c6-bacc-be69c5fab32d", ObjectCategoryBits::CURVE) 87 META_REGISTER_SINGLETON_CLASS(InCircEasingCurve, "79dfe129-6930-40c8-8fb1-b5c4375b65c7", ObjectCategoryBits::CURVE) 88 META_REGISTER_SINGLETON_CLASS(OutCircEasingCurve, "3a2f76ff-f966-4828-b4ef-d66a5f502801", ObjectCategoryBits::CURVE) 89 META_REGISTER_SINGLETON_CLASS(InOutCircEasingCurve, "6f03058d-389f-4fb6-8c77-5bb0e9a84ec0", ObjectCategoryBits::CURVE) 90 META_REGISTER_SINGLETON_CLASS(InBackEasingCurve, "0a4d2948-ccb4-48d4-8d1b-61d1bf65a2f6", ObjectCategoryBits::CURVE) 91 META_REGISTER_SINGLETON_CLASS(OutBackEasingCurve, "3651feb8-46cc-41d0-bf6b-4f692f07206c", ObjectCategoryBits::CURVE) 92 META_REGISTER_SINGLETON_CLASS(InOutBackEasingCurve, "9995161e-bc6e-45d0-9b47-2ca624ffd323", ObjectCategoryBits::CURVE) 93 META_REGISTER_SINGLETON_CLASS(InElasticEasingCurve, "2f0069d9-0cd5-479a-89ef-bf1dba8fba33", ObjectCategoryBits::CURVE) 94 META_REGISTER_SINGLETON_CLASS(OutElasticEasingCurve, "e67e747b-d1a0-4a88-b443-32866437e787", ObjectCategoryBits::CURVE) 95 META_REGISTER_SINGLETON_CLASS( 96 InOutElasticEasingCurve, "9be248cb-c778-4ae8-b4f4-9035ef3ba142", ObjectCategoryBits::CURVE) 97 META_REGISTER_SINGLETON_CLASS(InBounceEasingCurve, "7bbb09aa-85b6-4082-8d4a-5ccbe30e6cb7", ObjectCategoryBits::CURVE) 98 META_REGISTER_SINGLETON_CLASS(OutBounceEasingCurve, "72375660-1277-434e-9bb7-e4621c3ec855", ObjectCategoryBits::CURVE) 99 META_REGISTER_SINGLETON_CLASS(InOutBounceEasingCurve, "6fcad301-dace-48a8-8f53-cbfd7f0b2480", ObjectCategoryBits::CURVE) 100 META_REGISTER_SINGLETON_CLASS(StepStartEasingCurve, "293aeff7-aa4f-403c-b284-aa3358a91469", ObjectCategoryBits::CURVE) 101 META_REGISTER_SINGLETON_CLASS(StepEndEasingCurve, "3b1f2d61-f9e5-4d8b-a041-fe216d265628", ObjectCategoryBits::CURVE) 102 103 META_REGISTER_CLASS(CubicBezierEasingCurve, "72e786e9-3c8f-404a-89f7-ee49144d3a03", ObjectCategoryBits::CURVE) 104 105 META_END_NAMESPACE() 106 107 #endif 108