/[xulu]/trunk/src/appl/data/WritableGridLLProxy.java
ViewVC logotype

Annotation of /trunk/src/appl/data/WritableGridLLProxy.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 114 - (hide annotations)
Mon Jul 11 11:31:25 2011 UTC (13 years, 5 months ago) by mojays
File size: 6147 byte(s)
SCHMITZM library updated to current version (2.6-SNAPSHOT)
Added gt-xsd-filter.jar, gt-xsd-gml2.jar, picocontainer.jar and xsd.jar from Geotools 2.6.5
1 mojays 2 package appl.data;
2    
3 alfonx 78 import org.opengis.referencing.crs.CoordinateReferenceSystem;
4 mojays 2
5 mojays 114 import de.appl.data.LoadingException;
6     import de.appl.util.RasterMetaData;
7     import de.schmitzm.geotools.data.WritableGrid;
8 mojays 2 import edu.bonn.xulu.appl.XuluRegistry;
9     import edu.bonn.xulu.io.ImportFactory;
10     import edu.bonn.xulu.plugin.io.grid.WritableGridFactory;
11    
12     /**
13     * This is an a late loading implementation for {@link WritableGrid WritableGrids}.
14     *
15     * @author Dominik Appl
16     */
17     public class WritableGridLLProxy extends LateLoadingProxy implements
18     WritableGrid {
19    
20     protected RasterMetaData metaData;
21    
22     public WritableGridLLProxy(ImportFactory importFac,
23     RasterMetaData metaData, Object inputPara, XuluRegistry reg) {
24     super(new ImportFactoryLoader(importFac, inputPara, reg));
25     this.metaData = metaData;
26     }
27    
28     public WritableGridLLProxy(WritableGridFactory targetFactory,
29     RasterMetaData metaData) {
30     super(new FactoryLoader(targetFactory, metaData));
31     this.metaData = metaData;
32     }
33    
34     public WritableGridLLProxy(RasterMetaData metaData) {
35     super(new WritableGridArrayLoader(metaData));
36     baseObject = null;
37     loaded = false;
38     this.metaData = metaData;
39     }
40    
41     protected WritableGridLLProxy(RasterMetaData metaData, DataLoader loader) {
42     super(loader);
43     loaded = false;
44     this.metaData = metaData;
45     }
46    
47     public double convertRasterToReal(int cell, int dim) {
48     if (!loaded)
49     tryLoadingGrid();
50     ;
51     return ((WritableGrid) baseObject).convertRasterToReal(cell, dim);
52     }
53    
54     public int convertRealToRaster(double coord, int dim) {
55     if (!loaded)
56     tryLoadingGrid();
57     return ((WritableGrid) baseObject).convertRealToRaster(coord, dim);
58     }
59    
60     /** @see WritableGrid#dispose() */
61     public void dispose() {
62     if (baseObject != null)
63     ((WritableGrid) baseObject).dispose();
64     }
65    
66     public Object getGridSample(double... coord) {
67     if (!loaded)
68     tryLoadingGrid();
69     return ((WritableGrid) baseObject).getGridSample();
70     }
71    
72     public byte getGridSampleAsByte(double... coord) {
73     if (!loaded)
74     tryLoadingGrid();
75     return ((WritableGrid) baseObject).getGridSampleAsByte(coord);
76     }
77    
78     public double getGridSampleAsDouble(double... coord) {
79     if (!loaded)
80     tryLoadingGrid();
81     return ((WritableGrid) baseObject).getGridSampleAsDouble(coord);
82     }
83    
84     public float getGridSampleAsFloat(double... coord) {
85     if (!loaded)
86     tryLoadingGrid();
87     return ((WritableGrid) baseObject).getGridSampleAsFloat(coord);
88     }
89    
90     public int getGridSampleAsInt(double... coord) {
91     if (!loaded)
92     tryLoadingGrid();
93     return ((WritableGrid) baseObject).getGridSampleAsInt(coord);
94     }
95    
96     public long getGridSampleAsLong(double... coord) {
97     if (!loaded)
98     tryLoadingGrid();
99     return ((WritableGrid) baseObject).getGridSampleAsLong(coord);
100     }
101    
102     public short getGridSampleAsShort(double... coord) {
103     if (!loaded)
104     tryLoadingGrid();
105     return ((WritableGrid) baseObject).getGridSampleAsShort(coord);
106     }
107    
108     public CoordinateReferenceSystem getCoordinateReferenceSystem() {
109     return metaData.getCoordinateReferenceSystem();
110     }
111    
112     public int getHeight() {
113     return metaData.getHeight();
114     }
115    
116     public int getMinX() {
117     return metaData.getMinX();
118    
119     }
120    
121     public int getMinY() {
122     return metaData.getMinY();
123     }
124    
125     public Object getRasterSample(int... cell) {
126     if (!loaded)
127     tryLoadingGrid();
128     return ((WritableGrid) baseObject).getRasterSample(cell);
129     }
130    
131     public byte getRasterSampleAsByte(int... cell) {
132     if (!loaded)
133     tryLoadingGrid();
134     return ((WritableGrid) baseObject).getRasterSampleAsByte(cell);
135     }
136    
137     public double getRasterSampleAsDouble(int... cell) {
138     if (!loaded)
139     tryLoadingGrid();
140     return ((WritableGrid) baseObject).getRasterSampleAsDouble(cell);
141     }
142    
143     public float getRasterSampleAsFloat(int... cell) {
144     if (!loaded)
145     tryLoadingGrid();
146     return ((WritableGrid) baseObject).getRasterSampleAsFloat(cell);
147     }
148    
149     public int getRasterSampleAsInt(int... cell) {
150     if (!loaded)
151     tryLoadingGrid();
152     return ((WritableGrid) baseObject).getRasterSampleAsInt(cell);
153     }
154    
155     public long getRasterSampleAsLong(int... cell) {
156     if (!loaded)
157     tryLoadingGrid();
158     return ((WritableGrid) baseObject).getRasterSampleAsLong(cell);
159     }
160    
161     public short getRasterSampleAsShort(int... cell) {
162     if (!loaded)
163     tryLoadingGrid();
164     return ((WritableGrid) baseObject).getRasterSampleAsShort(cell);
165     }
166    
167     public double getRealHeight() {
168     return metaData.getRealHeight();
169     }
170    
171     public double getRealWidth() {
172     return metaData.getRealWidth();
173     }
174    
175     public int getSampleType() {
176     return metaData.getDataType();
177     }
178    
179     /** Returns the Width of the Grid */
180     public int getWidth() {
181     return metaData.getWidth();
182     }
183    
184     public double getX() {
185     return metaData.getX();
186     }
187    
188     public double getY() {
189     return metaData.getY();
190     }
191    
192     public void setGridSample(Object value, double... coord) {
193     if (!loaded)
194     tryLoadingGrid();
195     ((WritableGrid) baseObject).setGridSample(value, coord);
196     }
197    
198     public void setRasterSample(Object value, int... cell) {
199     if (!loaded)
200     tryLoadingGrid();
201     ((WritableGrid) baseObject).setRasterSample(value, cell);
202    
203     }
204    
205     /**
206     * Trys to load the grid and gives out an error to the LOG, if the loading
207     * fails.
208     */
209     protected void tryLoadingGrid() {
210     try {
211     super.loadData();
212     } catch (LoadingException e) {
213     LOG.error("Error while Loading Grid " + this + " from Source "
214     + e.getLoadSource());
215     e.printStackTrace();
216     }
217    
218     }
219    
220     /*
221     * (non-Javadoc)
222     *
223     * @see schmitzm.data.WritableGrid#getCellHeight()
224     */
225     public double getCellHeight() {
226     // TODO Auto-generated method stub
227     return metaData.getCellHeight();
228     }
229    
230     /*
231     * (non-Javadoc)
232     *
233     * @see schmitzm.data.WritableGrid#getCellWidth()
234     */
235     public double getCellWidth() {
236     // TODO Auto-generated method stub
237     return metaData.getCellWidth();
238     }
239    
240     /**
241     * This class supports late loading
242     *
243     * @see appl.data.LateLoadable#unloadData()
244     * @return true;
245     * @see appl.data.LateLoadable#isLateLoadable()
246     */
247     public boolean isLateLoadable() {
248     return true;
249     }
250     }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26