// This file is an automatically generated file, please do not edit this file, modify the WrapperGenerator.java file instead !

package sun.awt.X11;

import sun.misc.*;

import java.util.logging.*;
public class Visual extends XWrapperBase { 
	private Unsafe unsafe = XlibWrapper.unsafe; 
	private final boolean should_free_memory;
	public static int getSize() { return ((XlibWrapper.dataModel == 32)?(32):(56)); }
	public int getDataSize() { return getSize(); }

	long pData;

	public long getPData() { return pData; }


	public Visual(long addr) {
		log.finest("Creating");
		pData=addr;
		should_free_memory = false;
	}


	public Visual() {
		log.finest("Creating");
		pData = unsafe.allocateMemory(getSize());
		should_free_memory = true;
	}


	public void dispose() {
		log.finest("Disposing");
		if (should_free_memory) {
			log.finest("freeing memory");
			unsafe.freeMemory(pData); 
	}
		}
	public XExtData get_ext_data(int index) { log.finest(""); return (Native.getLong(pData+0) != 0)?(new XExtData(Native.getLong(pData+0)+index*((XlibWrapper.dataModel == 32)?(16):(32)))):(null); }
	public long get_ext_data() { log.finest("");return Native.getLong(pData+0); }
	public void set_ext_data(long v) { log.finest(""); Native.putLong(pData + 0, v); }
	public long get_visualid() { log.finest("");return (Native.getLong(pData+((XlibWrapper.dataModel == 32)?(4):(8)))); }
	public void set_visualid(long v) { log.finest(""); Native.putLong(pData+((XlibWrapper.dataModel == 32)?(4):(8)), v); }
	public int get_class() { log.finest("");return (Native.getInt(pData+((XlibWrapper.dataModel == 32)?(8):(16)))); }
	public void set_class(int v) { log.finest(""); Native.putInt(pData+((XlibWrapper.dataModel == 32)?(8):(16)), v); }
	public long get_red_mask() { log.finest("");return (Native.getLong(pData+((XlibWrapper.dataModel == 32)?(12):(24)))); }
	public void set_red_mask(long v) { log.finest(""); Native.putLong(pData+((XlibWrapper.dataModel == 32)?(12):(24)), v); }
	public long get_green_mask() { log.finest("");return (Native.getLong(pData+((XlibWrapper.dataModel == 32)?(16):(32)))); }
	public void set_green_mask(long v) { log.finest(""); Native.putLong(pData+((XlibWrapper.dataModel == 32)?(16):(32)), v); }
	public long get_blue_mask() { log.finest("");return (Native.getLong(pData+((XlibWrapper.dataModel == 32)?(20):(40)))); }
	public void set_blue_mask(long v) { log.finest(""); Native.putLong(pData+((XlibWrapper.dataModel == 32)?(20):(40)), v); }
	public int get_bits_per_rgb() { log.finest("");return (Native.getInt(pData+((XlibWrapper.dataModel == 32)?(24):(48)))); }
	public void set_bits_per_rgb(int v) { log.finest(""); Native.putInt(pData+((XlibWrapper.dataModel == 32)?(24):(48)), v); }
	public int get_map_entries() { log.finest("");return (Native.getInt(pData+((XlibWrapper.dataModel == 32)?(28):(52)))); }
	public void set_map_entries(int v) { log.finest(""); Native.putInt(pData+((XlibWrapper.dataModel == 32)?(28):(52)), v); }


	String getName() {
		return "Visual"; 
	}


	String getFieldsAsString() {
		String ret="";

		ret += ""+"ext_data = " + get_ext_data() +", ";
		ret += ""+"visualid = " + get_visualid() +", ";
		ret += ""+"class = " + get_class() +", ";
		ret += ""+"red_mask = " + get_red_mask() +", ";
		ret += ""+"green_mask = " + get_green_mask() +", ";
		ret += ""+"blue_mask = " + get_blue_mask() +", ";
		ret += ""+"bits_per_rgb = " + get_bits_per_rgb() +", ";
		ret += ""+"map_entries = " + get_map_entries() +", ";
		return ret;
	}


}



