19844b9c4dc6170098c01d9892ecb2b5c6b94919
[platform/core/csapi/tizenfx.git] / internals / src / EflSharp / EflSharp / efl / efl_object.eo.cs
1 #pragma warning disable CS1591
2 using System;
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
5 using System.Linq;
6 using System.Threading;
7 using System.ComponentModel;
8 namespace Efl {
9
10 public struct CallbackPriority
11 {
12     private short payload;
13     public static implicit operator CallbackPriority(short x)
14     {
15         return new CallbackPriority{payload=x};
16     }
17
18     public static implicit operator short(CallbackPriority x)
19     {
20         return x.payload;
21     }
22
23 }
24
25 }
26
27 namespace Efl {
28
29 public partial class Constants
30 {
31     public static readonly Efl.CallbackPriority CallbackPriorityBefore = -100;
32 }
33 }
34
35 namespace Efl {
36
37 public partial class Constants
38 {
39     public static readonly Efl.CallbackPriority CallbackPriorityDefault = 0;
40 }
41 }
42
43 namespace Efl {
44
45 public partial class Constants
46 {
47     public static readonly Efl.CallbackPriority CallbackPriorityAfter = 100;
48 }
49 }
50
51 namespace Efl {
52
53 /// <summary>Abstract EFL object class.
54 /// All EFL objects inherit from this class, which provides basic functionality like naming, debugging, hierarchy traversal, event emission and life cycle management.
55 /// 
56 /// Life Cycle Objects are created with efl_add() and mostly disposed of with efl_del(). As an optimization, efl_add() accepts a list of initialization functions which the programmer can use to further customize the object before it is fully constructed. Also, objects can have a parent which will keep them alive as long as the parent is alive, so the programmer does not need to keep track of references. (See the <see cref="Efl.Object.Parent"/> property for details). Due to the above characteristics, EFL objects undergo the following phases during their Life Cycle: - Construction: The Efl.Object.constructor method is called. Afterwards, any user-supplied initialization methods are called. - Finalization: The <see cref="Efl.Object.FinalizeAdd"/> method is called and <see cref="Efl.Object.GetFinalized"/> is set to <c>true</c> when it returns. Object is usable at this point. - Invalidation: The object has lost its parent. The <see cref="Efl.Object.Invalidate"/> method is called so all the object&apos;s relationships can be terminated. <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. - Destruction: The object has no parent and it can be destroyed. The <see cref="Efl.Object.Destructor"/> method is called, use it to return any resources the object might have gathered during its life.
57 /// (Since EFL 1.22)</summary>
58 [Efl.Object.NativeMethods]
59 public abstract class Object :  Efl.Eo.IWrapper, IDisposable
60 {
61     ///<summary>Pointer to the native class description.</summary>
62     public virtual System.IntPtr NativeClass
63     {
64         get
65         {
66             if (((object)this).GetType() == typeof(Object))
67             {
68                 return GetEflClassStatic();
69             }
70             else
71             {
72                 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
73             }
74         }
75     }
76
77     protected Dictionary<(IntPtr desc, object evtDelegate), (IntPtr evtCallerPtr, Efl.EventCb evtCaller)> eoEvents = new Dictionary<(IntPtr desc, object evtDelegate), (IntPtr evtCallerPtr, Efl.EventCb evtCaller)>();
78     protected readonly object eventLock = new object();
79     protected bool inherited;
80     protected  System.IntPtr handle;
81     ///<summary>Pointer to the native instance.</summary>
82     public System.IntPtr NativeHandle
83     {
84         get { return handle; }
85     }
86
87     [System.Runtime.InteropServices.DllImport(efl.Libs.Eo)] internal static extern System.IntPtr
88         efl_object_class_get();
89     /// <summary>Initializes a new instance of the <see cref="Object"/> class.</summary>
90     /// <param name="parent">Parent instance.</param>
91     public Object(Efl.Object parent= null
92             ) : this(efl_object_class_get(), typeof(Object), parent)
93     {
94         FinishInstantiation();
95     }
96
97     /// <summary>Initializes a new instance of the <see cref="Object"/> class.
98     /// Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
99     /// <param name="raw">The native pointer to be wrapped.</param>
100     protected Object(System.IntPtr raw)
101     {
102         handle = raw;
103     }
104
105     [Efl.Eo.PrivateNativeClass]
106     private class ObjectRealized : Object
107     {
108         private ObjectRealized(IntPtr ptr) : base(ptr)
109         {
110         }
111     }
112     /// <summary>Initializes a new instance of the <see cref="Object"/> class.
113     /// Internal usage: Constructor to actually call the native library constructors. C# subclasses
114     /// must use the public constructor only.</summary>
115     /// <param name="baseKlass">The pointer to the base native Eo class.</param>
116     /// <param name="managedType">The managed type of the public constructor that originated this call.</param>
117     /// <param name="parent">The Efl.Object parent of this instance.</param>
118     protected Object(IntPtr baseKlass, System.Type managedType, Efl.Object parent)
119     {
120         inherited = ((object)this).GetType() != managedType;
121         IntPtr actual_klass = baseKlass;
122         if (inherited)
123         {
124             actual_klass = Efl.Eo.ClassRegister.GetInheritKlassOrRegister(baseKlass, ((object)this).GetType());
125         }
126
127         handle = Efl.Eo.Globals.instantiate_start(actual_klass, parent);
128         if (inherited)
129         {
130             Efl.Eo.Globals.PrivateDataSet(this);
131         }
132     }
133
134     /// <summary>Finishes instantiating this object.
135     /// Internal usage by generated code.</summary>
136     protected void FinishInstantiation()
137     {
138         handle = Efl.Eo.Globals.instantiate_end(handle);
139         Eina.Error.RaiseIfUnhandledException();
140     }
141
142     ///<summary>Destructor.</summary>
143     ~Object()
144     {
145         Dispose(false);
146     }
147
148     ///<summary>Releases the underlying native instance.</summary>
149     protected virtual void Dispose(bool disposing)
150     {
151         if (handle != System.IntPtr.Zero)
152         {
153             IntPtr h = handle;
154             handle = IntPtr.Zero;
155
156             IntPtr gcHandlePtr = IntPtr.Zero;
157             if (eoEvents.Count != 0)
158             {
159                 GCHandle gcHandle = GCHandle.Alloc(eoEvents);
160                 gcHandlePtr = GCHandle.ToIntPtr(gcHandle);
161             }
162
163             if (disposing)
164             {
165                 Efl.Eo.Globals.efl_mono_native_dispose(h, gcHandlePtr);
166             }
167             else
168             {
169                 Monitor.Enter(Efl.All.InitLock);
170                 if (Efl.All.MainLoopInitialized)
171                 {
172                     Efl.Eo.Globals.efl_mono_thread_safe_native_dispose(h, gcHandlePtr);
173                 }
174
175                 Monitor.Exit(Efl.All.InitLock);
176             }
177         }
178
179     }
180
181     ///<summary>Releases the underlying native instance.</summary>
182     public void Dispose()
183     {
184         Dispose(true);
185         GC.SuppressFinalize(this);
186     }
187
188     /// <summary>Verifies if the given object is equal to this one.</summary>
189     /// <param name="instance">The object to compare to.</param>
190     /// <returns>True if both objects point to the same native object.</returns>
191     public override bool Equals(object instance)
192     {
193         var other = instance as Efl.Object;
194         if (other == null)
195         {
196             return false;
197         }
198         return this.NativeHandle == other.NativeHandle;
199     }
200
201     /// <summary>Gets the hash code for this object based on the native pointer it points to.</summary>
202     /// <returns>The value of the pointer, to be used as the hash code of this object.</returns>
203     public override int GetHashCode()
204     {
205         return this.NativeHandle.ToInt32();
206     }
207
208     /// <summary>Turns the native pointer into a string representation.</summary>
209     /// <returns>A string with the type and the native pointer for this object.</returns>
210     public override String ToString()
211     {
212         return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
213     }
214
215     ///<summary>Adds a new event handler, registering it to the native event. For internal use only.</summary>
216     ///<param name="lib">The name of the native library definining the event.</param>
217     ///<param name="key">The name of the native event.</param>
218     ///<param name="evtCaller">Delegate to be called by native code on event raising.</param>
219     ///<param name="evtDelegate">Managed delegate that will be called by evtCaller on event raising.</param>
220     protected void AddNativeEventHandler(string lib, string key, Efl.EventCb evtCaller, object evtDelegate)
221     {
222         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
223         if (desc == IntPtr.Zero)
224         {
225             Eina.Log.Error($"Failed to get native event {key}");
226         }
227
228         if (eoEvents.ContainsKey((desc, evtDelegate)))
229         {
230             Eina.Log.Warning($"Event proxy for event {key} already registered!");
231             return;
232         }
233
234         IntPtr evtCallerPtr = Marshal.GetFunctionPointerForDelegate(evtCaller);
235         if (!Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evtCallerPtr, IntPtr.Zero))
236         {
237             Eina.Log.Error($"Failed to add event proxy for event {key}");
238             return;
239         }
240
241         eoEvents[(desc, evtDelegate)] = (evtCallerPtr, evtCaller);
242         Eina.Error.RaiseIfUnhandledException();
243     }
244
245     ///<summary>Removes the given event handler for the given event. For internal use only.</summary>
246     ///<param name="lib">The name of the native library definining the event.</param>
247     ///<param name="key">The name of the native event.</param>
248     ///<param name="evtDelegate">The delegate to be removed.</param>
249     protected void RemoveNativeEventHandler(string lib, string key, object evtDelegate)
250     {
251         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
252         if (desc == IntPtr.Zero)
253         {
254             Eina.Log.Error($"Failed to get native event {key}");
255             return;
256         }
257
258         var evtPair = (desc, evtDelegate);
259         if (eoEvents.TryGetValue(evtPair, out var caller))
260         {
261             if (!Efl.Eo.Globals.efl_event_callback_del(handle, desc, caller.evtCallerPtr, IntPtr.Zero))
262             {
263                 Eina.Log.Error($"Failed to remove event proxy for event {key}");
264                 return;
265             }
266
267             eoEvents.Remove(evtPair);
268             Eina.Error.RaiseIfUnhandledException();
269         }
270         else
271         {
272             Eina.Log.Error($"Trying to remove proxy for event {key} when it is nothing registered.");
273         }
274     }
275
276     /// <summary>Object is being deleted. See <see cref="Efl.Object.Destructor"/>.
277     /// (Since EFL 1.22)</summary>
278     public event EventHandler DelEvt
279     {
280         add
281         {
282             lock (eventLock)
283             {
284                 var wRef = new WeakReference(this);
285                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
286                 {
287                     var obj = wRef.Target as Efl.Eo.IWrapper;
288                     if (obj != null)
289                     {
290                         EventArgs args = EventArgs.Empty;
291                         try
292                         {
293                             value?.Invoke(obj, args);
294                         }
295                         catch (Exception e)
296                         {
297                             Eina.Log.Error(e.ToString());
298                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
299                         }
300                     }
301                 };
302
303                 string key = "_EFL_EVENT_DEL";
304                 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
305             }
306         }
307
308         remove
309         {
310             lock (eventLock)
311             {
312                 string key = "_EFL_EVENT_DEL";
313                 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
314             }
315         }
316     }
317     ///<summary>Method to raise event DelEvt.</summary>
318     public void OnDelEvt(EventArgs e)
319     {
320         var key = "_EFL_EVENT_DEL";
321         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
322         if (desc == IntPtr.Zero)
323         {
324             Eina.Log.Error($"Failed to get native event {key}");
325             return;
326         }
327
328         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
329     }
330     /// <summary>Object is being invalidated and losing its parent. See <see cref="Efl.Object.Invalidate"/>.
331     /// (Since EFL 1.22)</summary>
332     public event EventHandler InvalidateEvt
333     {
334         add
335         {
336             lock (eventLock)
337             {
338                 var wRef = new WeakReference(this);
339                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
340                 {
341                     var obj = wRef.Target as Efl.Eo.IWrapper;
342                     if (obj != null)
343                     {
344                         EventArgs args = EventArgs.Empty;
345                         try
346                         {
347                             value?.Invoke(obj, args);
348                         }
349                         catch (Exception e)
350                         {
351                             Eina.Log.Error(e.ToString());
352                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
353                         }
354                     }
355                 };
356
357                 string key = "_EFL_EVENT_INVALIDATE";
358                 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
359             }
360         }
361
362         remove
363         {
364             lock (eventLock)
365             {
366                 string key = "_EFL_EVENT_INVALIDATE";
367                 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
368             }
369         }
370     }
371     ///<summary>Method to raise event InvalidateEvt.</summary>
372     public void OnInvalidateEvt(EventArgs e)
373     {
374         var key = "_EFL_EVENT_INVALIDATE";
375         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
376         if (desc == IntPtr.Zero)
377         {
378             Eina.Log.Error($"Failed to get native event {key}");
379             return;
380         }
381
382         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
383     }
384     /// <summary>Object has lost its last reference, only parent relationship is keeping it alive. Advanced usage.
385     /// (Since EFL 1.22)</summary>
386     public event EventHandler NorefEvt
387     {
388         add
389         {
390             lock (eventLock)
391             {
392                 var wRef = new WeakReference(this);
393                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
394                 {
395                     var obj = wRef.Target as Efl.Eo.IWrapper;
396                     if (obj != null)
397                     {
398                         EventArgs args = EventArgs.Empty;
399                         try
400                         {
401                             value?.Invoke(obj, args);
402                         }
403                         catch (Exception e)
404                         {
405                             Eina.Log.Error(e.ToString());
406                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
407                         }
408                     }
409                 };
410
411                 string key = "_EFL_EVENT_NOREF";
412                 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
413             }
414         }
415
416         remove
417         {
418             lock (eventLock)
419             {
420                 string key = "_EFL_EVENT_NOREF";
421                 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
422             }
423         }
424     }
425     ///<summary>Method to raise event NorefEvt.</summary>
426     public void OnNorefEvt(EventArgs e)
427     {
428         var key = "_EFL_EVENT_NOREF";
429         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
430         if (desc == IntPtr.Zero)
431         {
432             Eina.Log.Error($"Failed to get native event {key}");
433             return;
434         }
435
436         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
437     }
438     /// <summary>Object has been fully destroyed. It can not be used beyond this point. This event should only serve to clean up any reference you keep to the object.
439     /// (Since EFL 1.22)</summary>
440     public event EventHandler DestructEvt
441     {
442         add
443         {
444             lock (eventLock)
445             {
446                 var wRef = new WeakReference(this);
447                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
448                 {
449                     var obj = wRef.Target as Efl.Eo.IWrapper;
450                     if (obj != null)
451                     {
452                         EventArgs args = EventArgs.Empty;
453                         try
454                         {
455                             value?.Invoke(obj, args);
456                         }
457                         catch (Exception e)
458                         {
459                             Eina.Log.Error(e.ToString());
460                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
461                         }
462                     }
463                 };
464
465                 string key = "_EFL_EVENT_DESTRUCT";
466                 AddNativeEventHandler(efl.Libs.Eo, key, callerCb, value);
467             }
468         }
469
470         remove
471         {
472             lock (eventLock)
473             {
474                 string key = "_EFL_EVENT_DESTRUCT";
475                 RemoveNativeEventHandler(efl.Libs.Eo, key, value);
476             }
477         }
478     }
479     ///<summary>Method to raise event DestructEvt.</summary>
480     public void OnDestructEvt(EventArgs e)
481     {
482         var key = "_EFL_EVENT_DESTRUCT";
483         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
484         if (desc == IntPtr.Zero)
485         {
486             Eina.Log.Error($"Failed to get native event {key}");
487             return;
488         }
489
490         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, IntPtr.Zero);
491     }
492     /// <summary>The parent of an object.
493     /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
494     /// 
495     /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
496     /// 
497     /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
498     /// (Since EFL 1.22)</summary>
499     /// <returns>The new parent.</returns>
500     virtual public Efl.Object GetParent() {
501          var _ret_var = Efl.Object.NativeMethods.efl_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
502         Eina.Error.RaiseIfUnhandledException();
503         return _ret_var;
504  }
505     /// <summary>The parent of an object.
506     /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
507     /// 
508     /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
509     /// 
510     /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
511     /// (Since EFL 1.22)</summary>
512     /// <param name="parent">The new parent.</param>
513     virtual public void SetParent(Efl.Object parent) {
514                                  Efl.Object.NativeMethods.efl_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),parent);
515         Eina.Error.RaiseIfUnhandledException();
516                          }
517     /// <summary>The name of the object.
518     /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
519     /// (Since EFL 1.22)</summary>
520     /// <returns>The name.</returns>
521     virtual public System.String GetName() {
522          var _ret_var = Efl.Object.NativeMethods.efl_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
523         Eina.Error.RaiseIfUnhandledException();
524         return _ret_var;
525  }
526     /// <summary>The name of the object.
527     /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
528     /// (Since EFL 1.22)</summary>
529     /// <param name="name">The name.</param>
530     virtual public void SetName(System.String name) {
531                                  Efl.Object.NativeMethods.efl_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),name);
532         Eina.Error.RaiseIfUnhandledException();
533                          }
534     /// <summary>A human readable comment for the object.
535     /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
536     /// (Since EFL 1.22)</summary>
537     /// <returns>The comment.</returns>
538     virtual public System.String GetComment() {
539          var _ret_var = Efl.Object.NativeMethods.efl_comment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
540         Eina.Error.RaiseIfUnhandledException();
541         return _ret_var;
542  }
543     /// <summary>A human readable comment for the object.
544     /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
545     /// (Since EFL 1.22)</summary>
546     /// <param name="comment">The comment.</param>
547     virtual public void SetComment(System.String comment) {
548                                  Efl.Object.NativeMethods.efl_comment_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comment);
549         Eina.Error.RaiseIfUnhandledException();
550                          }
551     /// <summary>Return the global count of freeze events.
552     /// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).
553     /// (Since EFL 1.22)</summary>
554     /// <returns>The global event freeze count.</returns>
555     public static int GetEventGlobalFreezeCount() {
556          var _ret_var = Efl.Object.NativeMethods.efl_event_global_freeze_count_get_ptr.Value.Delegate();
557         Eina.Error.RaiseIfUnhandledException();
558         return _ret_var;
559  }
560     /// <summary>Return the count of freeze events for this object.
561     /// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).
562     /// (Since EFL 1.22)</summary>
563     /// <returns>The event freeze count of this object.</returns>
564     virtual public int GetEventFreezeCount() {
565          var _ret_var = Efl.Object.NativeMethods.efl_event_freeze_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
566         Eina.Error.RaiseIfUnhandledException();
567         return _ret_var;
568  }
569     /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class&apos; description.
570     /// (Since EFL 1.22)</summary>
571     /// <returns><c>true</c> if the object is finalized, <c>false</c> otherwise.</returns>
572     virtual public bool GetFinalized() {
573          var _ret_var = Efl.Object.NativeMethods.efl_finalized_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
574         Eina.Error.RaiseIfUnhandledException();
575         return _ret_var;
576  }
577     /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class&apos; description.
578     /// (Since EFL 1.22)</summary>
579     /// <returns><c>true</c> if the object is invalidated, <c>false</c> otherwise.</returns>
580     virtual public bool GetInvalidated() {
581          var _ret_var = Efl.Object.NativeMethods.efl_invalidated_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
582         Eina.Error.RaiseIfUnhandledException();
583         return _ret_var;
584  }
585     /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class&apos; description.
586     /// (Since EFL 1.22)</summary>
587     /// <returns><c>true</c> if the object is invalidating, <c>false</c> otherwise.</returns>
588     virtual public bool GetInvalidating() {
589          var _ret_var = Efl.Object.NativeMethods.efl_invalidating_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
590         Eina.Error.RaiseIfUnhandledException();
591         return _ret_var;
592  }
593     /// <summary>Allow an object to be deleted by unref even if it has a parent.
594     /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
595     /// 
596     /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
597     /// 
598     /// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.
599     /// (Since EFL 1.22)</summary>
600     /// <returns>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</returns>
601     virtual public bool GetAllowParentUnref() {
602          var _ret_var = Efl.Object.NativeMethods.efl_allow_parent_unref_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
603         Eina.Error.RaiseIfUnhandledException();
604         return _ret_var;
605  }
606     /// <summary>Allow an object to be deleted by unref even if it has a parent.
607     /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
608     /// 
609     /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
610     /// 
611     /// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.
612     /// (Since EFL 1.22)</summary>
613     /// <param name="allow">Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</param>
614     virtual public void SetAllowParentUnref(bool allow) {
615                                  Efl.Object.NativeMethods.efl_allow_parent_unref_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),allow);
616         Eina.Error.RaiseIfUnhandledException();
617                          }
618     /// <summary>Build a read-only name for this object used for debugging.
619     /// Multiple calls using efl_super() can be chained in order to build the entire debug name, from parent to child classes. In C the usual way to build the string is as follows:
620     /// 
621     /// efl_debug_name_override(efl_super(obj, MY_CLASS), sb); eina_strbuf_append_printf(sb, &quot;new_information&quot;);
622     /// 
623     /// Usually more debug information should be added to <c>sb</c> after calling the super function.
624     /// (Since EFL 1.22)</summary>
625     /// <param name="sb">A string buffer, must not be <c>null</c>.</param>
626     virtual public void DebugNameOverride(Eina.Strbuf sb) {
627                                  Efl.Object.NativeMethods.efl_debug_name_override_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),sb);
628         Eina.Error.RaiseIfUnhandledException();
629                          }
630     /// <summary>Searches upwards in the object tree for a provider which knows the given class/interface.
631     /// The object from the provider will then be returned. The base implementation calls the provider_find function on the object parent, and returns its result. If no parent is present NULL is returned. Each implementation has to support this function by overriding it and returning itself if the interface matches the parameter. If this is not done the class cannot be found up in the object tree.
632     /// (Since EFL 1.22)</summary>
633     /// <param name="klass">The class identifier to search for.</param>
634     /// <returns>Object from the provider list.</returns>
635     virtual public Efl.Object FindProvider(Type klass) {
636                                  var _ret_var = Efl.Object.NativeMethods.efl_provider_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),klass);
637         Eina.Error.RaiseIfUnhandledException();
638                         return _ret_var;
639  }
640     /// <summary>Implement this method to provide deinitialization code for your object if you need it.
641     /// Will be called once <see cref="Efl.Object.Invalidate"/> has returned. See the Life Cycle section in this class&apos; description.
642     /// (Since EFL 1.22)</summary>
643     virtual public void Destructor() {
644          Efl.Object.NativeMethods.efl_destructor_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
645         Eina.Error.RaiseIfUnhandledException();
646          }
647     /// <summary>Implement this method to finish the initialization of your object after all (if any) user-provided configuration methods have been executed.
648     /// Use this method to delay expensive operations until user configuration has finished, to avoid building the object in a &quot;default&quot; state in the constructor, just to have to throw it all away because a user configuration (a property being set, for example) requires a different state. This is the last call inside efl_add() and will set <see cref="Efl.Object.GetFinalized"/> to <c>true</c> once it returns. This is an optimization and implementing this method is optional if you already perform all your initialization in the Efl.Object.constructor method. See the Life Cycle section in this class&apos; description.
649     /// (Since EFL 1.22)</summary>
650     /// <returns>The new object. Return <c>NULL</c> to abort object creation.</returns>
651     virtual public Efl.Object FinalizeAdd() {
652          var _ret_var = Efl.Object.NativeMethods.efl_finalize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
653         Eina.Error.RaiseIfUnhandledException();
654         return _ret_var;
655  }
656     /// <summary>Implement this method to perform special actions when your object loses its parent, if you need to.
657     /// It is called when the parent reference is lost or set to <c>NULL</c>. After this call returns, <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. This allows a simpler tear down of complex hierarchies, by performing object destruction in two steps, first all object relationships are broken and then the isolated objects are destroyed. Performing everything in the <see cref="Efl.Object.Destructor"/> can sometimes lead to deadlocks, but implementing this method is optional if this is not your case. When an object with a parent is destroyed, it first receives a call to <see cref="Efl.Object.Invalidate"/> and then to <see cref="Efl.Object.Destructor"/>. See the Life Cycle section in this class&apos; description.
658     /// (Since EFL 1.22)</summary>
659     virtual public void Invalidate() {
660          Efl.Object.NativeMethods.efl_invalidate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
661         Eina.Error.RaiseIfUnhandledException();
662          }
663     /// <summary>Find a child object with the given name and return it.
664     /// The search string can be a glob (shell style, using *). It can also specify class name in the format of &quot;class:name&quot; where &quot;:&quot; separates class and name. Both class and name can be globs. If the class is specified but the name is empty like &quot;class:&quot; then the search will match any object of that class.
665     /// (Since EFL 1.22)</summary>
666     /// <param name="search">The name search string.</param>
667     /// <returns>The first object found.</returns>
668     virtual public Efl.Object FindName(System.String search) {
669                                  var _ret_var = Efl.Object.NativeMethods.efl_name_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),search);
670         Eina.Error.RaiseIfUnhandledException();
671                         return _ret_var;
672  }
673     /// <summary>Thaw events of object.
674     /// Allows event callbacks to be called again for this object after a call to <see cref="Efl.Object.FreezeEvent"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.
675     /// (Since EFL 1.22)</summary>
676     virtual public void ThawEvent() {
677          Efl.Object.NativeMethods.efl_event_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
678         Eina.Error.RaiseIfUnhandledException();
679          }
680     /// <summary>Freeze events of this object.
681     /// Prevents event callbacks from being called for this object. Enable events again using <see cref="Efl.Object.ThawEvent"/>. Events marked <c>hot</c> cannot be stopped.
682     /// (Since EFL 1.22)</summary>
683     virtual public void FreezeEvent() {
684          Efl.Object.NativeMethods.efl_event_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
685         Eina.Error.RaiseIfUnhandledException();
686          }
687     /// <summary>Gobally thaw events for ALL EFL OBJECTS.
688     /// Allows event callbacks to be called for all EFL objects after they have been disabled by <see cref="Efl.Object.FreezeEventGlobal"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.
689     /// (Since EFL 1.22)</summary>
690     public static void ThawEventGlobal() {
691          Efl.Object.NativeMethods.efl_event_global_thaw_ptr.Value.Delegate();
692         Eina.Error.RaiseIfUnhandledException();
693          }
694     /// <summary>Globally freeze events for ALL EFL OBJECTS.
695     /// Prevents event callbacks from being called for all EFL objects. Enable events again using <see cref="Efl.Object.ThawEventGlobal"/>. Events marked <c>hot</c> cannot be stopped.
696     /// 
697     /// Note: USE WITH CAUTION.
698     /// (Since EFL 1.22)</summary>
699     public static void FreezeEventGlobal() {
700          Efl.Object.NativeMethods.efl_event_global_freeze_ptr.Value.Delegate();
701         Eina.Error.RaiseIfUnhandledException();
702          }
703     /// <summary>Stop the current callback call.
704     /// This stops the current callback call. Any other callbacks for the current event will not be called. This is useful when you want to filter out events. Just add higher priority events and call this under certain conditions to block a certain event.
705     /// (Since EFL 1.22)</summary>
706     virtual public void EventCallbackStop() {
707          Efl.Object.NativeMethods.efl_event_callback_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
708         Eina.Error.RaiseIfUnhandledException();
709          }
710     /// <summary>Remove an event callback forwarder for a specified event and object.
711     /// (Since EFL 1.22)</summary>
712     /// <param name="desc">The description of the event to listen to</param>
713     /// <param name="new_obj">The object to emit events from</param>
714     virtual public void DelEventCallbackForwarder(Efl.EventDescription desc, Efl.Object new_obj) {
715          var _in_desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(desc);
716                                                 Efl.Object.NativeMethods.efl_event_callback_forwarder_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),_in_desc, new_obj);
717         Eina.Error.RaiseIfUnhandledException();
718                                          }
719     /// <summary>Get an iterator on all childrens
720     /// (Since EFL 1.22)</summary>
721     /// <returns>Children iterator</returns>
722     virtual public Eina.Iterator<Efl.Object> NewChildrenIterator() {
723          var _ret_var = Efl.Object.NativeMethods.efl_children_iterator_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
724         Eina.Error.RaiseIfUnhandledException();
725         return new Eina.Iterator<Efl.Object>(_ret_var, true, false);
726  }
727     /// <summary>Make an object a composite object of another.
728     /// The class of comp_obj must be part of the extensions of the class of the parent. It isn&apos;t possible to attach more then 1 composite of the same class. This function also sets the parent of comp_obj to parent.
729     /// 
730     /// See <see cref="Efl.Object.CompositeDetach"/>, <see cref="Efl.Object.IsCompositePart"/>.
731     /// (Since EFL 1.22)</summary>
732     /// <param name="comp_obj">the object that will be used to composite the parent.</param>
733     /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
734     virtual public bool AttachComposite(Efl.Object comp_obj) {
735                                  var _ret_var = Efl.Object.NativeMethods.efl_composite_attach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comp_obj);
736         Eina.Error.RaiseIfUnhandledException();
737                         return _ret_var;
738  }
739     /// <summary>Detach a composite object from another object.
740     /// This functions also sets the parent of comp_obj to <c>null</c>.
741     /// 
742     /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.
743     /// (Since EFL 1.22)</summary>
744     /// <param name="comp_obj">The object that will be removed from the parent.</param>
745     /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
746     virtual public bool CompositeDetach(Efl.Object comp_obj) {
747                                  var _ret_var = Efl.Object.NativeMethods.efl_composite_detach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),comp_obj);
748         Eina.Error.RaiseIfUnhandledException();
749                         return _ret_var;
750  }
751     /// <summary>Check if an object is part of a composite object.
752     /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.
753     /// (Since EFL 1.22)</summary>
754     /// <returns><c>true</c> if it is. <c>false</c> otherwise.</returns>
755     virtual public bool IsCompositePart() {
756          var _ret_var = Efl.Object.NativeMethods.efl_composite_part_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
757         Eina.Error.RaiseIfUnhandledException();
758         return _ret_var;
759  }
760     /// <summary>The parent of an object.
761 /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
762 /// 
763 /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
764 /// 
765 /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.
766 /// (Since EFL 1.22)</summary>
767 /// <value>The new parent.</value>
768     public Efl.Object Parent {
769         get { return GetParent(); }
770         set { SetParent(value); }
771     }
772     /// <summary>The name of the object.
773 /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.
774 /// (Since EFL 1.22)</summary>
775 /// <value>The name.</value>
776     public System.String Name {
777         get { return GetName(); }
778         set { SetName(value); }
779     }
780     /// <summary>A human readable comment for the object.
781 /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.
782 /// (Since EFL 1.22)</summary>
783 /// <value>The comment.</value>
784     public System.String Comment {
785         get { return GetComment(); }
786         set { SetComment(value); }
787     }
788     /// <summary>Return the global count of freeze events.
789 /// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).
790 /// (Since EFL 1.22)</summary>
791 /// <value>The global event freeze count.</value>
792     public static int EventGlobalFreezeCount {
793         get { return GetEventGlobalFreezeCount(); }
794     }
795     /// <summary>Return the count of freeze events for this object.
796 /// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).
797 /// (Since EFL 1.22)</summary>
798 /// <value>The event freeze count of this object.</value>
799     public int EventFreezeCount {
800         get { return GetEventFreezeCount(); }
801     }
802     /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class&apos; description.
803 /// (Since EFL 1.22)</summary>
804 /// <value><c>true</c> if the object is finalized, <c>false</c> otherwise.</value>
805     public bool Finalized {
806         get { return GetFinalized(); }
807     }
808     /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class&apos; description.
809 /// (Since EFL 1.22)</summary>
810 /// <value><c>true</c> if the object is invalidated, <c>false</c> otherwise.</value>
811     public bool Invalidated {
812         get { return GetInvalidated(); }
813     }
814     /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class&apos; description.
815 /// (Since EFL 1.22)</summary>
816 /// <value><c>true</c> if the object is invalidating, <c>false</c> otherwise.</value>
817     public bool Invalidating {
818         get { return GetInvalidating(); }
819     }
820     /// <summary>Allow an object to be deleted by unref even if it has a parent.
821 /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
822 /// 
823 /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
824 /// 
825 /// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.
826 /// (Since EFL 1.22)</summary>
827 /// <value>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</value>
828     public bool AllowParentUnref {
829         get { return GetAllowParentUnref(); }
830         set { SetAllowParentUnref(value); }
831     }
832     private static IntPtr GetEflClassStatic()
833     {
834         return Efl.Object.efl_object_class_get();
835     }
836     /// <summary>Wrapper for native methods and virtual method delegates.
837     /// For internal use by generated code only.</summary>
838     public class NativeMethods  : Efl.Eo.NativeClass
839     {
840         private static Efl.Eo.NativeModule Module = new Efl.Eo.NativeModule(    efl.Libs.Eo);
841         /// <summary>Gets the list of Eo operations to override.</summary>
842         /// <returns>The list of Eo operations to be overload.</returns>
843         public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
844         {
845             var descs = new System.Collections.Generic.List<Efl_Op_Description>();
846             var methods = Efl.Eo.Globals.GetUserMethods(type);
847
848             if (efl_parent_get_static_delegate == null)
849             {
850                 efl_parent_get_static_delegate = new efl_parent_get_delegate(parent_get);
851             }
852
853             if (methods.FirstOrDefault(m => m.Name == "GetParent") != null)
854             {
855                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_get_static_delegate) });
856             }
857
858             if (efl_parent_set_static_delegate == null)
859             {
860                 efl_parent_set_static_delegate = new efl_parent_set_delegate(parent_set);
861             }
862
863             if (methods.FirstOrDefault(m => m.Name == "SetParent") != null)
864             {
865                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_set_static_delegate) });
866             }
867
868             if (efl_name_get_static_delegate == null)
869             {
870                 efl_name_get_static_delegate = new efl_name_get_delegate(name_get);
871             }
872
873             if (methods.FirstOrDefault(m => m.Name == "GetName") != null)
874             {
875                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_name_get_static_delegate) });
876             }
877
878             if (efl_name_set_static_delegate == null)
879             {
880                 efl_name_set_static_delegate = new efl_name_set_delegate(name_set);
881             }
882
883             if (methods.FirstOrDefault(m => m.Name == "SetName") != null)
884             {
885                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_name_set_static_delegate) });
886             }
887
888             if (efl_comment_get_static_delegate == null)
889             {
890                 efl_comment_get_static_delegate = new efl_comment_get_delegate(comment_get);
891             }
892
893             if (methods.FirstOrDefault(m => m.Name == "GetComment") != null)
894             {
895                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_comment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_get_static_delegate) });
896             }
897
898             if (efl_comment_set_static_delegate == null)
899             {
900                 efl_comment_set_static_delegate = new efl_comment_set_delegate(comment_set);
901             }
902
903             if (methods.FirstOrDefault(m => m.Name == "SetComment") != null)
904             {
905                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_comment_set"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_set_static_delegate) });
906             }
907
908             if (efl_event_freeze_count_get_static_delegate == null)
909             {
910                 efl_event_freeze_count_get_static_delegate = new efl_event_freeze_count_get_delegate(event_freeze_count_get);
911             }
912
913             if (methods.FirstOrDefault(m => m.Name == "GetEventFreezeCount") != null)
914             {
915                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_freeze_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_count_get_static_delegate) });
916             }
917
918             if (efl_finalized_get_static_delegate == null)
919             {
920                 efl_finalized_get_static_delegate = new efl_finalized_get_delegate(finalized_get);
921             }
922
923             if (methods.FirstOrDefault(m => m.Name == "GetFinalized") != null)
924             {
925                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_finalized_get"), func = Marshal.GetFunctionPointerForDelegate(efl_finalized_get_static_delegate) });
926             }
927
928             if (efl_invalidated_get_static_delegate == null)
929             {
930                 efl_invalidated_get_static_delegate = new efl_invalidated_get_delegate(invalidated_get);
931             }
932
933             if (methods.FirstOrDefault(m => m.Name == "GetInvalidated") != null)
934             {
935                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidated_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidated_get_static_delegate) });
936             }
937
938             if (efl_invalidating_get_static_delegate == null)
939             {
940                 efl_invalidating_get_static_delegate = new efl_invalidating_get_delegate(invalidating_get);
941             }
942
943             if (methods.FirstOrDefault(m => m.Name == "GetInvalidating") != null)
944             {
945                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidating_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidating_get_static_delegate) });
946             }
947
948             if (efl_allow_parent_unref_get_static_delegate == null)
949             {
950                 efl_allow_parent_unref_get_static_delegate = new efl_allow_parent_unref_get_delegate(allow_parent_unref_get);
951             }
952
953             if (methods.FirstOrDefault(m => m.Name == "GetAllowParentUnref") != null)
954             {
955                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_allow_parent_unref_get"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_get_static_delegate) });
956             }
957
958             if (efl_allow_parent_unref_set_static_delegate == null)
959             {
960                 efl_allow_parent_unref_set_static_delegate = new efl_allow_parent_unref_set_delegate(allow_parent_unref_set);
961             }
962
963             if (methods.FirstOrDefault(m => m.Name == "SetAllowParentUnref") != null)
964             {
965                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_allow_parent_unref_set"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_set_static_delegate) });
966             }
967
968             if (efl_debug_name_override_static_delegate == null)
969             {
970                 efl_debug_name_override_static_delegate = new efl_debug_name_override_delegate(debug_name_override);
971             }
972
973             if (methods.FirstOrDefault(m => m.Name == "DebugNameOverride") != null)
974             {
975                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_debug_name_override"), func = Marshal.GetFunctionPointerForDelegate(efl_debug_name_override_static_delegate) });
976             }
977
978             if (efl_provider_find_static_delegate == null)
979             {
980                 efl_provider_find_static_delegate = new efl_provider_find_delegate(provider_find);
981             }
982
983             if (methods.FirstOrDefault(m => m.Name == "FindProvider") != null)
984             {
985                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_provider_find"), func = Marshal.GetFunctionPointerForDelegate(efl_provider_find_static_delegate) });
986             }
987
988             if (efl_destructor_static_delegate == null)
989             {
990                 efl_destructor_static_delegate = new efl_destructor_delegate(destructor);
991             }
992
993             if (methods.FirstOrDefault(m => m.Name == "Destructor") != null)
994             {
995                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_destructor"), func = Marshal.GetFunctionPointerForDelegate(efl_destructor_static_delegate) });
996             }
997
998             if (efl_finalize_static_delegate == null)
999             {
1000                 efl_finalize_static_delegate = new efl_finalize_delegate(finalize);
1001             }
1002
1003             if (methods.FirstOrDefault(m => m.Name == "FinalizeAdd") != null)
1004             {
1005                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_finalize"), func = Marshal.GetFunctionPointerForDelegate(efl_finalize_static_delegate) });
1006             }
1007
1008             if (efl_invalidate_static_delegate == null)
1009             {
1010                 efl_invalidate_static_delegate = new efl_invalidate_delegate(invalidate);
1011             }
1012
1013             if (methods.FirstOrDefault(m => m.Name == "Invalidate") != null)
1014             {
1015                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_invalidate"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidate_static_delegate) });
1016             }
1017
1018             if (efl_name_find_static_delegate == null)
1019             {
1020                 efl_name_find_static_delegate = new efl_name_find_delegate(name_find);
1021             }
1022
1023             if (methods.FirstOrDefault(m => m.Name == "FindName") != null)
1024             {
1025                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_name_find"), func = Marshal.GetFunctionPointerForDelegate(efl_name_find_static_delegate) });
1026             }
1027
1028             if (efl_event_thaw_static_delegate == null)
1029             {
1030                 efl_event_thaw_static_delegate = new efl_event_thaw_delegate(event_thaw);
1031             }
1032
1033             if (methods.FirstOrDefault(m => m.Name == "ThawEvent") != null)
1034             {
1035                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_event_thaw_static_delegate) });
1036             }
1037
1038             if (efl_event_freeze_static_delegate == null)
1039             {
1040                 efl_event_freeze_static_delegate = new efl_event_freeze_delegate(event_freeze);
1041             }
1042
1043             if (methods.FirstOrDefault(m => m.Name == "FreezeEvent") != null)
1044             {
1045                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_static_delegate) });
1046             }
1047
1048             if (efl_event_callback_stop_static_delegate == null)
1049             {
1050                 efl_event_callback_stop_static_delegate = new efl_event_callback_stop_delegate(event_callback_stop);
1051             }
1052
1053             if (methods.FirstOrDefault(m => m.Name == "EventCallbackStop") != null)
1054             {
1055                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_callback_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_stop_static_delegate) });
1056             }
1057
1058             if (efl_event_callback_forwarder_del_static_delegate == null)
1059             {
1060                 efl_event_callback_forwarder_del_static_delegate = new efl_event_callback_forwarder_del_delegate(event_callback_forwarder_del);
1061             }
1062
1063             if (methods.FirstOrDefault(m => m.Name == "DelEventCallbackForwarder") != null)
1064             {
1065                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_event_callback_forwarder_del"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_forwarder_del_static_delegate) });
1066             }
1067
1068             if (efl_children_iterator_new_static_delegate == null)
1069             {
1070                 efl_children_iterator_new_static_delegate = new efl_children_iterator_new_delegate(children_iterator_new);
1071             }
1072
1073             if (methods.FirstOrDefault(m => m.Name == "NewChildrenIterator") != null)
1074             {
1075                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_children_iterator_new"), func = Marshal.GetFunctionPointerForDelegate(efl_children_iterator_new_static_delegate) });
1076             }
1077
1078             if (efl_composite_attach_static_delegate == null)
1079             {
1080                 efl_composite_attach_static_delegate = new efl_composite_attach_delegate(composite_attach);
1081             }
1082
1083             if (methods.FirstOrDefault(m => m.Name == "AttachComposite") != null)
1084             {
1085                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_attach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_attach_static_delegate) });
1086             }
1087
1088             if (efl_composite_detach_static_delegate == null)
1089             {
1090                 efl_composite_detach_static_delegate = new efl_composite_detach_delegate(composite_detach);
1091             }
1092
1093             if (methods.FirstOrDefault(m => m.Name == "CompositeDetach") != null)
1094             {
1095                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_detach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_detach_static_delegate) });
1096             }
1097
1098             if (efl_composite_part_is_static_delegate == null)
1099             {
1100                 efl_composite_part_is_static_delegate = new efl_composite_part_is_delegate(composite_part_is);
1101             }
1102
1103             if (methods.FirstOrDefault(m => m.Name == "IsCompositePart") != null)
1104             {
1105                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_composite_part_is"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_part_is_static_delegate) });
1106             }
1107
1108             return descs;
1109         }
1110         /// <summary>Returns the Eo class for the native methods of this class.</summary>
1111         /// <returns>The native class pointer.</returns>
1112         public override IntPtr GetEflClass()
1113         {
1114             return Efl.Object.efl_object_class_get();
1115         }
1116
1117         #pragma warning disable CA1707, SA1300, SA1600
1118
1119         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1120         private delegate Efl.Object efl_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
1121
1122         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1123         public delegate Efl.Object efl_parent_get_api_delegate(System.IntPtr obj);
1124
1125         public static Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate> efl_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate>(Module, "efl_parent_get");
1126
1127         private static Efl.Object parent_get(System.IntPtr obj, System.IntPtr pd)
1128         {
1129             Eina.Log.Debug("function efl_parent_get was called");
1130             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1131             if (wrapper != null)
1132             {
1133             Efl.Object _ret_var = default(Efl.Object);
1134                 try
1135                 {
1136                     _ret_var = ((Object)wrapper).GetParent();
1137                 }
1138                 catch (Exception e)
1139                 {
1140                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1141                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1142                 }
1143
1144         return _ret_var;
1145
1146             }
1147             else
1148             {
1149                 return efl_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1150             }
1151         }
1152
1153         private static efl_parent_get_delegate efl_parent_get_static_delegate;
1154
1155         
1156         private delegate void efl_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object parent);
1157
1158         
1159         public delegate void efl_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object parent);
1160
1161         public static Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate> efl_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate>(Module, "efl_parent_set");
1162
1163         private static void parent_set(System.IntPtr obj, System.IntPtr pd, Efl.Object parent)
1164         {
1165             Eina.Log.Debug("function efl_parent_set was called");
1166             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1167             if (wrapper != null)
1168             {
1169                                     
1170                 try
1171                 {
1172                     ((Object)wrapper).SetParent(parent);
1173                 }
1174                 catch (Exception e)
1175                 {
1176                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1177                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1178                 }
1179
1180                         
1181             }
1182             else
1183             {
1184                 efl_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), parent);
1185             }
1186         }
1187
1188         private static efl_parent_set_delegate efl_parent_set_static_delegate;
1189
1190         [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1191         private delegate System.String efl_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
1192
1193         [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1194         public delegate System.String efl_name_get_api_delegate(System.IntPtr obj);
1195
1196         public static Efl.Eo.FunctionWrapper<efl_name_get_api_delegate> efl_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_name_get_api_delegate>(Module, "efl_name_get");
1197
1198         private static System.String name_get(System.IntPtr obj, System.IntPtr pd)
1199         {
1200             Eina.Log.Debug("function efl_name_get was called");
1201             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1202             if (wrapper != null)
1203             {
1204             System.String _ret_var = default(System.String);
1205                 try
1206                 {
1207                     _ret_var = ((Object)wrapper).GetName();
1208                 }
1209                 catch (Exception e)
1210                 {
1211                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1212                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1213                 }
1214
1215         return _ret_var;
1216
1217             }
1218             else
1219             {
1220                 return efl_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1221             }
1222         }
1223
1224         private static efl_name_get_delegate efl_name_get_static_delegate;
1225
1226         
1227         private delegate void efl_name_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String name);
1228
1229         
1230         public delegate void efl_name_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String name);
1231
1232         public static Efl.Eo.FunctionWrapper<efl_name_set_api_delegate> efl_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_name_set_api_delegate>(Module, "efl_name_set");
1233
1234         private static void name_set(System.IntPtr obj, System.IntPtr pd, System.String name)
1235         {
1236             Eina.Log.Debug("function efl_name_set was called");
1237             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1238             if (wrapper != null)
1239             {
1240                                     
1241                 try
1242                 {
1243                     ((Object)wrapper).SetName(name);
1244                 }
1245                 catch (Exception e)
1246                 {
1247                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1248                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1249                 }
1250
1251                         
1252             }
1253             else
1254             {
1255                 efl_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), name);
1256             }
1257         }
1258
1259         private static efl_name_set_delegate efl_name_set_static_delegate;
1260
1261         [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1262         private delegate System.String efl_comment_get_delegate(System.IntPtr obj, System.IntPtr pd);
1263
1264         [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]
1265         public delegate System.String efl_comment_get_api_delegate(System.IntPtr obj);
1266
1267         public static Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate> efl_comment_get_ptr = new Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate>(Module, "efl_comment_get");
1268
1269         private static System.String comment_get(System.IntPtr obj, System.IntPtr pd)
1270         {
1271             Eina.Log.Debug("function efl_comment_get was called");
1272             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1273             if (wrapper != null)
1274             {
1275             System.String _ret_var = default(System.String);
1276                 try
1277                 {
1278                     _ret_var = ((Object)wrapper).GetComment();
1279                 }
1280                 catch (Exception e)
1281                 {
1282                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1283                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1284                 }
1285
1286         return _ret_var;
1287
1288             }
1289             else
1290             {
1291                 return efl_comment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1292             }
1293         }
1294
1295         private static efl_comment_get_delegate efl_comment_get_static_delegate;
1296
1297         
1298         private delegate void efl_comment_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String comment);
1299
1300         
1301         public delegate void efl_comment_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String comment);
1302
1303         public static Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate> efl_comment_set_ptr = new Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate>(Module, "efl_comment_set");
1304
1305         private static void comment_set(System.IntPtr obj, System.IntPtr pd, System.String comment)
1306         {
1307             Eina.Log.Debug("function efl_comment_set was called");
1308             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1309             if (wrapper != null)
1310             {
1311                                     
1312                 try
1313                 {
1314                     ((Object)wrapper).SetComment(comment);
1315                 }
1316                 catch (Exception e)
1317                 {
1318                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1319                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1320                 }
1321
1322                         
1323             }
1324             else
1325             {
1326                 efl_comment_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comment);
1327             }
1328         }
1329
1330         private static efl_comment_set_delegate efl_comment_set_static_delegate;
1331
1332         
1333         private delegate int efl_event_global_freeze_count_get_delegate();
1334
1335         
1336         public delegate int efl_event_global_freeze_count_get_api_delegate();
1337
1338         public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate> efl_event_global_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate>(Module, "efl_event_global_freeze_count_get");
1339
1340         private static int event_global_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
1341         {
1342             Eina.Log.Debug("function efl_event_global_freeze_count_get was called");
1343             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1344             if (wrapper != null)
1345             {
1346             int _ret_var = default(int);
1347                 try
1348                 {
1349                     _ret_var = Object.GetEventGlobalFreezeCount();
1350                 }
1351                 catch (Exception e)
1352                 {
1353                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1354                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1355                 }
1356
1357         return _ret_var;
1358
1359             }
1360             else
1361             {
1362                 return efl_event_global_freeze_count_get_ptr.Value.Delegate();
1363             }
1364         }
1365
1366         
1367         private delegate int efl_event_freeze_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
1368
1369         
1370         public delegate int efl_event_freeze_count_get_api_delegate(System.IntPtr obj);
1371
1372         public static Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate> efl_event_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate>(Module, "efl_event_freeze_count_get");
1373
1374         private static int event_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
1375         {
1376             Eina.Log.Debug("function efl_event_freeze_count_get was called");
1377             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1378             if (wrapper != null)
1379             {
1380             int _ret_var = default(int);
1381                 try
1382                 {
1383                     _ret_var = ((Object)wrapper).GetEventFreezeCount();
1384                 }
1385                 catch (Exception e)
1386                 {
1387                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1388                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1389                 }
1390
1391         return _ret_var;
1392
1393             }
1394             else
1395             {
1396                 return efl_event_freeze_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1397             }
1398         }
1399
1400         private static efl_event_freeze_count_get_delegate efl_event_freeze_count_get_static_delegate;
1401
1402         [return: MarshalAs(UnmanagedType.U1)]
1403         private delegate bool efl_finalized_get_delegate(System.IntPtr obj, System.IntPtr pd);
1404
1405         [return: MarshalAs(UnmanagedType.U1)]
1406         public delegate bool efl_finalized_get_api_delegate(System.IntPtr obj);
1407
1408         public static Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate> efl_finalized_get_ptr = new Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate>(Module, "efl_finalized_get");
1409
1410         private static bool finalized_get(System.IntPtr obj, System.IntPtr pd)
1411         {
1412             Eina.Log.Debug("function efl_finalized_get was called");
1413             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1414             if (wrapper != null)
1415             {
1416             bool _ret_var = default(bool);
1417                 try
1418                 {
1419                     _ret_var = ((Object)wrapper).GetFinalized();
1420                 }
1421                 catch (Exception e)
1422                 {
1423                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1424                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1425                 }
1426
1427         return _ret_var;
1428
1429             }
1430             else
1431             {
1432                 return efl_finalized_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1433             }
1434         }
1435
1436         private static efl_finalized_get_delegate efl_finalized_get_static_delegate;
1437
1438         [return: MarshalAs(UnmanagedType.U1)]
1439         private delegate bool efl_invalidated_get_delegate(System.IntPtr obj, System.IntPtr pd);
1440
1441         [return: MarshalAs(UnmanagedType.U1)]
1442         public delegate bool efl_invalidated_get_api_delegate(System.IntPtr obj);
1443
1444         public static Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate> efl_invalidated_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate>(Module, "efl_invalidated_get");
1445
1446         private static bool invalidated_get(System.IntPtr obj, System.IntPtr pd)
1447         {
1448             Eina.Log.Debug("function efl_invalidated_get was called");
1449             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1450             if (wrapper != null)
1451             {
1452             bool _ret_var = default(bool);
1453                 try
1454                 {
1455                     _ret_var = ((Object)wrapper).GetInvalidated();
1456                 }
1457                 catch (Exception e)
1458                 {
1459                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1460                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1461                 }
1462
1463         return _ret_var;
1464
1465             }
1466             else
1467             {
1468                 return efl_invalidated_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1469             }
1470         }
1471
1472         private static efl_invalidated_get_delegate efl_invalidated_get_static_delegate;
1473
1474         [return: MarshalAs(UnmanagedType.U1)]
1475         private delegate bool efl_invalidating_get_delegate(System.IntPtr obj, System.IntPtr pd);
1476
1477         [return: MarshalAs(UnmanagedType.U1)]
1478         public delegate bool efl_invalidating_get_api_delegate(System.IntPtr obj);
1479
1480         public static Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate> efl_invalidating_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate>(Module, "efl_invalidating_get");
1481
1482         private static bool invalidating_get(System.IntPtr obj, System.IntPtr pd)
1483         {
1484             Eina.Log.Debug("function efl_invalidating_get was called");
1485             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1486             if (wrapper != null)
1487             {
1488             bool _ret_var = default(bool);
1489                 try
1490                 {
1491                     _ret_var = ((Object)wrapper).GetInvalidating();
1492                 }
1493                 catch (Exception e)
1494                 {
1495                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1496                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1497                 }
1498
1499         return _ret_var;
1500
1501             }
1502             else
1503             {
1504                 return efl_invalidating_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1505             }
1506         }
1507
1508         private static efl_invalidating_get_delegate efl_invalidating_get_static_delegate;
1509
1510         [return: MarshalAs(UnmanagedType.U1)]
1511         private delegate bool efl_allow_parent_unref_get_delegate(System.IntPtr obj, System.IntPtr pd);
1512
1513         [return: MarshalAs(UnmanagedType.U1)]
1514         public delegate bool efl_allow_parent_unref_get_api_delegate(System.IntPtr obj);
1515
1516         public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate> efl_allow_parent_unref_get_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate>(Module, "efl_allow_parent_unref_get");
1517
1518         private static bool allow_parent_unref_get(System.IntPtr obj, System.IntPtr pd)
1519         {
1520             Eina.Log.Debug("function efl_allow_parent_unref_get was called");
1521             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1522             if (wrapper != null)
1523             {
1524             bool _ret_var = default(bool);
1525                 try
1526                 {
1527                     _ret_var = ((Object)wrapper).GetAllowParentUnref();
1528                 }
1529                 catch (Exception e)
1530                 {
1531                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1532                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1533                 }
1534
1535         return _ret_var;
1536
1537             }
1538             else
1539             {
1540                 return efl_allow_parent_unref_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1541             }
1542         }
1543
1544         private static efl_allow_parent_unref_get_delegate efl_allow_parent_unref_get_static_delegate;
1545
1546         
1547         private delegate void efl_allow_parent_unref_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.U1)] bool allow);
1548
1549         
1550         public delegate void efl_allow_parent_unref_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.U1)] bool allow);
1551
1552         public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate> efl_allow_parent_unref_set_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate>(Module, "efl_allow_parent_unref_set");
1553
1554         private static void allow_parent_unref_set(System.IntPtr obj, System.IntPtr pd, bool allow)
1555         {
1556             Eina.Log.Debug("function efl_allow_parent_unref_set was called");
1557             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1558             if (wrapper != null)
1559             {
1560                                     
1561                 try
1562                 {
1563                     ((Object)wrapper).SetAllowParentUnref(allow);
1564                 }
1565                 catch (Exception e)
1566                 {
1567                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1568                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1569                 }
1570
1571                         
1572             }
1573             else
1574             {
1575                 efl_allow_parent_unref_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), allow);
1576             }
1577         }
1578
1579         private static efl_allow_parent_unref_set_delegate efl_allow_parent_unref_set_static_delegate;
1580
1581         
1582         private delegate void efl_debug_name_override_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))] Eina.Strbuf sb);
1583
1584         
1585         public delegate void efl_debug_name_override_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))] Eina.Strbuf sb);
1586
1587         public static Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate> efl_debug_name_override_ptr = new Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate>(Module, "efl_debug_name_override");
1588
1589         private static void debug_name_override(System.IntPtr obj, System.IntPtr pd, Eina.Strbuf sb)
1590         {
1591             Eina.Log.Debug("function efl_debug_name_override was called");
1592             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1593             if (wrapper != null)
1594             {
1595                                     
1596                 try
1597                 {
1598                     ((Object)wrapper).DebugNameOverride(sb);
1599                 }
1600                 catch (Exception e)
1601                 {
1602                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1603                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1604                 }
1605
1606                         
1607             }
1608             else
1609             {
1610                 efl_debug_name_override_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), sb);
1611             }
1612         }
1613
1614         private static efl_debug_name_override_delegate efl_debug_name_override_static_delegate;
1615
1616         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1617         private delegate Efl.Object efl_provider_find_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] Type klass);
1618
1619         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1620         public delegate Efl.Object efl_provider_find_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] Type klass);
1621
1622         public static Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate> efl_provider_find_ptr = new Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate>(Module, "efl_provider_find");
1623
1624         private static Efl.Object provider_find(System.IntPtr obj, System.IntPtr pd, Type klass)
1625         {
1626             Eina.Log.Debug("function efl_provider_find was called");
1627             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1628             if (wrapper != null)
1629             {
1630                                     Efl.Object _ret_var = default(Efl.Object);
1631                 try
1632                 {
1633                     _ret_var = ((Object)wrapper).FindProvider(klass);
1634                 }
1635                 catch (Exception e)
1636                 {
1637                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1638                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1639                 }
1640
1641                         return _ret_var;
1642
1643             }
1644             else
1645             {
1646                 return efl_provider_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), klass);
1647             }
1648         }
1649
1650         private static efl_provider_find_delegate efl_provider_find_static_delegate;
1651
1652         
1653         private delegate void efl_destructor_delegate(System.IntPtr obj, System.IntPtr pd);
1654
1655         
1656         public delegate void efl_destructor_api_delegate(System.IntPtr obj);
1657
1658         public static Efl.Eo.FunctionWrapper<efl_destructor_api_delegate> efl_destructor_ptr = new Efl.Eo.FunctionWrapper<efl_destructor_api_delegate>(Module, "efl_destructor");
1659
1660         private static void destructor(System.IntPtr obj, System.IntPtr pd)
1661         {
1662             Eina.Log.Debug("function efl_destructor was called");
1663             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1664             if (wrapper != null)
1665             {
1666             
1667                 try
1668                 {
1669                     ((Object)wrapper).Destructor();
1670                 }
1671                 catch (Exception e)
1672                 {
1673                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1674                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1675                 }
1676
1677         
1678             }
1679             else
1680             {
1681                 efl_destructor_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1682             }
1683         }
1684
1685         private static efl_destructor_delegate efl_destructor_static_delegate;
1686
1687         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1688         private delegate Efl.Object efl_finalize_delegate(System.IntPtr obj, System.IntPtr pd);
1689
1690         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1691         public delegate Efl.Object efl_finalize_api_delegate(System.IntPtr obj);
1692
1693         public static Efl.Eo.FunctionWrapper<efl_finalize_api_delegate> efl_finalize_ptr = new Efl.Eo.FunctionWrapper<efl_finalize_api_delegate>(Module, "efl_finalize");
1694
1695         private static Efl.Object finalize(System.IntPtr obj, System.IntPtr pd)
1696         {
1697             Eina.Log.Debug("function efl_finalize was called");
1698             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1699             if (wrapper != null)
1700             {
1701             Efl.Object _ret_var = default(Efl.Object);
1702                 try
1703                 {
1704                     _ret_var = ((Object)wrapper).FinalizeAdd();
1705                 }
1706                 catch (Exception e)
1707                 {
1708                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1709                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1710                 }
1711
1712         return _ret_var;
1713
1714             }
1715             else
1716             {
1717                 return efl_finalize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1718             }
1719         }
1720
1721         private static efl_finalize_delegate efl_finalize_static_delegate;
1722
1723         
1724         private delegate void efl_invalidate_delegate(System.IntPtr obj, System.IntPtr pd);
1725
1726         
1727         public delegate void efl_invalidate_api_delegate(System.IntPtr obj);
1728
1729         public static Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate> efl_invalidate_ptr = new Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate>(Module, "efl_invalidate");
1730
1731         private static void invalidate(System.IntPtr obj, System.IntPtr pd)
1732         {
1733             Eina.Log.Debug("function efl_invalidate was called");
1734             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1735             if (wrapper != null)
1736             {
1737             
1738                 try
1739                 {
1740                     ((Object)wrapper).Invalidate();
1741                 }
1742                 catch (Exception e)
1743                 {
1744                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1745                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1746                 }
1747
1748         
1749             }
1750             else
1751             {
1752                 efl_invalidate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1753             }
1754         }
1755
1756         private static efl_invalidate_delegate efl_invalidate_static_delegate;
1757
1758         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1759         private delegate Efl.Object efl_name_find_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String search);
1760
1761         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
1762         public delegate Efl.Object efl_name_find_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] System.String search);
1763
1764         public static Efl.Eo.FunctionWrapper<efl_name_find_api_delegate> efl_name_find_ptr = new Efl.Eo.FunctionWrapper<efl_name_find_api_delegate>(Module, "efl_name_find");
1765
1766         private static Efl.Object name_find(System.IntPtr obj, System.IntPtr pd, System.String search)
1767         {
1768             Eina.Log.Debug("function efl_name_find was called");
1769             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1770             if (wrapper != null)
1771             {
1772                                     Efl.Object _ret_var = default(Efl.Object);
1773                 try
1774                 {
1775                     _ret_var = ((Object)wrapper).FindName(search);
1776                 }
1777                 catch (Exception e)
1778                 {
1779                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1780                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1781                 }
1782
1783                         return _ret_var;
1784
1785             }
1786             else
1787             {
1788                 return efl_name_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), search);
1789             }
1790         }
1791
1792         private static efl_name_find_delegate efl_name_find_static_delegate;
1793
1794         
1795         private delegate void efl_event_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
1796
1797         
1798         public delegate void efl_event_thaw_api_delegate(System.IntPtr obj);
1799
1800         public static Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate> efl_event_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate>(Module, "efl_event_thaw");
1801
1802         private static void event_thaw(System.IntPtr obj, System.IntPtr pd)
1803         {
1804             Eina.Log.Debug("function efl_event_thaw was called");
1805             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1806             if (wrapper != null)
1807             {
1808             
1809                 try
1810                 {
1811                     ((Object)wrapper).ThawEvent();
1812                 }
1813                 catch (Exception e)
1814                 {
1815                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1816                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1817                 }
1818
1819         
1820             }
1821             else
1822             {
1823                 efl_event_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1824             }
1825         }
1826
1827         private static efl_event_thaw_delegate efl_event_thaw_static_delegate;
1828
1829         
1830         private delegate void efl_event_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
1831
1832         
1833         public delegate void efl_event_freeze_api_delegate(System.IntPtr obj);
1834
1835         public static Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate> efl_event_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate>(Module, "efl_event_freeze");
1836
1837         private static void event_freeze(System.IntPtr obj, System.IntPtr pd)
1838         {
1839             Eina.Log.Debug("function efl_event_freeze was called");
1840             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1841             if (wrapper != null)
1842             {
1843             
1844                 try
1845                 {
1846                     ((Object)wrapper).FreezeEvent();
1847                 }
1848                 catch (Exception e)
1849                 {
1850                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1851                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1852                 }
1853
1854         
1855             }
1856             else
1857             {
1858                 efl_event_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1859             }
1860         }
1861
1862         private static efl_event_freeze_delegate efl_event_freeze_static_delegate;
1863
1864         
1865         private delegate void efl_event_global_thaw_delegate();
1866
1867         
1868         public delegate void efl_event_global_thaw_api_delegate();
1869
1870         public static Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate> efl_event_global_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate>(Module, "efl_event_global_thaw");
1871
1872         private static void event_global_thaw(System.IntPtr obj, System.IntPtr pd)
1873         {
1874             Eina.Log.Debug("function efl_event_global_thaw was called");
1875             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1876             if (wrapper != null)
1877             {
1878             
1879                 try
1880                 {
1881                     Object.ThawEventGlobal();
1882                 }
1883                 catch (Exception e)
1884                 {
1885                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1886                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1887                 }
1888
1889         
1890             }
1891             else
1892             {
1893                 efl_event_global_thaw_ptr.Value.Delegate();
1894             }
1895         }
1896
1897         
1898         private delegate void efl_event_global_freeze_delegate();
1899
1900         
1901         public delegate void efl_event_global_freeze_api_delegate();
1902
1903         public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate> efl_event_global_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate>(Module, "efl_event_global_freeze");
1904
1905         private static void event_global_freeze(System.IntPtr obj, System.IntPtr pd)
1906         {
1907             Eina.Log.Debug("function efl_event_global_freeze was called");
1908             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1909             if (wrapper != null)
1910             {
1911             
1912                 try
1913                 {
1914                     Object.FreezeEventGlobal();
1915                 }
1916                 catch (Exception e)
1917                 {
1918                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1919                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1920                 }
1921
1922         
1923             }
1924             else
1925             {
1926                 efl_event_global_freeze_ptr.Value.Delegate();
1927             }
1928         }
1929
1930         
1931         private delegate void efl_event_callback_stop_delegate(System.IntPtr obj, System.IntPtr pd);
1932
1933         
1934         public delegate void efl_event_callback_stop_api_delegate(System.IntPtr obj);
1935
1936         public static Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate> efl_event_callback_stop_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate>(Module, "efl_event_callback_stop");
1937
1938         private static void event_callback_stop(System.IntPtr obj, System.IntPtr pd)
1939         {
1940             Eina.Log.Debug("function efl_event_callback_stop was called");
1941             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1942             if (wrapper != null)
1943             {
1944             
1945                 try
1946                 {
1947                     ((Object)wrapper).EventCallbackStop();
1948                 }
1949                 catch (Exception e)
1950                 {
1951                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1952                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1953                 }
1954
1955         
1956             }
1957             else
1958             {
1959                 efl_event_callback_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
1960             }
1961         }
1962
1963         private static efl_event_callback_stop_delegate efl_event_callback_stop_static_delegate;
1964
1965         
1966         private delegate void efl_event_callback_forwarder_del_delegate(System.IntPtr obj, System.IntPtr pd,  System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object new_obj);
1967
1968         
1969         public delegate void efl_event_callback_forwarder_del_api_delegate(System.IntPtr obj,  System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object new_obj);
1970
1971         public static Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate> efl_event_callback_forwarder_del_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate>(Module, "efl_event_callback_forwarder_del");
1972
1973         private static void event_callback_forwarder_del(System.IntPtr obj, System.IntPtr pd, System.IntPtr desc, Efl.Object new_obj)
1974         {
1975             Eina.Log.Debug("function efl_event_callback_forwarder_del was called");
1976             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
1977             if (wrapper != null)
1978             {
1979         var _in_desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(desc);
1980                                                     
1981                 try
1982                 {
1983                     ((Object)wrapper).DelEventCallbackForwarder(_in_desc, new_obj);
1984                 }
1985                 catch (Exception e)
1986                 {
1987                     Eina.Log.Warning($"Callback error: {e.ToString()}");
1988                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
1989                 }
1990
1991                                         
1992             }
1993             else
1994             {
1995                 efl_event_callback_forwarder_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), desc, new_obj);
1996             }
1997         }
1998
1999         private static efl_event_callback_forwarder_del_delegate efl_event_callback_forwarder_del_static_delegate;
2000
2001         
2002         private delegate System.IntPtr efl_children_iterator_new_delegate(System.IntPtr obj, System.IntPtr pd);
2003
2004         
2005         public delegate System.IntPtr efl_children_iterator_new_api_delegate(System.IntPtr obj);
2006
2007         public static Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate> efl_children_iterator_new_ptr = new Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate>(Module, "efl_children_iterator_new");
2008
2009         private static System.IntPtr children_iterator_new(System.IntPtr obj, System.IntPtr pd)
2010         {
2011             Eina.Log.Debug("function efl_children_iterator_new was called");
2012             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2013             if (wrapper != null)
2014             {
2015             Eina.Iterator<Efl.Object> _ret_var = default(Eina.Iterator<Efl.Object>);
2016                 try
2017                 {
2018                     _ret_var = ((Object)wrapper).NewChildrenIterator();
2019                 }
2020                 catch (Exception e)
2021                 {
2022                     Eina.Log.Warning($"Callback error: {e.ToString()}");
2023                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2024                 }
2025
2026         _ret_var.Own = false; return _ret_var.Handle;
2027
2028             }
2029             else
2030             {
2031                 return efl_children_iterator_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
2032             }
2033         }
2034
2035         private static efl_children_iterator_new_delegate efl_children_iterator_new_static_delegate;
2036
2037         [return: MarshalAs(UnmanagedType.U1)]
2038         private delegate bool efl_composite_attach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2039
2040         [return: MarshalAs(UnmanagedType.U1)]
2041         public delegate bool efl_composite_attach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2042
2043         public static Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate> efl_composite_attach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate>(Module, "efl_composite_attach");
2044
2045         private static bool composite_attach(System.IntPtr obj, System.IntPtr pd, Efl.Object comp_obj)
2046         {
2047             Eina.Log.Debug("function efl_composite_attach was called");
2048             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2049             if (wrapper != null)
2050             {
2051                                     bool _ret_var = default(bool);
2052                 try
2053                 {
2054                     _ret_var = ((Object)wrapper).AttachComposite(comp_obj);
2055                 }
2056                 catch (Exception e)
2057                 {
2058                     Eina.Log.Warning($"Callback error: {e.ToString()}");
2059                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2060                 }
2061
2062                         return _ret_var;
2063
2064             }
2065             else
2066             {
2067                 return efl_composite_attach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comp_obj);
2068             }
2069         }
2070
2071         private static efl_composite_attach_delegate efl_composite_attach_static_delegate;
2072
2073         [return: MarshalAs(UnmanagedType.U1)]
2074         private delegate bool efl_composite_detach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2075
2076         [return: MarshalAs(UnmanagedType.U1)]
2077         public delegate bool efl_composite_detach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))] Efl.Object comp_obj);
2078
2079         public static Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate> efl_composite_detach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate>(Module, "efl_composite_detach");
2080
2081         private static bool composite_detach(System.IntPtr obj, System.IntPtr pd, Efl.Object comp_obj)
2082         {
2083             Eina.Log.Debug("function efl_composite_detach was called");
2084             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2085             if (wrapper != null)
2086             {
2087                                     bool _ret_var = default(bool);
2088                 try
2089                 {
2090                     _ret_var = ((Object)wrapper).CompositeDetach(comp_obj);
2091                 }
2092                 catch (Exception e)
2093                 {
2094                     Eina.Log.Warning($"Callback error: {e.ToString()}");
2095                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2096                 }
2097
2098                         return _ret_var;
2099
2100             }
2101             else
2102             {
2103                 return efl_composite_detach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), comp_obj);
2104             }
2105         }
2106
2107         private static efl_composite_detach_delegate efl_composite_detach_static_delegate;
2108
2109         [return: MarshalAs(UnmanagedType.U1)]
2110         private delegate bool efl_composite_part_is_delegate(System.IntPtr obj, System.IntPtr pd);
2111
2112         [return: MarshalAs(UnmanagedType.U1)]
2113         public delegate bool efl_composite_part_is_api_delegate(System.IntPtr obj);
2114
2115         public static Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate> efl_composite_part_is_ptr = new Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate>(Module, "efl_composite_part_is");
2116
2117         private static bool composite_part_is(System.IntPtr obj, System.IntPtr pd)
2118         {
2119             Eina.Log.Debug("function efl_composite_part_is was called");
2120             Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.PrivateDataGet(pd);
2121             if (wrapper != null)
2122             {
2123             bool _ret_var = default(bool);
2124                 try
2125                 {
2126                     _ret_var = ((Object)wrapper).IsCompositePart();
2127                 }
2128                 catch (Exception e)
2129                 {
2130                     Eina.Log.Warning($"Callback error: {e.ToString()}");
2131                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
2132                 }
2133
2134         return _ret_var;
2135
2136             }
2137             else
2138             {
2139                 return efl_composite_part_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
2140             }
2141         }
2142
2143         private static efl_composite_part_is_delegate efl_composite_part_is_static_delegate;
2144
2145         #pragma warning restore CA1707, SA1300, SA1600
2146
2147 }
2148 }
2149 }
2150
2151 namespace Efl {
2152
2153 /// <summary>A parameter passed in event callbacks holding extra event parameters.
2154 /// This is the full event information passed to callbacks in C.
2155 /// (Since EFL 1.22)</summary>
2156 [StructLayout(LayoutKind.Sequential)]
2157 public struct Event
2158 {
2159     /// <summary>The object the callback was called on.
2160 /// (Since EFL 1.22)</summary>
2161     public Efl.Object Object;
2162     /// <summary>The event description.
2163 /// (Since EFL 1.22)</summary>
2164     public Efl.EventDescription Desc;
2165     /// <summary>Extra event information passed by the event caller. Must be cast to the event type declared in the EO file. Keep in mind that: 1) Objects are passed as a normal Eo*. Event subscribers can call functions on these objects. 2) Structs, built-in types and containers are passed as const pointers, with one level of indirection.
2166 /// (Since EFL 1.22)</summary>
2167     public System.IntPtr Info;
2168     ///<summary>Constructor for Event.</summary>
2169     public Event(
2170         Efl.Object Object = default(Efl.Object),
2171         Efl.EventDescription Desc = default(Efl.EventDescription),
2172         System.IntPtr Info = default(System.IntPtr)    )
2173     {
2174         this.Object = Object;
2175         this.Desc = Desc;
2176         this.Info = Info;
2177     }
2178
2179     public static implicit operator Event(IntPtr ptr)
2180     {
2181         var tmp = (Event.NativeStruct)Marshal.PtrToStructure(ptr, typeof(Event.NativeStruct));
2182         return tmp;
2183     }
2184
2185     ///<summary>Internal wrapper for struct Event.</summary>
2186     [StructLayout(LayoutKind.Sequential)]
2187     public struct NativeStruct
2188     {
2189         ///<summary>Internal wrapper for field Object</summary>
2190         public System.IntPtr Object;
2191         
2192         public System.IntPtr Desc;
2193         
2194         public System.IntPtr Info;
2195         ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
2196         public static implicit operator Event.NativeStruct(Event _external_struct)
2197         {
2198             var _internal_struct = new Event.NativeStruct();
2199             _internal_struct.Object = _external_struct.Object?.NativeHandle ?? System.IntPtr.Zero;
2200             _internal_struct.Desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(_external_struct.Desc);
2201             _internal_struct.Info = _external_struct.Info;
2202             return _internal_struct;
2203         }
2204
2205         ///<summary>Implicit conversion to the managed representation.</summary>
2206         public static implicit operator Event(Event.NativeStruct _internal_struct)
2207         {
2208             var _external_struct = new Event();
2209
2210             _external_struct.Object = (Efl.Object) Efl.Eo.Globals.CreateWrapperFor(_internal_struct.Object);
2211             _external_struct.Desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(_internal_struct.Desc);
2212             _external_struct.Info = _internal_struct.Info;
2213             return _external_struct;
2214         }
2215
2216     }
2217
2218 }
2219
2220 }
2221