1 #pragma warning disable CS1591
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
6 using System.Threading;
7 using System.ComponentModel;
10 /// <summary>This type is a alias for struct tm. It is intended to be a standard way to reference it in .eo files.
11 /// (Since EFL 1.18)</summary>
12 [StructLayout(LayoutKind.Sequential)]
13 [Efl.Eo.BindingEntity]
16 /// <summary>Seconds. [0-60] (1 leap second)</summary>
18 /// <summary>Minutes. [0-59]</summary>
20 /// <summary>Hours. [0-23]</summary>
22 /// <summary>Day. [1-31]</summary>
24 /// <summary>Month. [0-11]</summary>
26 /// <summary>Year - 1900.</summary>
28 /// <summary>Day of week. [0-6]</summary>
30 /// <summary>Days in year.[0-365]</summary>
32 /// <summary>DST. [-1/0/1]</summary>
34 /// <summary>Constructor for Time.</summary>
35 /// <param name="Tm_sec">Seconds. [0-60] (1 leap second)</param>;
36 /// <param name="Tm_min">Minutes. [0-59]</param>;
37 /// <param name="Tm_hour">Hours. [0-23]</param>;
38 /// <param name="Tm_mday">Day. [1-31]</param>;
39 /// <param name="Tm_mon">Month. [0-11]</param>;
40 /// <param name="Tm_year">Year - 1900.</param>;
41 /// <param name="Tm_wday">Day of week. [0-6]</param>;
42 /// <param name="Tm_yday">Days in year.[0-365]</param>;
43 /// <param name="Tm_isdst">DST. [-1/0/1]</param>;
45 int Tm_sec = default(int),
46 int Tm_min = default(int),
47 int Tm_hour = default(int),
48 int Tm_mday = default(int),
49 int Tm_mon = default(int),
50 int Tm_year = default(int),
51 int Tm_wday = default(int),
52 int Tm_yday = default(int),
53 int Tm_isdst = default(int) )
57 this.Tm_hour = Tm_hour;
58 this.Tm_mday = Tm_mday;
60 this.Tm_year = Tm_year;
61 this.Tm_wday = Tm_wday;
62 this.Tm_yday = Tm_yday;
63 this.Tm_isdst = Tm_isdst;
66 /// <summary>Implicit conversion to the managed representation from a native pointer.</summary>
67 /// <param name="ptr">Native pointer to be converted.</param>
68 public static implicit operator Time(IntPtr ptr)
70 var tmp = (Time.NativeStruct)Marshal.PtrToStructure(ptr, typeof(Time.NativeStruct));
74 #pragma warning disable CS1591
76 /// <summary>Internal wrapper for struct Time.</summary>
77 [StructLayout(LayoutKind.Sequential)]
78 public struct NativeStruct
98 /// <summary>Implicit conversion to the internal/marshalling representation.</summary>
99 public static implicit operator Time.NativeStruct(Time _external_struct)
101 var _internal_struct = new Time.NativeStruct();
102 _internal_struct.Tm_sec = _external_struct.Tm_sec;
103 _internal_struct.Tm_min = _external_struct.Tm_min;
104 _internal_struct.Tm_hour = _external_struct.Tm_hour;
105 _internal_struct.Tm_mday = _external_struct.Tm_mday;
106 _internal_struct.Tm_mon = _external_struct.Tm_mon;
107 _internal_struct.Tm_year = _external_struct.Tm_year;
108 _internal_struct.Tm_wday = _external_struct.Tm_wday;
109 _internal_struct.Tm_yday = _external_struct.Tm_yday;
110 _internal_struct.Tm_isdst = _external_struct.Tm_isdst;
111 return _internal_struct;
114 /// <summary>Implicit conversion to the managed representation.</summary>
115 public static implicit operator Time(Time.NativeStruct _internal_struct)
117 var _external_struct = new Time();
118 _external_struct.Tm_sec = _internal_struct.Tm_sec;
119 _external_struct.Tm_min = _internal_struct.Tm_min;
120 _external_struct.Tm_hour = _internal_struct.Tm_hour;
121 _external_struct.Tm_mday = _internal_struct.Tm_mday;
122 _external_struct.Tm_mon = _internal_struct.Tm_mon;
123 _external_struct.Tm_year = _internal_struct.Tm_year;
124 _external_struct.Tm_wday = _internal_struct.Tm_wday;
125 _external_struct.Tm_yday = _internal_struct.Tm_yday;
126 _external_struct.Tm_isdst = _internal_struct.Tm_isdst;
127 return _external_struct;
132 #pragma warning restore CS1591
140 /// <summary>This type describes the version of EFL with an optional variant.
141 /// This may be used to query the current running version of EFL. Or it can be passed by applications at startup time to inform EFL of the version a certain application was built for.
142 /// (Since EFL 1.18)</summary>
143 [StructLayout(LayoutKind.Sequential)]
144 [Efl.Eo.BindingEntity]
145 public struct Version
147 /// <summary>Major component of the version (>= 1).</summary>
149 /// <summary>Minor component of the version (>= 0).</summary>
151 /// <summary>Micro component of the version (>= 0).</summary>
153 /// <summary>Revision component of the version (>= 0).</summary>
155 /// <summary>Special version string for this build of EFL, <c>null</c> for vanilla (upstream) EFL. Contains <c>EFL_VERSION_FLAVOR</c>.</summary>
156 public System.String Flavor;
157 /// <summary>Contains <c>EFL_BUILD_ID</c>.</summary>
158 public System.String Build_id;
159 /// <summary>Constructor for Version.</summary>
160 /// <param name="Major">Major component of the version (>= 1).</param>;
161 /// <param name="Minor">Minor component of the version (>= 0).</param>;
162 /// <param name="Micro">Micro component of the version (>= 0).</param>;
163 /// <param name="Revision">Revision component of the version (>= 0).</param>;
164 /// <param name="Flavor">Special version string for this build of EFL, <c>null</c> for vanilla (upstream) EFL. Contains <c>EFL_VERSION_FLAVOR</c>.</param>;
165 /// <param name="Build_id">Contains <c>EFL_BUILD_ID</c>.</param>;
167 int Major = default(int),
168 int Minor = default(int),
169 int Micro = default(int),
170 int Revision = default(int),
171 System.String Flavor = default(System.String),
172 System.String Build_id = default(System.String) )
177 this.Revision = Revision;
178 this.Flavor = Flavor;
179 this.Build_id = Build_id;
182 /// <summary>Implicit conversion to the managed representation from a native pointer.</summary>
183 /// <param name="ptr">Native pointer to be converted.</param>
184 public static implicit operator Version(IntPtr ptr)
186 var tmp = (Version.NativeStruct)Marshal.PtrToStructure(ptr, typeof(Version.NativeStruct));
190 #pragma warning disable CS1591
192 /// <summary>Internal wrapper for struct Version.</summary>
193 [StructLayout(LayoutKind.Sequential)]
194 public struct NativeStruct
204 /// <summary>Internal wrapper for field Flavor</summary>
205 public System.IntPtr Flavor;
206 /// <summary>Internal wrapper for field Build_id</summary>
207 public System.IntPtr Build_id;
208 /// <summary>Implicit conversion to the internal/marshalling representation.</summary>
209 public static implicit operator Version.NativeStruct(Version _external_struct)
211 var _internal_struct = new Version.NativeStruct();
212 _internal_struct.Major = _external_struct.Major;
213 _internal_struct.Minor = _external_struct.Minor;
214 _internal_struct.Micro = _external_struct.Micro;
215 _internal_struct.Revision = _external_struct.Revision;
216 _internal_struct.Flavor = Eina.MemoryNative.StrDup(_external_struct.Flavor);
217 _internal_struct.Build_id = Eina.MemoryNative.StrDup(_external_struct.Build_id);
218 return _internal_struct;
221 /// <summary>Implicit conversion to the managed representation.</summary>
222 public static implicit operator Version(Version.NativeStruct _internal_struct)
224 var _external_struct = new Version();
225 _external_struct.Major = _internal_struct.Major;
226 _external_struct.Minor = _internal_struct.Minor;
227 _external_struct.Micro = _internal_struct.Micro;
228 _external_struct.Revision = _internal_struct.Revision;
229 _external_struct.Flavor = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Flavor);
230 _external_struct.Build_id = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Build_id);
231 return _external_struct;
236 #pragma warning restore CS1591