/** * Use the given bytebuffer as a data source. This method should be handled with much care. * * @param buf * to set. * @param dataRect * defining the width, height and position of the data. */ public void setByteBuffer( ByteBuffer buf, DataView dataRect ) { dataAccess.setByteBuffer( buf, dataRect ); }
public ByteBufferRasterData getSubset( RasterRect sampleDomain ) { // return this.getSubset( env.x, env.y, env.width, env.height ); // return createCompatibleRasterData( sampleDomain ); ByteBufferRasterData result = createCompatibleRasterData( new DataView( getView().x + sampleDomain.x, getView().y + sampleDomain.y, sampleDomain.width, sampleDomain.height, dataInfo ) ); if ( dataAccess.hasDataBuffer() && dataAccess.getReader() == null ) { // the data was loaded, but no reader was available, we need a copy of the data. result.dataAccess.setByteBuffer( getByteBuffer().asReadOnlyBuffer(), dataAccess.getBytebufferDomain() ); // result.dataAccess.setByteBuffer( getByteBuffer().asReadOnlyBuffer(), view ); // result.data = this.data.asReadOnlyBuffer(); } // result.dataAccess.setByteBuffer( getByteBuffer().asReadOnlyBuffer(), view ); // result.data = this.data.asReadOnlyBuffer(); return result; }
result.dataAccess.setByteBuffer( getByteBuffer().asReadOnlyBuffer(), dataAccess.getBytebufferDomain() );