package com.nativelibs4java.mono.library;
/**
 * This file was autogenerated by <a href="http://jnaerator.googlecode.com/">JNAerator</a>,<br>
 * a tool written by <a href="http://ochafik.free.fr/">Olivier Chafik</a> that <a href="http://code.google.com/p/jnaerator/wiki/CreditsAndLicense">uses a few opensource projects.</a>.<br>
 * For help, please visit <a href="http://nativelibs4java.googlecode.com/">NativeLibs4Java</a>, <a href="http://rococoa.dev.java.net/">Rococoa</a>, or <a href="http://jna.dev.java.net/">JNA</a>.
 */
public class MonoSymbolTable extends com.ochafik.lang.jnaerator.runtime.Structure<MonoSymbolTable, MonoSymbolTable.ByValue, MonoSymbolTable.ByReference> {
	public long magic;
	public int version;
	public int total_size;
	/**
	 * Corlib and metadata info.<br>
	 * C type : MonoDebugHandle*
	 */
	public com.nativelibs4java.mono.library.MonoDebugHandle.ByReference corlib;
	/// C type : MonoDebugDataTable*
	public com.nativelibs4java.mono.library.MonoLibrary.MonoDebugDataTable global_data_table;
	/// C type : MonoDebugList*
	public com.nativelibs4java.mono.library.MonoDebugList.ByReference data_tables;
	/**
	 * The symbol files.<br>
	 * C type : MonoDebugList*
	 */
	public com.nativelibs4java.mono.library.MonoDebugList.ByReference symbol_files;
	public MonoSymbolTable() {
		super();
	}
	/**
	 * @param corlib Corlib and metadata info.<br>
	 * C type : MonoDebugHandle*<br>
	 * @param global_data_table C type : MonoDebugDataTable*<br>
	 * @param data_tables C type : MonoDebugList*<br>
	 * @param symbol_files The symbol files.<br>
	 * C type : MonoDebugList*
	 */
	public MonoSymbolTable(long magic, int version, int total_size, com.nativelibs4java.mono.library.MonoDebugHandle.ByReference corlib, com.nativelibs4java.mono.library.MonoLibrary.MonoDebugDataTable global_data_table, com.nativelibs4java.mono.library.MonoDebugList.ByReference data_tables, com.nativelibs4java.mono.library.MonoDebugList.ByReference symbol_files) {
		super();
		this.magic = magic;
		this.version = version;
		this.total_size = total_size;
		this.corlib = corlib;
		this.global_data_table = global_data_table;
		this.data_tables = data_tables;
		this.symbol_files = symbol_files;
	}
	protected ByReference newByReference() { return new ByReference(); }
	protected ByValue newByValue() { return new ByValue(); }
	protected MonoSymbolTable newInstance() { return new MonoSymbolTable(); }
	public static MonoSymbolTable[] newArray(int arrayLength) {
		return com.ochafik.lang.jnaerator.runtime.Structure.newArray(MonoSymbolTable.class, arrayLength);
	}
	public static class ByReference extends MonoSymbolTable implements com.sun.jna.Structure.ByReference {}
	public static class ByValue extends MonoSymbolTable implements com.sun.jna.Structure.ByValue {}
}
