package org.eclipse.swt.dnd;

/*
 * (c) Copyright IBM Corp. 2000, 2001.
 * All Rights Reserved
 */
 
public class TransferData {
	public int type;
	
	// attributes specific to set/get
	int length;
	int format;
	int pValue;

	int result;
	
}
