Rev 590 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
/*
* Copyright (c) 2009, Chris Miller
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 3 as
* published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*/
package uk.me.parabola.splitter.args;
/**
* Command line parameters for the splitter
*
* @author Chris Miller
*/
public interface SplitterParams
{
/**
* @return the ID for the first split area.
*/
@
Option(defaultValue =
"63240001", description =
"The starting map ID.")
int getMapid
();
@
Option(description =
"A default description to give to each area.")
String getDescription
();
@
Option(defaultValue =
"2048", description =
"The maximum number of areas to process in a single pass. " +
"More areas require more memory, but less time. Values: 1-9999.")
int getMaxAreas
();
@
Option(defaultValue =
"auto", description =
"Deprecated. Nodes/ways/rels that fall outside an area will still "
+
"be included if they are within this many map units. ")
String getOverlap
();
@
Option(defaultValue =
"1600000", description =
"A threshold value that is used when no split-file is given. Splitting is done so that "
+
"no tile has more than maxNodes nodes inside the bounding box of the tile. "
+
"Nodes added by overlap or keep-complete are not taken into account.")
int getMaxNodes
();
@
Option(description =
"A target value that is used when no split-file is given. Splitting is done so that "
+
"the given number of tiles is produced. The max-nodes value is ignored if this option is given.")
String getNumTiles
();
@
Option(defaultValue =
"13", description =
"The resolution determines how the tiles must be aligned." +
"Eg a resolution of 13 means the tiles need to have their edges aligned to multiples of 2 ^ (24 - 13) = 2048 map units.")
int getResolution
();
@
Option(description =
"Specify this if the input osm file has nodes, ways and relations intermingled.")
boolean isMixed
();
@
Option(description =
"Deprecated, now does nothing")
String getCache
();
@
Option(description =
"The path to the output directory. Defaults to the current working directory.")
String getOutputDir
();
@
Option(description =
"The name of a file containing the areas definitions. Can be .list or .kml. Providing such a file will save processing time.")
String getSplitFile
();
@
Option(description =
"The name of a GeoNames file to use for determining tile names. Typically cities15000.zip from http://download.geonames.org/export/dump/")
String getGeonamesFile
();
@
Option(description =
"The name of a kml file to write out the areas to. This is in addition to areas.list (which is always written out).")
String getWriteKml
();
@
Option(defaultValue =
"120", description =
"Displays the amount of memory used by the JVM every --status-freq seconds. Set =0 to disable.")
int getStatusFreq
();
@
Option(description =
"Don't trim empty space off the edges of tiles.")
boolean isNoTrim
();
@
Option(defaultValue =
"auto", description =
"The maximum number of threads used by splitter.")
ThreadCount getMaxThreads
();
@
Option(defaultValue =
"pbf", description =
"The output type, either pbf, o5m, or xml.")
String getOutput
();
@
Option(description =
"The name of a file containing ways and relations that are known to cause problems in the split process.")
String getProblemFile
();
@
Option(defaultValue=
"true", description =
"Write complete ways and relations if possible (requires more time and more heap memory). This should be used "
+
"with --overlap=0")
boolean isKeepComplete
();
// @Option(description = "Just write program version and build timestamp")
// boolean getVersion();
@
Option(description =
"The name of a file to write the generated problem list created with --keep-complete.")
String getProblemReport
();
@
Option(description =
"The name of a file containing a bounding polygon in osmosis polygon file format.")
String getPolygonFile
();
@
Option(description =
"An osm file (.o5m, .pbf, .osm) with named ways that describe bounding polygons with OSM ways having tags name and mapid" )
String getPolygonDescFile
();
@
Option(defaultValue =
"dist", description =
"Debugging: stop after the program phase. Can be split, gen-problem-list, or handle-problem-list")
String getStopAfter
();
@
Option(description =
"The name of a directory containing precompiled sea tiles.")
String getPrecompSea
();
@
Option(defaultValue=
"use-exclude-list", description =
"A comma separated list of tag values for relations. "
+
"Used to filter multipolygon and boundary relations for problem-list processing.")
String getBoundaryTags
();
@
Option(defaultValue=
"5", description =
"The lowest admin_level value that should be kept complete. Reasonable values are 2 .. 11. "
+
"Used to filter boundary relations for problem-list processing. Ignored when keep-complete is false.")
int getWantedAdminLevel
();
@
Option(defaultValue =
"200000", description =
"Search limit in split algo. Higher values may find better splits, but will take longer.")
int getSearchLimit
();
@
Option(defaultValue =
"remove", description =
"Define how splitter treats version info in the osm data. Can be remove, fake, or keep")
String getHandleElementVersion
();
@
Option(defaultValue =
"false", description =
"Specify if splitter should ignore bounds tags in input files")
boolean getIgnoreOsmBounds
();
@
Option(defaultValue=
"", description =
"A comma separated list of tag values for route relations. "
+
"Can be used to keep route relations of the given type complete. Only route values listed are kept complete. Default is empty.")
String getRouteRelValues
();
}