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-components/model-node.h>
22 #include <dali-csharp-binder/common/common.h>
28 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_New_SWIG_0()
30 Dali::Scene3D::ModelNode result;
34 result = Dali::Scene3D::ModelNode::New();
36 CALL_CATCH_EXCEPTION(0);
39 return new Dali::Scene3D::ModelNode((const Dali::Scene3D::ModelNode&)result);
42 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_new_Model_Node_SWIG_0()
44 Dali::Scene3D::ModelNode* result = 0;
49 result = (Dali::Scene3D::ModelNode*)new Dali::Scene3D::ModelNode();
51 CALL_CATCH_EXCEPTION(0);
57 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_new_Model_Node_SWIG_1(void* csModel)
59 Dali::Scene3D::ModelNode* model = (Dali::Scene3D::ModelNode*)csModel;
60 Dali::Scene3D::ModelNode* result = 0;
64 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Scene3D::ModelNode const & type is null", 0);
70 result = (Dali::Scene3D::ModelNode*)new Dali::Scene3D::ModelNode((Dali::Scene3D::ModelNode const&)*model);
72 CALL_CATCH_EXCEPTION(0);
78 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_delete_Model_Node(void* csModel)
80 Dali::Scene3D::ModelNode* model = (Dali::Scene3D::ModelNode*)csModel;
86 CALL_CATCH_EXCEPTION();
90 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_Assign(void* csDestination, void* csSource)
92 Dali::Scene3D::ModelNode* destination = (Dali::Scene3D::ModelNode*)csDestination;
93 Dali::Scene3D::ModelNode* source = (Dali::Scene3D::ModelNode*)csSource;
94 Dali::Scene3D::ModelNode* result = 0;
98 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Dali::Scene3D::ModelNode const & type is null", 0);
104 result = (Dali::Scene3D::ModelNode*)&(destination)->operator=((Dali::Scene3D::ModelNode const&)*source);
106 CALL_CATCH_EXCEPTION(0);
109 return (void*)result;
112 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_DownCast(void* csHandle)
114 Dali::BaseHandle* handle = (Dali::BaseHandle*)csHandle;
115 Dali::Scene3D::ModelNode result;
119 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
125 result = Dali::Scene3D::ModelNode::DownCast(*handle);
127 CALL_CATCH_EXCEPTION(0);
130 return new Dali::Scene3D::ModelNode((const Dali::Scene3D::ModelNode&)result);
133 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Model_Node_GetModelPrimitiveCount(void* csModelNode)
135 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
139 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
145 return modelNode->GetModelPrimitiveCount();
147 CALL_CATCH_EXCEPTION(0);
151 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Model_Node_AddModelPrimitive(void* csModelNode, void* csModelPrimitive)
153 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
154 Dali::Scene3D::ModelPrimitive* modelPrimitive = (Dali::Scene3D::ModelPrimitive*)csModelPrimitive;
158 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
163 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelPrimitive", 0);
169 modelNode->AddModelPrimitive(*modelPrimitive);
171 CALL_CATCH_EXCEPTION();
175 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Model_Node_RemoveModelPrimitive1(void* csModelNode, void* csModelPrimitive)
177 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
178 Dali::Scene3D::ModelPrimitive* modelPrimitive = (Dali::Scene3D::ModelPrimitive*)csModelPrimitive;
182 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
187 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelPrimitive", 0);
193 modelNode->RemoveModelPrimitive(*modelPrimitive);
195 CALL_CATCH_EXCEPTION();
199 SWIGEXPORT void SWIGSTDCALL CSharp_Dali_Model_Node_RemoveModelPrimitive2(void* csModelNode, unsigned int index)
201 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
205 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
211 modelNode->RemoveModelPrimitive(index);
213 CALL_CATCH_EXCEPTION();
217 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_GetModelPrimitive(void* csModelNode, unsigned int index)
219 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
220 Dali::Scene3D::ModelPrimitive result;
224 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
230 result = modelNode->GetModelPrimitive(index);
232 CALL_CATCH_EXCEPTION(nullptr);
234 return new Dali::Scene3D::ModelPrimitive((const Dali::Scene3D::ModelPrimitive&)result);
237 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_FindChildModelNodeByName(void* csModelNode, char* nodeName)
239 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
240 Dali::Scene3D::ModelNode result;
244 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
250 result = modelNode->FindChildModelNodeByName(nodeName);
252 CALL_CATCH_EXCEPTION(nullptr);
254 return new Dali::Scene3D::ModelNode((const Dali::Scene3D::ModelNode&)result);
257 SWIGEXPORT unsigned int SWIGSTDCALL CSharp_Dali_Model_Node_GetChildModelNodeCount(void* csModelNode)
259 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
263 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
269 return modelNode->GetChildCount();
271 CALL_CATCH_EXCEPTION(0);
275 SWIGEXPORT void* SWIGSTDCALL CSharp_Dali_Model_Node_GetChildModelNodeAt(void* csModelNode, uint32_t index)
277 Dali::Scene3D::ModelNode* modelNode = (Dali::Scene3D::ModelNode*)csModelNode;
278 Dali::Scene3D::ModelNode result;
282 SWIG_CSharpSetPendingExceptionArgument(SWIG_CSharpArgumentNullException, "Attempt to dereference null Dali::Scene3D::ModelNode", 0);
288 Dali::Actor actor = modelNode->GetChildAt(index);
289 result = Dali::Scene3D::ModelNode::DownCast(actor);
291 CALL_CATCH_EXCEPTION(nullptr);
293 return new Dali::Scene3D::ModelNode((const Dali::Scene3D::ModelNode&)result);