Revision 2308 org.gvsig.raster/branches/org.gvsig.raster_dataaccess_refactoring/org.gvsig.raster.lib/org.gvsig.raster.lib.impl/src/main/java/org/gvsig/raster/impl/buffer/DefaultRasterQuery.java

View differences:

DefaultRasterQuery.java
110 110
	//Parameters only for providers
111 111
	private BandList         bandList                   = null;
112 112
	private Buffer           bufferForProviders         = null;
113
	private boolean          forceARGBBuffer            = false;
114
	private boolean          forceRGBBuffer             = false;
113 115
	//private Buffer           bufferWithoutAdjust        = null;
114 116

  
115 117

  
......
494 496
			}
495 497
		} else {
496 498
			BandList bandList = buildDrawableBandList(store.getBands());
497

  
499
			int bandCount = bandList.getDrawableBandsCount();
500
			if(forceARGBBuffer) 
501
				bandCount = 4;
502
			if(forceRGBBuffer) 
503
				bandCount = 3;
504
			
498 505
			if(isMemoryBuffer()) 
499 506
				bufferForProviders = DefaultRasterManager.getInstance().createMemoryBuffer(
500
						store.getDataType()[0], getAdjustedBufWidth(), getAdjustedBufHeight(), bandList.getDrawableBandsCount(), true);
507
						store.getDataType()[0], getAdjustedBufWidth(), getAdjustedBufHeight(), bandCount, true);
501 508
			else
502 509
				bufferForProviders = DefaultRasterManager.getInstance().createBuffer(
503
						store.getDataType()[0], getAdjustedBufWidth(), getAdjustedBufHeight(), bandList.getDrawableBandsCount(), true);
510
						store.getDataType()[0], getAdjustedBufWidth(), getAdjustedBufHeight(), bandCount, true);
504 511
		}
505 512

  
506 513
		bufferForProviders.setDataExtent(getAdjustedRequestBoundingBox().toRectangle2D());
......
617 624
	//**************Getters and Setters*******************
618 625
	//****************************************************
619 626
	
627
	public void forceARGBRequest() {
628
		this.forceARGBBuffer = true;
629
		this.forceRGBBuffer = false;
630
	}
631
	
632
	public void forceRGBRequest() {
633
		this.forceRGBBuffer = true;
634
		this.forceARGBBuffer = false;
635
	}
636
	
620 637
	public void dontBuildBuffer() {
621 638
		this.dontBuildBuffer = true;
622 639
	}

Also available in: Unified diff