001: // $HeadURL: https://svn.wald.intevation.org/svn/deegree/base/trunk/src/org/deegree/ogcwebservices/wcs/configuration/GridDirectory.java $
002: /*---------------- FILE HEADER ------------------------------------------
003:
004: This file is part of deegree.
005: Copyright (C) 2001-2008 by:
006: EXSE, Department of Geography, University of Bonn
007: http://www.giub.uni-bonn.de/deegree/
008: lat/lon GmbH
009: http://www.lat-lon.de
010:
011: This library is free software; you can redistribute it and/or
012: modify it under the terms of the GNU Lesser General Public
013: License as published by the Free Software Foundation; either
014: version 2.1 of the License, or (at your option) any later version.
015:
016: This library is distributed in the hope that it will be useful,
017: but WITHOUT ANY WARRANTY; without even the implied warranty of
018: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
019: Lesser General Public License for more details.
020:
021: You should have received a copy of the GNU Lesser General Public
022: License along with this library; if not, write to the Free Software
023: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
024:
025: Contact:
026:
027: Andreas Poth
028: lat/lon GmbH
029: Aennchenstr. 19
030: 53115 Bonn
031: Germany
032: E-Mail: poth@lat-lon.de
033:
034: Prof. Dr. Klaus Greve
035: Department of Geography
036: University of Bonn
037: Meckenheimer Allee 166
038: 53115 Bonn
039: Germany
040: E-Mail: greve@giub.uni-bonn.de
041:
042:
043: ---------------------------------------------------------------------------*/
044: package org.deegree.ogcwebservices.wcs.configuration;
045:
046: import org.deegree.model.crs.CoordinateSystem;
047: import org.deegree.model.spatialschema.Envelope;
048:
049: /**
050: * An instance of <tt>GridDirectory</tt> describes a directory in the file system containing grid
051: * coverages within the envelope assigned to the <tt>Directory</tt>. The name of the
052: * <tt>Directory</tt> may is build from variable indicated by a leadin '$' (e.g.
053: * C:/rasterdata/luftbilder/775165/$YEAR/$MONTH/$DAY/$ELEVATION/l0.5) in this case the variable
054: * parts of the name can be replaced by an application with concrete values. It is in the
055: * responsibility of the application to use valid values for the variables. Known variable names
056: * are:
057: * <ul>
058: * <li>$YEAR
059: * <li>$MONTH
060: * <li>$DAY
061: * <li>$HOUR
062: * <li>$MINUTE
063: * <li>$ELEVATION
064: * </ul>
065: *
066: * @version $Revision: 9345 $
067: * @author <a href="mailto:poth@lat-lon.de">Andreas Poth</a>
068: * @author last edited by: $Author: apoth $
069: *
070: * @version 1.0. $Revision: 9345 $, $Date: 2007-12-27 08:22:25 -0800 (Thu, 27 Dec 2007) $
071: *
072: * @since 2.0
073: */
074: public class GridDirectory extends Directory {
075:
076: private double tileWidth = 0;
077:
078: private double tileHeight = 0;
079:
080: /**
081: * file extentions will be empty. this will cause that all files in the directory will be
082: * recognized
083: *
084: * @param name
085: * name of the directory
086: * @param envelope
087: * enclosing envelope of the tiles in the directory
088: * @param crs
089: * CRS of the data
090: * @param tileWidth
091: * width (pixels) of the files in the directory
092: * @param tileHeight
093: * height (pixels) of the files in the directory
094: */
095: public GridDirectory(String name, Envelope envelope,
096: CoordinateSystem crs, double tileWidth, double tileHeight) {
097: super (name, envelope, crs);
098: this .tileWidth = tileWidth;
099: this .tileHeight = tileHeight;
100: }
101:
102: /**
103: * @param name
104: * name of the directory
105: * @param envelope
106: * enclosing envelope of the tiles in the directory
107: * @param crs
108: * CRS of the data
109: * @param fileExtensions
110: * list of reconized file extensions
111: * @param tileWidth
112: * width (pixels) of the files in the directory
113: * @param tileHeight
114: * height (pixels) of the files in the directory
115: */
116: public GridDirectory(String name, Envelope envelope,
117: CoordinateSystem crs, String[] fileExtensions,
118: double tileWidth, double tileHeight) {
119: super (name, envelope, crs, fileExtensions);
120: this .tileWidth = tileWidth;
121: this .tileHeight = tileHeight;
122: }
123:
124: /**
125: * @return Returns the tileHeight.
126: *
127: */
128: public double getTileHeight() {
129: return tileHeight;
130: }
131:
132: /**
133: * @param tileHeight
134: * The tileHeight to set.
135: *
136: */
137: public void setTileHeight(double tileHeight) {
138: this .tileHeight = tileHeight;
139: }
140:
141: /**
142: * @return Returns the tileWidth.
143: *
144: */
145: public double getTileWidth() {
146: return tileWidth;
147: }
148:
149: /**
150: * @param tileWidth
151: * The tileWidth to set.
152: *
153: */
154: public void setTileWidth(double tileWidth) {
155: this.tileWidth = tileWidth;
156: }
157:
158: }
|