1 #pragma warning disable CS1591
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
6 using System.ComponentModel;
8 public struct Unicode {
10 public static implicit operator Unicode( uint x)
12 return new Unicode{payload=x};
14 public static implicit operator uint(Unicode x)
20 namespace Eina { namespace Xattr {
21 /// <summary>Eina file extended attributes flags</summary>
24 /// <summary>This is the default behaviour, it will either create or replace the extended attribute</summary>
26 /// <summary>This will only succeed if the extended attribute previously existed</summary>
28 /// <summary>This will only succeed if the extended attribute wasn't previously set</summary>
33 /// <summary>A rectangle in pixel dimensions.</summary>
34 [StructLayout(LayoutKind.Sequential)]
37 /// <summary>X coordinate of the rectangle, from the top-left corner.</summary>
39 /// <summary>Y coordinate of the rectangle, from the top-left corner.</summary>
41 /// <summary>Width of the rectangle in pixels.</summary>
43 /// <summary>Height of the rectangle in pixels.</summary>
45 ///<summary>Constructor for Rect.</summary>
57 public static implicit operator Rect(IntPtr ptr)
59 var tmp = (Rect_StructInternal)Marshal.PtrToStructure(ptr, typeof(Rect_StructInternal));
60 return Rect_StructConversion.ToManaged(tmp);
63 ///<summary>Internal wrapper for struct Rect.</summary>
64 [StructLayout(LayoutKind.Sequential)]
65 public struct Rect_StructInternal
75 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
76 public static implicit operator Rect(Rect_StructInternal struct_)
78 return Rect_StructConversion.ToManaged(struct_);
80 ///<summary>Implicit conversion to the managed representation.</summary>
81 public static implicit operator Rect_StructInternal(Rect struct_)
83 return Rect_StructConversion.ToInternal(struct_);
86 /// <summary>Conversion class for struct Rect</summary>
87 public static class Rect_StructConversion
89 internal static Rect_StructInternal ToInternal(Rect _external_struct)
91 var _internal_struct = new Rect_StructInternal();
93 _internal_struct.X = _external_struct.X;
94 _internal_struct.Y = _external_struct.Y;
95 _internal_struct.W = _external_struct.W;
96 _internal_struct.H = _external_struct.H;
98 return _internal_struct;
101 internal static Rect ToManaged(Rect_StructInternal _internal_struct)
103 var _external_struct = new Rect();
105 _external_struct.X = _internal_struct.X;
106 _external_struct.Y = _internal_struct.Y;
107 _external_struct.W = _internal_struct.W;
108 _external_struct.H = _internal_struct.H;
110 return _external_struct;
116 /// <summary>A 2D location in pixels.</summary>
117 [StructLayout(LayoutKind.Sequential)]
118 public struct Position2D
120 /// <summary>X position in pixels, from the top-left corner.</summary>
122 /// <summary>Y position in pixels, from the top-left corner.</summary>
124 ///<summary>Constructor for Position2D.</summary>
127 int Y=default( int) )
132 public static implicit operator Position2D(IntPtr ptr)
134 var tmp = (Position2D_StructInternal)Marshal.PtrToStructure(ptr, typeof(Position2D_StructInternal));
135 return Position2D_StructConversion.ToManaged(tmp);
138 ///<summary>Internal wrapper for struct Position2D.</summary>
139 [StructLayout(LayoutKind.Sequential)]
140 public struct Position2D_StructInternal
146 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
147 public static implicit operator Position2D(Position2D_StructInternal struct_)
149 return Position2D_StructConversion.ToManaged(struct_);
151 ///<summary>Implicit conversion to the managed representation.</summary>
152 public static implicit operator Position2D_StructInternal(Position2D struct_)
154 return Position2D_StructConversion.ToInternal(struct_);
157 /// <summary>Conversion class for struct Position2D</summary>
158 public static class Position2D_StructConversion
160 internal static Position2D_StructInternal ToInternal(Position2D _external_struct)
162 var _internal_struct = new Position2D_StructInternal();
164 _internal_struct.X = _external_struct.X;
165 _internal_struct.Y = _external_struct.Y;
167 return _internal_struct;
170 internal static Position2D ToManaged(Position2D_StructInternal _internal_struct)
172 var _external_struct = new Position2D();
174 _external_struct.X = _internal_struct.X;
175 _external_struct.Y = _internal_struct.Y;
177 return _external_struct;
183 /// <summary>A 2D size in pixels.</summary>
184 [StructLayout(LayoutKind.Sequential)]
187 /// <summary>X position in pixels, from the top-left corner.</summary>
189 /// <summary>Y position in pixels, from the top-left corner.</summary>
191 ///<summary>Constructor for Size2D.</summary>
194 int H=default( int) )
199 public static implicit operator Size2D(IntPtr ptr)
201 var tmp = (Size2D_StructInternal)Marshal.PtrToStructure(ptr, typeof(Size2D_StructInternal));
202 return Size2D_StructConversion.ToManaged(tmp);
205 ///<summary>Internal wrapper for struct Size2D.</summary>
206 [StructLayout(LayoutKind.Sequential)]
207 public struct Size2D_StructInternal
213 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
214 public static implicit operator Size2D(Size2D_StructInternal struct_)
216 return Size2D_StructConversion.ToManaged(struct_);
218 ///<summary>Implicit conversion to the managed representation.</summary>
219 public static implicit operator Size2D_StructInternal(Size2D struct_)
221 return Size2D_StructConversion.ToInternal(struct_);
224 /// <summary>Conversion class for struct Size2D</summary>
225 public static class Size2D_StructConversion
227 internal static Size2D_StructInternal ToInternal(Size2D _external_struct)
229 var _internal_struct = new Size2D_StructInternal();
231 _internal_struct.W = _external_struct.W;
232 _internal_struct.H = _external_struct.H;
234 return _internal_struct;
237 internal static Size2D ToManaged(Size2D_StructInternal _internal_struct)
239 var _external_struct = new Size2D();
241 _external_struct.W = _internal_struct.W;
242 _external_struct.H = _internal_struct.H;
244 return _external_struct;
250 /// <summary>Eina file data structure</summary>
251 [StructLayout(LayoutKind.Sequential)]
254 ///<summary>Placeholder field</summary>
256 public static implicit operator File(IntPtr ptr)
258 var tmp = (File_StructInternal)Marshal.PtrToStructure(ptr, typeof(File_StructInternal));
259 return File_StructConversion.ToManaged(tmp);
262 ///<summary>Internal wrapper for struct File.</summary>
263 [StructLayout(LayoutKind.Sequential)]
264 public struct File_StructInternal
266 internal IntPtr field;
267 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
268 public static implicit operator File(File_StructInternal struct_)
270 return File_StructConversion.ToManaged(struct_);
272 ///<summary>Implicit conversion to the managed representation.</summary>
273 public static implicit operator File_StructInternal(File struct_)
275 return File_StructConversion.ToInternal(struct_);
278 /// <summary>Conversion class for struct File</summary>
279 public static class File_StructConversion
281 internal static File_StructInternal ToInternal(File _external_struct)
283 var _internal_struct = new File_StructInternal();
286 return _internal_struct;
289 internal static File ToManaged(File_StructInternal _internal_struct)
291 var _external_struct = new File();
294 return _external_struct;
300 /// <summary>A simple 2D vector type using floating point values.</summary>
301 [StructLayout(LayoutKind.Sequential)]
302 public struct Vector2
304 /// <summary>X coordinate.</summary>
306 /// <summary>Y coordinate.</summary>
308 ///<summary>Constructor for Vector2.</summary>
310 double X=default(double),
311 double Y=default(double) )
316 public static implicit operator Vector2(IntPtr ptr)
318 var tmp = (Vector2_StructInternal)Marshal.PtrToStructure(ptr, typeof(Vector2_StructInternal));
319 return Vector2_StructConversion.ToManaged(tmp);
322 ///<summary>Internal wrapper for struct Vector2.</summary>
323 [StructLayout(LayoutKind.Sequential)]
324 public struct Vector2_StructInternal
330 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
331 public static implicit operator Vector2(Vector2_StructInternal struct_)
333 return Vector2_StructConversion.ToManaged(struct_);
335 ///<summary>Implicit conversion to the managed representation.</summary>
336 public static implicit operator Vector2_StructInternal(Vector2 struct_)
338 return Vector2_StructConversion.ToInternal(struct_);
341 /// <summary>Conversion class for struct Vector2</summary>
342 public static class Vector2_StructConversion
344 internal static Vector2_StructInternal ToInternal(Vector2 _external_struct)
346 var _internal_struct = new Vector2_StructInternal();
348 _internal_struct.X = _external_struct.X;
349 _internal_struct.Y = _external_struct.Y;
351 return _internal_struct;
354 internal static Vector2 ToManaged(Vector2_StructInternal _internal_struct)
356 var _external_struct = new Vector2();
358 _external_struct.X = _internal_struct.X;
359 _external_struct.Y = _internal_struct.Y;
361 return _external_struct;
367 /// <summary>Eina 3x3 Matrix</summary>
368 [StructLayout(LayoutKind.Sequential)]
369 public struct Matrix3
371 /// <summary>XX matrix value</summary>
373 /// <summary>XY matrix value</summary>
375 /// <summary>XZ matrix value</summary>
377 /// <summary>YX matrix value</summary>
379 /// <summary>YY matrix value</summary>
381 /// <summary>YZ matrix value</summary>
383 /// <summary>ZX matrix value</summary>
385 /// <summary>ZY matrix value</summary>
387 /// <summary>ZZ matrix value</summary>
389 ///<summary>Constructor for Matrix3.</summary>
391 double Xx=default(double),
392 double Xy=default(double),
393 double Xz=default(double),
394 double Yx=default(double),
395 double Yy=default(double),
396 double Yz=default(double),
397 double Zx=default(double),
398 double Zy=default(double),
399 double Zz=default(double) )
411 public static implicit operator Matrix3(IntPtr ptr)
413 var tmp = (Matrix3_StructInternal)Marshal.PtrToStructure(ptr, typeof(Matrix3_StructInternal));
414 return Matrix3_StructConversion.ToManaged(tmp);
417 ///<summary>Internal wrapper for struct Matrix3.</summary>
418 [StructLayout(LayoutKind.Sequential)]
419 public struct Matrix3_StructInternal
439 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
440 public static implicit operator Matrix3(Matrix3_StructInternal struct_)
442 return Matrix3_StructConversion.ToManaged(struct_);
444 ///<summary>Implicit conversion to the managed representation.</summary>
445 public static implicit operator Matrix3_StructInternal(Matrix3 struct_)
447 return Matrix3_StructConversion.ToInternal(struct_);
450 /// <summary>Conversion class for struct Matrix3</summary>
451 public static class Matrix3_StructConversion
453 internal static Matrix3_StructInternal ToInternal(Matrix3 _external_struct)
455 var _internal_struct = new Matrix3_StructInternal();
457 _internal_struct.Xx = _external_struct.Xx;
458 _internal_struct.Xy = _external_struct.Xy;
459 _internal_struct.Xz = _external_struct.Xz;
460 _internal_struct.Yx = _external_struct.Yx;
461 _internal_struct.Yy = _external_struct.Yy;
462 _internal_struct.Yz = _external_struct.Yz;
463 _internal_struct.Zx = _external_struct.Zx;
464 _internal_struct.Zy = _external_struct.Zy;
465 _internal_struct.Zz = _external_struct.Zz;
467 return _internal_struct;
470 internal static Matrix3 ToManaged(Matrix3_StructInternal _internal_struct)
472 var _external_struct = new Matrix3();
474 _external_struct.Xx = _internal_struct.Xx;
475 _external_struct.Xy = _internal_struct.Xy;
476 _external_struct.Xz = _internal_struct.Xz;
477 _external_struct.Yx = _internal_struct.Yx;
478 _external_struct.Yy = _internal_struct.Yy;
479 _external_struct.Yz = _internal_struct.Yz;
480 _external_struct.Zx = _internal_struct.Zx;
481 _external_struct.Zy = _internal_struct.Zy;
482 _external_struct.Zz = _internal_struct.Zz;
484 return _external_struct;
490 /// <summary>Eina file direct information data structure</summary>
491 [StructLayout(LayoutKind.Sequential)]
492 public struct FileDirectInfo
494 ///<summary>Placeholder field</summary>
496 public static implicit operator FileDirectInfo(IntPtr ptr)
498 var tmp = (FileDirectInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(FileDirectInfo_StructInternal));
499 return FileDirectInfo_StructConversion.ToManaged(tmp);
502 ///<summary>Internal wrapper for struct FileDirectInfo.</summary>
503 [StructLayout(LayoutKind.Sequential)]
504 public struct FileDirectInfo_StructInternal
506 internal IntPtr field;
507 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
508 public static implicit operator FileDirectInfo(FileDirectInfo_StructInternal struct_)
510 return FileDirectInfo_StructConversion.ToManaged(struct_);
512 ///<summary>Implicit conversion to the managed representation.</summary>
513 public static implicit operator FileDirectInfo_StructInternal(FileDirectInfo struct_)
515 return FileDirectInfo_StructConversion.ToInternal(struct_);
518 /// <summary>Conversion class for struct FileDirectInfo</summary>
519 public static class FileDirectInfo_StructConversion
521 internal static FileDirectInfo_StructInternal ToInternal(FileDirectInfo _external_struct)
523 var _internal_struct = new FileDirectInfo_StructInternal();
526 return _internal_struct;
529 internal static FileDirectInfo ToManaged(FileDirectInfo_StructInternal _internal_struct)
531 var _external_struct = new FileDirectInfo();
534 return _external_struct;
540 /// <summary>The structure to store some file statistics.</summary>
541 [StructLayout(LayoutKind.Sequential)]
544 /// <summary>The device where this file is located</summary>
546 /// <summary>The inode</summary>
548 /// <summary>The mode</summary>
550 /// <summary>The link number</summary>
552 /// <summary>The owner user id</summary>
554 /// <summary>The owner group id</summary>
556 /// <summary>The remote device</summary>
558 /// <summary>The file size in bytes</summary>
560 /// <summary>The block size in bytes</summary>
562 /// <summary>The number of blocks allocated</summary>
564 /// <summary>The tilestamp when the file was last accessed</summary>
566 /// <summary>The nano version of the timestmap when the file was last accessed</summary>
567 public uint Atimensec;
568 /// <summary>The tilestamp when the file was modified</summary>
570 /// <summary>The nano version of the timestmap when the file was modified</summary>
571 public uint Mtimensec;
572 /// <summary>The tilestamp when the file was created</summary>
574 /// <summary>The nano version of the timestmap when the file was created</summary>
575 public uint Ctimensec;
576 ///<summary>Constructor for Stat.</summary>
578 uint Dev=default( uint),
579 uint Ino=default( uint),
580 uint Mode=default( uint),
581 uint Nlink=default( uint),
582 uint Uid=default( uint),
583 uint Gid=default( uint),
584 uint Rdev=default( uint),
585 uint Size=default( uint),
586 uint Blksize=default( uint),
587 uint Blocks=default( uint),
588 uint Atime=default( uint),
589 uint Atimensec=default( uint),
590 uint Mtime=default( uint),
591 uint Mtimensec=default( uint),
592 uint Ctime=default( uint),
593 uint Ctimensec=default( uint) )
603 this.Blksize = Blksize;
604 this.Blocks = Blocks;
606 this.Atimensec = Atimensec;
608 this.Mtimensec = Mtimensec;
610 this.Ctimensec = Ctimensec;
612 public static implicit operator Stat(IntPtr ptr)
614 var tmp = (Stat_StructInternal)Marshal.PtrToStructure(ptr, typeof(Stat_StructInternal));
615 return Stat_StructConversion.ToManaged(tmp);
618 ///<summary>Internal wrapper for struct Stat.</summary>
619 [StructLayout(LayoutKind.Sequential)]
620 public struct Stat_StructInternal
645 public uint Atimensec;
649 public uint Mtimensec;
653 public uint Ctimensec;
654 ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
655 public static implicit operator Stat(Stat_StructInternal struct_)
657 return Stat_StructConversion.ToManaged(struct_);
659 ///<summary>Implicit conversion to the managed representation.</summary>
660 public static implicit operator Stat_StructInternal(Stat struct_)
662 return Stat_StructConversion.ToInternal(struct_);
665 /// <summary>Conversion class for struct Stat</summary>
666 public static class Stat_StructConversion
668 internal static Stat_StructInternal ToInternal(Stat _external_struct)
670 var _internal_struct = new Stat_StructInternal();
672 _internal_struct.Dev = _external_struct.Dev;
673 _internal_struct.Ino = _external_struct.Ino;
674 _internal_struct.Mode = _external_struct.Mode;
675 _internal_struct.Nlink = _external_struct.Nlink;
676 _internal_struct.Uid = _external_struct.Uid;
677 _internal_struct.Gid = _external_struct.Gid;
678 _internal_struct.Rdev = _external_struct.Rdev;
679 _internal_struct.Size = _external_struct.Size;
680 _internal_struct.Blksize = _external_struct.Blksize;
681 _internal_struct.Blocks = _external_struct.Blocks;
682 _internal_struct.Atime = _external_struct.Atime;
683 _internal_struct.Atimensec = _external_struct.Atimensec;
684 _internal_struct.Mtime = _external_struct.Mtime;
685 _internal_struct.Mtimensec = _external_struct.Mtimensec;
686 _internal_struct.Ctime = _external_struct.Ctime;
687 _internal_struct.Ctimensec = _external_struct.Ctimensec;
689 return _internal_struct;
692 internal static Stat ToManaged(Stat_StructInternal _internal_struct)
694 var _external_struct = new Stat();
696 _external_struct.Dev = _internal_struct.Dev;
697 _external_struct.Ino = _internal_struct.Ino;
698 _external_struct.Mode = _internal_struct.Mode;
699 _external_struct.Nlink = _internal_struct.Nlink;
700 _external_struct.Uid = _internal_struct.Uid;
701 _external_struct.Gid = _internal_struct.Gid;
702 _external_struct.Rdev = _internal_struct.Rdev;
703 _external_struct.Size = _internal_struct.Size;
704 _external_struct.Blksize = _internal_struct.Blksize;
705 _external_struct.Blocks = _internal_struct.Blocks;
706 _external_struct.Atime = _internal_struct.Atime;
707 _external_struct.Atimensec = _internal_struct.Atimensec;
708 _external_struct.Mtime = _internal_struct.Mtime;
709 _external_struct.Mtimensec = _internal_struct.Mtimensec;
710 _external_struct.Ctime = _internal_struct.Ctime;
711 _external_struct.Ctimensec = _internal_struct.Ctimensec;
713 return _external_struct;