DataBuffer transferBuffer = Buffers.createBufferFromData(getTransferType(), obj, dataSize);
	public void setDataElements(int x, int y, int w, int h, Object obj, DataBuffer data) {		if (!tightPixelPacking) {			super.setDataElements(x, y, w, h, obj, data);			return;		}		// using set speedup, we can copy whole rows		int rowSize = w * numBands;		//int dataSize = rowSize * h;		//DataBuffer transferBuffer = Buffers.createBufferFromData(getTransferType(), obj, dataSize);		int[] bankOffsets = data.getOffsets();		int outOffset = pixelStride * x + scanlineStride * y + bankOffsets[0]; // same assuptions as in get...		// See if we can copy everything in one go		if (scanlineStride == rowSize) {			// Collapse scan lines:			scanlineStride = rowSize *= h;			h = 1;		}		int inOffset = 0;		Object outArray = Buffers.getData(data);		for (int yd = 0; yd < h; yd++) {			System.arraycopy(obj, inOffset, outArray, outOffset, rowSize);			outOffset += scanlineStride;			inOffset += rowSize;		}	}