using System; namespace System.Runtime.InteropServices { /// The StructLayoutAttribute class allows the user to control the physical layout of the data fields of a class or structure. // Token: 0x02000058 RID: 88 [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, Inherited = false)] [ComVisible(true)] public sealed class StructLayoutAttribute : Attribute { /// Initalizes a new instance of the class with the specified enumeration member. /// One of the values that specifes how the class or structure should be arranged. // Token: 0x0600068A RID: 1674 RVA: 0x00014D48 File Offset: 0x00012F48 public StructLayoutAttribute(short layoutKind) { this.lkind = (LayoutKind)layoutKind; } /// Initalizes a new instance of the class with the specified enumeration member. /// One of the values that specifes how the class or structure should be arranged. // Token: 0x0600068B RID: 1675 RVA: 0x00014D68 File Offset: 0x00012F68 public StructLayoutAttribute(LayoutKind layoutKind) { this.lkind = layoutKind; } /// Gets the value that specifies how the class or structure is arranged. /// The value that specifies how the class or structure is arranged. // Token: 0x170000C2 RID: 194 // (get) Token: 0x0600068C RID: 1676 RVA: 0x00014D88 File Offset: 0x00012F88 public LayoutKind Value { get { return this.lkind; } } /// Indicates how string data fields within the class should be marshaled as LPWSTR or LPSTR by default. // Token: 0x040000AE RID: 174 public CharSet CharSet = CharSet.Auto; /// Controls the alignment of data fields of a class or structure in memory. // Token: 0x040000AF RID: 175 public int Pack = 8; /// Indicates the absolute size of the class or structure. // Token: 0x040000B0 RID: 176 public int Size; // Token: 0x040000B1 RID: 177 private LayoutKind lkind; } }