Revision 2328 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/grid/filter/enhancement/EqualizationManager.java

View differences:

EqualizationManager.java
32 32
import org.gvsig.fmap.dal.coverage.exception.FilterTypeException;
33 33
import org.gvsig.fmap.dal.coverage.exception.ProcessInterruptedException;
34 34
import org.gvsig.fmap.dal.coverage.exception.RasterDriverException;
35
import org.gvsig.fmap.dal.coverage.grid.AbstractRasterFilterManager;
35 36
import org.gvsig.fmap.dal.coverage.grid.RasterFilter;
36 37
import org.gvsig.fmap.dal.coverage.grid.RasterFilterList;
37
import org.gvsig.fmap.dal.coverage.grid.RasterFilterListManager;
38 38
import org.gvsig.fmap.dal.coverage.store.props.Statistics;
39 39
import org.gvsig.raster.impl.grid.filter.RasterFilterListManagerImpl;
40 40
import org.gvsig.raster.impl.store.ParamImpl;
41
import org.gvsig.tools.ToolsLocator;
42
import org.gvsig.tools.extensionpoint.ExtensionPoint;
43
import org.gvsig.tools.extensionpoint.ExtensionPointManager;
44 41
/**
45 42
 * Gestor de la pila de filtros para el filtro de ecualizaci?n de histograma.
46 43
 *
47 44
 * @author Nacho Brodin (nachobrodin@gmail.com)
48 45
 */
49
public class EqualizationManager implements RasterFilterListManager {
50

  
51
	protected RasterFilterList 			filterList = null;
52

  
46
public class EqualizationManager extends AbstractRasterFilterManager {
47
	private static String   ID = "Equalization";
48
	
53 49
	/**
54 50
	 * Default constructor. Sets the filter list.
55 51
	 * @param filterList
56 52
	 */
57 53
	public EqualizationManager(RasterFilterList filterList) {
58
		this.filterList = filterList;
54
		super(filterList);
59 55
	}
60 56
	
57
	public String getManagerID() {
58
		return ID;
59
	}
60

  
61
	public static void register() {
62
		AbstractRasterFilterManager.register(ID, EqualizationManager.class);
63
	}
64

  
61 65
	/**
62 66
	 * Constructor
63 67
	 * @param filterListManager
64 68
	 */
65 69
	public EqualizationManager(RasterFilterListManagerImpl filterListManager) {
66
		this.filterList = filterListManager.getFilterList();
70
		super(filterListManager.getFilterList());
67 71
	}
68

  
69
	/**
70
	 * Registra EqualizationManager en los puntos de extension de RasterFilter
71
	 */
72
	public static void register() {
73
		ExtensionPointManager extensionPoints = ToolsLocator.getExtensionPointManager();
74
		ExtensionPoint point = extensionPoints.get("RasterFilter");
75
		point.append("Equalization", "", EqualizationManager.class);
76
	}
77 72
	
78 73
	public boolean isDataTypeSupported(int dataType) {
79 74
		if(dataType != Buffer.TYPE_BYTE)
......
107 102

  
108 103
			RasterFilter filter = createEnhancedFilter(stats, renderBands, hist, ecualizedBands);
109 104
			if (filter != null)
110
				filterList.add(filter);
105
				getFilterList().add(filter);
111 106
		} catch (ProcessInterruptedException e) {
112 107
			//Si se ha interrumpido no a?adimos el filtro
113 108
		}
......
178 173
				}
179 174
			}
180 175

  
181
			addEqualizationFilter((Statistics) filterList.getEnvParam("SrcStatistics"), renderBands, hist, ecualizedBands);
176
			addEqualizationFilter((Statistics) getFilterList().getEnvParam("SrcStatistics"), renderBands, hist, ecualizedBands);
182 177
		}
183 178
	}
184 179
	
......
190 185
		//TODO: crear un filtro de este tipo
191 186
		return null;
192 187
	}
193
	
194
	public RasterFilterList getFilterList() {
195
		return filterList;
196
	}
197
	
198
	public void setFilterList(RasterFilterList filterList) {
199
		this.filterList = filterList;
200
	}
201 188
}

Also available in: Unified diff