Merge "[MediaContent] Fixed possible deadlock issues of async methods."
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / Renderer.cs
1 /** Copyright (c) 2017 Samsung Electronics Co., Ltd.
2 *
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
17 namespace Tizen.NUI
18 {
19     /// <summary>
20     /// Renderer is a handle to an object used to show content by combining a Geometry, a TextureSet and a shader.
21     /// </summary>
22     public class Renderer : Animatable
23     {
24         private global::System.Runtime.InteropServices.HandleRef swigCPtr;
25
26         internal Renderer(global::System.IntPtr cPtr, bool cMemoryOwn) : base(NDalicPINVOKE.Renderer_SWIGUpcast(cPtr), cMemoryOwn)
27         {
28             swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
29         }
30
31         internal static global::System.Runtime.InteropServices.HandleRef getCPtr(Renderer obj)
32         {
33             return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
34         }
35
36         protected override void Dispose(DisposeTypes type)
37         {
38             if (disposed)
39             {
40                 return;
41             }
42
43             if (type == DisposeTypes.Explicit)
44             {
45                 //Called by User
46                 //Release your own managed resources here.
47                 //You should release all of your own disposable objects here.
48
49             }
50
51             //Release your own unmanaged resources here.
52             //You should not access any managed member here except static instance.
53             //because the execution order of Finalizes is non-deterministic.
54
55
56             if (swigCPtr.Handle != global::System.IntPtr.Zero)
57             {
58                 if (swigCMemOwn)
59                 {
60                     swigCMemOwn = false;
61                     NDalicPINVOKE.delete_Renderer(swigCPtr);
62                 }
63                 swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
64             }
65
66             base.Dispose(type);
67         }
68
69         public class Property
70         {
71             public static readonly int DEPTH_INDEX = NDalicPINVOKE.Renderer_Property_DEPTH_INDEX_get();
72             public static readonly int FACE_CULLING_MODE = NDalicPINVOKE.Renderer_Property_FACE_CULLING_MODE_get();
73             public static readonly int BLEND_MODE = NDalicPINVOKE.Renderer_Property_BLEND_MODE_get();
74             public static readonly int BLEND_EQUATION_RGB = NDalicPINVOKE.Renderer_Property_BLEND_EQUATION_RGB_get();
75             public static readonly int BLEND_EQUATION_ALPHA = NDalicPINVOKE.Renderer_Property_BLEND_EQUATION_ALPHA_get();
76             public static readonly int BLEND_FACTOR_SRC_RGB = NDalicPINVOKE.Renderer_Property_BLEND_FACTOR_SRC_RGB_get();
77             public static readonly int BLEND_FACTOR_DEST_RGB = NDalicPINVOKE.Renderer_Property_BLEND_FACTOR_DEST_RGB_get();
78             public static readonly int BLEND_FACTOR_SRC_ALPHA = NDalicPINVOKE.Renderer_Property_BLEND_FACTOR_SRC_ALPHA_get();
79             public static readonly int BLEND_FACTOR_DEST_ALPHA = NDalicPINVOKE.Renderer_Property_BLEND_FACTOR_DEST_ALPHA_get();
80             public static readonly int BLEND_COLOR = NDalicPINVOKE.Renderer_Property_BLEND_COLOR_get();
81             public static readonly int BLEND_PRE_MULTIPLIED_ALPHA = NDalicPINVOKE.Renderer_Property_BLEND_PRE_MULTIPLIED_ALPHA_get();
82             public static readonly int INDEX_RANGE_FIRST = NDalicPINVOKE.Renderer_Property_INDEX_RANGE_FIRST_get();
83             public static readonly int INDEX_RANGE_COUNT = NDalicPINVOKE.Renderer_Property_INDEX_RANGE_COUNT_get();
84             public static readonly int DEPTH_WRITE_MODE = NDalicPINVOKE.Renderer_Property_DEPTH_WRITE_MODE_get();
85             public static readonly int DEPTH_FUNCTION = NDalicPINVOKE.Renderer_Property_DEPTH_FUNCTION_get();
86             public static readonly int DEPTH_TEST_MODE = NDalicPINVOKE.Renderer_Property_DEPTH_TEST_MODE_get();
87             public static readonly int RENDER_MODE = NDalicPINVOKE.Renderer_Property_RENDER_MODE_get();
88             public static readonly int STENCIL_FUNCTION = NDalicPINVOKE.Renderer_Property_STENCIL_FUNCTION_get();
89             public static readonly int STENCIL_FUNCTION_MASK = NDalicPINVOKE.Renderer_Property_STENCIL_FUNCTION_MASK_get();
90             public static readonly int STENCIL_FUNCTION_REFERENCE = NDalicPINVOKE.Renderer_Property_STENCIL_FUNCTION_REFERENCE_get();
91             public static readonly int STENCIL_MASK = NDalicPINVOKE.Renderer_Property_STENCIL_MASK_get();
92             public static readonly int STENCIL_OPERATION_ON_FAIL = NDalicPINVOKE.Renderer_Property_STENCIL_OPERATION_ON_FAIL_get();
93             public static readonly int STENCIL_OPERATION_ON_Z_FAIL = NDalicPINVOKE.Renderer_Property_STENCIL_OPERATION_ON_Z_FAIL_get();
94             public static readonly int STENCIL_OPERATION_ON_Z_PASS = NDalicPINVOKE.Renderer_Property_STENCIL_OPERATION_ON_Z_PASS_get();
95
96         }
97
98         /// <summary>
99         /// Create an instance of Renderer.
100         /// </summary>
101         /// <since_tizen> 3 </since_tizen>
102         public Renderer(Geometry geometry, Shader shader) : this(NDalicPINVOKE.Renderer_New(Geometry.getCPtr(geometry), Shader.getCPtr(shader)), true)
103         {
104             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
105
106         }
107
108         /// <summary>
109         /// Sets the geometry to be used by this renderer.
110         /// </summary>
111         /// <param name="geometry">The geometry to be used by this renderer.</param>
112         /// <since_tizen> 3 </since_tizen>
113         public void SetGeometry(Geometry geometry)
114         {
115             NDalicPINVOKE.Renderer_SetGeometry(swigCPtr, Geometry.getCPtr(geometry));
116             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
117         }
118
119         /// <summary>
120         /// Gets the geometry used by this renderer.
121         /// </summary>
122         /// <returns>The geometry used by the renderer.</returns>
123         /// <since_tizen> 3 </since_tizen>
124         public Geometry GetGeometry()
125         {
126             System.IntPtr cPtr = NDalicPINVOKE.Renderer_GetGeometry(swigCPtr);
127             Geometry ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as Geometry;
128
129             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
130             return ret;
131         }
132
133         /// <summary>
134         /// Sets effective range of indices to draw from bound index buffer.
135         /// </summary>
136         /// <param name="firstElement">The First element to draw.</param>
137         /// <param name="elementsCount">The number of elements to draw.</param>
138         /// <since_tizen> 3 </since_tizen>
139         public void SetIndexRange(int firstElement, int elementsCount)
140         {
141             NDalicPINVOKE.Renderer_SetIndexRange(swigCPtr, firstElement, elementsCount);
142             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
143         }
144
145         /// <summary>
146         /// Sets the texture set to be used by this renderer.
147         /// </summary>
148         /// <param name="textureSet">The texture set to be used by this renderer.</param>
149         /// <since_tizen> 3 </since_tizen>
150         public void SetTextures(TextureSet textureSet)
151         {
152             NDalicPINVOKE.Renderer_SetTextures(swigCPtr, TextureSet.getCPtr(textureSet));
153             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
154         }
155
156         /// <summary>
157         /// Gets the texture set used by this renderer.
158         /// </summary>
159         /// <returns>The texture set used by the renderer.</returns>
160         /// <since_tizen> 3 </since_tizen>
161         public TextureSet GetTextures()
162         {
163             System.IntPtr cPtr = NDalicPINVOKE.Renderer_GetTextures(swigCPtr);
164             TextureSet ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as TextureSet;
165
166             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
167             return ret;
168         }
169
170         /// <summary>
171         /// Sets the shader used by this renderer.
172         /// </summary>
173         /// <param name="shader">The shader to be used by this renderer.</param>
174         /// <since_tizen> 3 </since_tizen>
175         public void SetShader(Shader shader)
176         {
177             NDalicPINVOKE.Renderer_SetShader(swigCPtr, Shader.getCPtr(shader));
178             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
179         }
180
181         /// <summary>
182         /// Gets the shader used by this renderer.
183         /// </summary>
184         /// <returns>The shader used by the renderer.</returns>
185         /// <since_tizen> 3 </since_tizen>
186         public Shader GetShader()
187         {
188             System.IntPtr cPtr = NDalicPINVOKE.Renderer_GetShader(swigCPtr);
189             Shader ret = Registry.GetManagedBaseHandleFromNativePtr(cPtr) as Shader;
190
191             if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
192             return ret;
193         }
194
195         /// <summary>
196         /// Gets and Sets DepthIndex property.
197         /// </summary>
198         /// <since_tizen> 3 </since_tizen>
199         public int DepthIndex
200         {
201             get
202             {
203                 int temp = 0;
204                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.DEPTH_INDEX).Get(out temp);
205                 return temp;
206             }
207             set
208             {
209                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.DEPTH_INDEX, new Tizen.NUI.PropertyValue(value));
210             }
211         }
212
213         /// <summary>
214         /// Gets and Sets FaceCullingMode.
215         /// </summary>
216         /// <since_tizen> 3 </since_tizen>
217         public int FaceCullingMode
218         {
219             get
220             {
221                 int temp = 0;
222                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.FACE_CULLING_MODE).Get(out temp);
223                 return temp;
224             }
225             set
226             {
227                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.FACE_CULLING_MODE, new Tizen.NUI.PropertyValue(value));
228             }
229         }
230
231         /// <summary>
232         /// Gets and Sets BlendMode.
233         /// </summary>
234         /// <since_tizen> 3 </since_tizen>
235         public int BlendMode
236         {
237             get
238             {
239                 int temp = 0;
240                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_MODE).Get(out temp);
241                 return temp;
242             }
243             set
244             {
245                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_MODE, new Tizen.NUI.PropertyValue(value));
246             }
247         }
248
249         /// <summary>
250         /// Gets and Sets BlendEquationRgb.
251         /// </summary>
252         /// <since_tizen> 3 </since_tizen>
253         public int BlendEquationRgb
254         {
255             get
256             {
257                 int temp = 0;
258                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_EQUATION_RGB).Get(out temp);
259                 return temp;
260             }
261             set
262             {
263                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_EQUATION_RGB, new Tizen.NUI.PropertyValue(value));
264             }
265         }
266
267         /// <summary>
268         /// Gets and Sets BlendEquationAlpha.
269         /// </summary>
270         /// <since_tizen> 3 </since_tizen>
271         public int BlendEquationAlpha
272         {
273             get
274             {
275                 int temp = 0;
276                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_EQUATION_ALPHA).Get(out temp);
277                 return temp;
278             }
279             set
280             {
281                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_EQUATION_ALPHA, new Tizen.NUI.PropertyValue(value));
282             }
283         }
284
285         /// <summary>
286         /// Gets and Sets BlendFactorSrcRgb.
287         /// </summary>
288         /// <since_tizen> 3 </since_tizen>
289         public int BlendFactorSrcRgb
290         {
291             get
292             {
293                 int temp = 0;
294                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_SRC_RGB).Get(out temp);
295                 return temp;
296             }
297             set
298             {
299                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_SRC_RGB, new Tizen.NUI.PropertyValue(value));
300             }
301         }
302
303         /// <summary>
304         /// Gets and Sets BlendFactorDestRgb.
305         /// </summary>
306         /// <since_tizen> 3 </since_tizen>
307         public int BlendFactorDestRgb
308         {
309             get
310             {
311                 int temp = 0;
312                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_DEST_RGB).Get(out temp);
313                 return temp;
314             }
315             set
316             {
317                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_DEST_RGB, new Tizen.NUI.PropertyValue(value));
318             }
319         }
320
321         /// <summary>
322         /// Gets and Sets BlendFactorSrcAlpha.
323         /// </summary>
324         /// <since_tizen> 3 </since_tizen>
325         public int BlendFactorSrcAlpha
326         {
327             get
328             {
329                 int temp = 0;
330                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_SRC_ALPHA).Get(out temp);
331                 return temp;
332             }
333             set
334             {
335                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_SRC_ALPHA, new Tizen.NUI.PropertyValue(value));
336             }
337         }
338
339         /// <summary>
340         /// Gets and Sets BlendFactorDestAlpha.
341         /// </summary>
342         /// <since_tizen> 3 </since_tizen>
343         public int BlendFactorDestAlpha
344         {
345             get
346             {
347                 int temp = 0;
348                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_DEST_ALPHA).Get(out temp);
349                 return temp;
350             }
351             set
352             {
353                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_FACTOR_DEST_ALPHA, new Tizen.NUI.PropertyValue(value));
354             }
355         }
356
357         /// <summary>
358         /// Gets and Sets BlendColor.
359         /// </summary>
360         /// <since_tizen> 3 </since_tizen>
361         public Vector4 BlendColor
362         {
363             get
364             {
365                 Vector4 temp = new Vector4(0.0f, 0.0f, 0.0f, 0.0f);
366                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_COLOR).Get(temp);
367                 return temp;
368             }
369             set
370             {
371                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_COLOR, new Tizen.NUI.PropertyValue(value));
372             }
373         }
374
375         /// <summary>
376         /// Gets and Sets BlendPreMultipliedAlpha.
377         /// </summary>
378         /// <since_tizen> 3 </since_tizen>
379         public bool BlendPreMultipliedAlpha
380         {
381             get
382             {
383                 bool temp = false;
384                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.BLEND_PRE_MULTIPLIED_ALPHA).Get(out temp);
385                 return temp;
386             }
387             set
388             {
389                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.BLEND_PRE_MULTIPLIED_ALPHA, new Tizen.NUI.PropertyValue(value));
390             }
391         }
392
393         /// <summary>
394         /// Gets and Sets IndexRangeFirst.
395         /// </summary>
396         /// <since_tizen> 3 </since_tizen>
397         public int IndexRangeFirst
398         {
399             get
400             {
401                 int temp = 0;
402                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.INDEX_RANGE_FIRST).Get(out temp);
403                 return temp;
404             }
405             set
406             {
407                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.INDEX_RANGE_FIRST, new Tizen.NUI.PropertyValue(value));
408             }
409         }
410
411         /// <summary>
412         /// Gets and Sets IndexRangeCount.
413         /// </summary>
414         /// <since_tizen> 3 </since_tizen>
415         public int IndexRangeCount
416         {
417             get
418             {
419                 int temp = 0;
420                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.INDEX_RANGE_COUNT).Get(out temp);
421                 return temp;
422             }
423             set
424             {
425                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.INDEX_RANGE_COUNT, new Tizen.NUI.PropertyValue(value));
426             }
427         }
428
429         /// <summary>
430         /// Gets and Sets DepthWriteMode.
431         /// </summary>
432         /// <since_tizen> 3 </since_tizen>
433         public int DepthWriteMode
434         {
435             get
436             {
437                 int temp = 0;
438                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.DEPTH_WRITE_MODE).Get(out temp);
439                 return temp;
440             }
441             set
442             {
443                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.DEPTH_WRITE_MODE, new Tizen.NUI.PropertyValue(value));
444             }
445         }
446
447         /// <summary>
448         /// Gets and Sets DepthFunction.
449         /// </summary>
450         /// <since_tizen> 3 </since_tizen>
451         public int DepthFunction
452         {
453             get
454             {
455                 int temp = 0;
456                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.DEPTH_FUNCTION).Get(out temp);
457                 return temp;
458             }
459             set
460             {
461                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.DEPTH_FUNCTION, new Tizen.NUI.PropertyValue(value));
462             }
463         }
464
465         /// <summary>
466         /// Gets and Sets DepthTestMode.
467         /// </summary>
468         /// <since_tizen> 3 </since_tizen>
469         public int DepthTestMode
470         {
471             get
472             {
473                 int temp = 0;
474                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.DEPTH_TEST_MODE).Get(out temp);
475                 return temp;
476             }
477             set
478             {
479                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.DEPTH_TEST_MODE, new Tizen.NUI.PropertyValue(value));
480             }
481         }
482
483         /// <summary>
484         /// Gets and Sets RenderMode.
485         /// </summary>
486         /// <since_tizen> 3 </since_tizen>
487         public int RenderMode
488         {
489             get
490             {
491                 int temp = 0;
492                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.RENDER_MODE).Get(out temp);
493                 return temp;
494             }
495             set
496             {
497                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.RENDER_MODE, new Tizen.NUI.PropertyValue(value));
498             }
499         }
500
501         /// <summary>
502         /// Gets and Sets StencilFunction.
503         /// </summary>
504         /// <since_tizen> 3 </since_tizen>
505         public int StencilFunction
506         {
507             get
508             {
509                 int temp = 0;
510                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION).Get(out temp);
511                 return temp;
512             }
513             set
514             {
515                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION, new Tizen.NUI.PropertyValue(value));
516             }
517         }
518
519         /// <summary>
520         /// Gets and Sets StencilFunctionMask.
521         /// </summary>
522         /// <since_tizen> 3 </since_tizen>
523         public int StencilFunctionMask
524         {
525             get
526             {
527                 int temp = 0;
528                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION_MASK).Get(out temp);
529                 return temp;
530             }
531             set
532             {
533                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION_MASK, new Tizen.NUI.PropertyValue(value));
534             }
535         }
536
537         /// <summary>
538         /// Gets and Sets StencilFunctionReference.
539         /// </summary>
540         /// <since_tizen> 3 </since_tizen>
541         public int StencilFunctionReference
542         {
543             get
544             {
545                 int temp = 0;
546                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION_REFERENCE).Get(out temp);
547                 return temp;
548             }
549             set
550             {
551                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_FUNCTION_REFERENCE, new Tizen.NUI.PropertyValue(value));
552             }
553         }
554
555         /// <summary>
556         /// Gets and Sets StencilMask.
557         /// </summary>
558         /// <since_tizen> 3 </since_tizen>
559         public int StencilMask
560         {
561             get
562             {
563                 int temp = 0;
564                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_MASK).Get(out temp);
565                 return temp;
566             }
567             set
568             {
569                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_MASK, new Tizen.NUI.PropertyValue(value));
570             }
571         }
572
573         /// <summary>
574         /// Gets and Sets StencilOperationOnFail.
575         /// </summary>
576         /// <since_tizen> 3 </since_tizen>
577         public int StencilOperationOnFail
578         {
579             get
580             {
581                 int temp = 0;
582                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_FAIL).Get(out temp);
583                 return temp;
584             }
585             set
586             {
587                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_FAIL, new Tizen.NUI.PropertyValue(value));
588             }
589         }
590
591         /// <summary>
592         /// Gets and Sets StencilOperationOnZFail.
593         /// </summary>
594         /// <since_tizen> 3 </since_tizen>
595         public int StencilOperationOnZFail
596         {
597             get
598             {
599                 int temp = 0;
600                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_Z_FAIL).Get(out temp);
601                 return temp;
602             }
603             set
604             {
605                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_Z_FAIL, new Tizen.NUI.PropertyValue(value));
606             }
607         }
608
609         /// <summary>
610         /// Gets and Sets StencilOperationOnZPass property.
611         /// </summary>
612         /// <since_tizen> 3 </since_tizen>
613         public int StencilOperationOnZPass
614         {
615             get
616             {
617                 int temp = 0;
618                 Tizen.NUI.Object.GetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_Z_PASS).Get(out temp);
619                 return temp;
620             }
621             set
622             {
623                 Tizen.NUI.Object.SetProperty(swigCPtr, Renderer.Property.STENCIL_OPERATION_ON_Z_PASS, new Tizen.NUI.PropertyValue(value));
624             }
625         }
626
627     }
628
629 }