2 * Copyright (c) 2023 Samsung Electronics Co., Ltd.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
19 #include <dali-scene3d/public-api/model-motion/motion-index/motion-transform-index.h>
22 #include <dali-scene3d/internal/model-motion/motion-index/motion-transform-index-impl.h>
28 MotionTransformIndex MotionTransformIndex::New()
30 Internal::MotionTransformIndexPtr internal = Internal::MotionTransformIndex::New();
32 return MotionTransformIndex(internal.Get());
35 MotionTransformIndex MotionTransformIndex::New(Property::Key modelNodeId, TransformType type)
37 Internal::MotionTransformIndexPtr internal = Internal::MotionTransformIndex::New();
39 internal->SetModelNodeId(modelNodeId);
40 internal->SetTransformType(type);
42 return MotionTransformIndex(internal.Get());
45 MotionTransformIndex::MotionTransformIndex()
49 MotionTransformIndex::MotionTransformIndex(const MotionTransformIndex& motionTransformIndex) = default;
51 MotionTransformIndex::MotionTransformIndex(MotionTransformIndex&& rhs) noexcept = default;
53 MotionTransformIndex::~MotionTransformIndex()
57 MotionTransformIndex& MotionTransformIndex::operator=(const MotionTransformIndex& handle) = default;
59 MotionTransformIndex& MotionTransformIndex::operator=(MotionTransformIndex&& rhs) noexcept = default;
61 MotionTransformIndex MotionTransformIndex::DownCast(BaseHandle handle)
63 return MotionTransformIndex(dynamic_cast<Dali::Scene3D::Internal::MotionTransformIndex*>(handle.GetObjectPtr()));
66 MotionTransformIndex::MotionTransformIndex(Dali::Scene3D::Internal::MotionTransformIndex* internal)
67 : MotionIndex(internal)
73 void MotionTransformIndex::SetTransformType(MotionTransformIndex::TransformType type)
75 GetImplementation(*this).SetTransformType(type);
78 MotionTransformIndex::TransformType MotionTransformIndex::GetTransformType() const
80 return GetImplementation(*this).GetTransformType();
83 } // namespace Scene3D