[EflSharp] Update Circle and efl cs files (#896)
[platform/core/csapi/tizenfx.git] / internals / src / EflSharp / EflSharp / efl / efl_loop_message_future_handler.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 ///<summary>Event argument wrapper for event <see cref="Efl.LoopMessageFutureHandler.MessageFutureEvt"/>.</summary>
11 public class LoopMessageFutureHandlerMessageFutureEvt_Args : EventArgs {
12     ///<summary>Actual event payload.</summary>
13     public Efl.LoopMessageFuture arg { get; set; }
14 }
15 /// <summary>Internal use for future on an efl loop - replacing legacy ecore events</summary>
16 [Efl.LoopMessageFutureHandler.NativeMethods]
17 public class LoopMessageFutureHandler : Efl.LoopMessageHandler
18 {
19     ///<summary>Pointer to the native class description.</summary>
20     public override System.IntPtr NativeClass
21     {
22         get
23         {
24             if (((object)this).GetType() == typeof(LoopMessageFutureHandler))
25             {
26                 return GetEflClassStatic();
27             }
28             else
29             {
30                 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
31             }
32         }
33     }
34
35     [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
36         efl_loop_message_future_handler_class_get();
37     /// <summary>Initializes a new instance of the <see cref="LoopMessageFutureHandler"/> class.</summary>
38     /// <param name="parent">Parent instance.</param>
39     public LoopMessageFutureHandler(Efl.Object parent= null
40             ) : base(efl_loop_message_future_handler_class_get(), typeof(LoopMessageFutureHandler), parent)
41     {
42         FinishInstantiation();
43     }
44
45     /// <summary>Initializes a new instance of the <see cref="LoopMessageFutureHandler"/> class.
46     /// Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
47     /// <param name="raw">The native pointer to be wrapped.</param>
48     protected LoopMessageFutureHandler(System.IntPtr raw) : base(raw)
49     {
50     }
51
52     /// <summary>Initializes a new instance of the <see cref="LoopMessageFutureHandler"/> class.
53     /// Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
54     /// <param name="baseKlass">The pointer to the base native Eo class.</param>
55     /// <param name="managedType">The managed type of the public constructor that originated this call.</param>
56     /// <param name="parent">The Efl.Object parent of this instance.</param>
57     protected LoopMessageFutureHandler(IntPtr baseKlass, System.Type managedType, Efl.Object parent) : base(baseKlass, managedType, parent)
58     {
59     }
60
61     /// <summary>No description supplied.</summary>
62     public event EventHandler<Efl.LoopMessageFutureHandlerMessageFutureEvt_Args> MessageFutureEvt
63     {
64         add
65         {
66             lock (eventLock)
67             {
68                 Efl.EventCb callerCb = (IntPtr data, ref Efl.Event.NativeStruct evt) =>
69                 {
70                     var obj = Efl.Eo.Globals.WrapperSupervisorPtrToManaged(data).Target;
71                     if (obj != null)
72                     {
73                         Efl.LoopMessageFutureHandlerMessageFutureEvt_Args args = new Efl.LoopMessageFutureHandlerMessageFutureEvt_Args();
74                         args.arg = (Efl.Eo.Globals.CreateWrapperFor(evt.Info) as Efl.LoopMessageFuture);
75                         try
76                         {
77                             value?.Invoke(obj, args);
78                         }
79                         catch (Exception e)
80                         {
81                             Eina.Log.Error(e.ToString());
82                             Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
83                         }
84                     }
85                 };
86
87                 string key = "_EFL_LOOP_MESSAGE_FUTURE_HANDLER_EVENT_MESSAGE_FUTURE";
88                 AddNativeEventHandler(efl.Libs.Ecore, key, callerCb, value);
89             }
90         }
91
92         remove
93         {
94             lock (eventLock)
95             {
96                 string key = "_EFL_LOOP_MESSAGE_FUTURE_HANDLER_EVENT_MESSAGE_FUTURE";
97                 RemoveNativeEventHandler(efl.Libs.Ecore, key, value);
98             }
99         }
100     }
101     ///<summary>Method to raise event MessageFutureEvt.</summary>
102     public void OnMessageFutureEvt(Efl.LoopMessageFutureHandlerMessageFutureEvt_Args e)
103     {
104         var key = "_EFL_LOOP_MESSAGE_FUTURE_HANDLER_EVENT_MESSAGE_FUTURE";
105         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Ecore, key);
106         if (desc == IntPtr.Zero)
107         {
108             Eina.Log.Error($"Failed to get native event {key}");
109             return;
110         }
111
112         IntPtr info = e.arg.NativeHandle;
113         Efl.Eo.Globals.efl_event_callback_call(this.NativeHandle, desc, info);
114     }
115     /// <summary>No description supplied.</summary>
116     /// <returns>No description supplied.</returns>
117     virtual public Efl.LoopMessageFuture AddMessageType() {
118          var _ret_var = Efl.LoopMessageFutureHandler.NativeMethods.efl_loop_message_future_handler_message_type_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
119         Eina.Error.RaiseIfUnhandledException();
120         return _ret_var;
121  }
122     private static IntPtr GetEflClassStatic()
123     {
124         return Efl.LoopMessageFutureHandler.efl_loop_message_future_handler_class_get();
125     }
126     /// <summary>Wrapper for native methods and virtual method delegates.
127     /// For internal use by generated code only.</summary>
128     public new class NativeMethods : Efl.LoopMessageHandler.NativeMethods
129     {
130         private static Efl.Eo.NativeModule Module = new Efl.Eo.NativeModule(    efl.Libs.Ecore);
131         /// <summary>Gets the list of Eo operations to override.</summary>
132         /// <returns>The list of Eo operations to be overload.</returns>
133         public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
134         {
135             var descs = new System.Collections.Generic.List<Efl_Op_Description>();
136             var methods = Efl.Eo.Globals.GetUserMethods(type);
137
138             if (efl_loop_message_future_handler_message_type_add_static_delegate == null)
139             {
140                 efl_loop_message_future_handler_message_type_add_static_delegate = new efl_loop_message_future_handler_message_type_add_delegate(message_type_add);
141             }
142
143             if (methods.FirstOrDefault(m => m.Name == "AddMessageType") != null)
144             {
145                 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_loop_message_future_handler_message_type_add"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_future_handler_message_type_add_static_delegate) });
146             }
147
148             descs.AddRange(base.GetEoOps(type));
149             return descs;
150         }
151         /// <summary>Returns the Eo class for the native methods of this class.</summary>
152         /// <returns>The native class pointer.</returns>
153         public override IntPtr GetEflClass()
154         {
155             return Efl.LoopMessageFutureHandler.efl_loop_message_future_handler_class_get();
156         }
157
158         #pragma warning disable CA1707, CS1591, SA1300, SA1600
159
160         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
161         private delegate Efl.LoopMessageFuture efl_loop_message_future_handler_message_type_add_delegate(System.IntPtr obj, System.IntPtr pd);
162
163         [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEo<Efl.Eo.NonOwnTag>))]
164         public delegate Efl.LoopMessageFuture efl_loop_message_future_handler_message_type_add_api_delegate(System.IntPtr obj);
165
166         public static Efl.Eo.FunctionWrapper<efl_loop_message_future_handler_message_type_add_api_delegate> efl_loop_message_future_handler_message_type_add_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_future_handler_message_type_add_api_delegate>(Module, "efl_loop_message_future_handler_message_type_add");
167
168         private static Efl.LoopMessageFuture message_type_add(System.IntPtr obj, System.IntPtr pd)
169         {
170             Eina.Log.Debug("function efl_loop_message_future_handler_message_type_add was called");
171             var ws = Efl.Eo.Globals.GetWrapperSupervisor(obj);
172             if (ws != null)
173             {
174             Efl.LoopMessageFuture _ret_var = default(Efl.LoopMessageFuture);
175                 try
176                 {
177                     _ret_var = ((LoopMessageFutureHandler)ws.Target).AddMessageType();
178                 }
179                 catch (Exception e)
180                 {
181                     Eina.Log.Warning($"Callback error: {e.ToString()}");
182                     Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
183                 }
184
185         return _ret_var;
186
187             }
188             else
189             {
190                 return efl_loop_message_future_handler_message_type_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
191             }
192         }
193
194         private static efl_loop_message_future_handler_message_type_add_delegate efl_loop_message_future_handler_message_type_add_static_delegate;
195
196         #pragma warning restore CA1707, CS1591, SA1300, SA1600
197
198 }
199 }
200 }
201