/* * Copyright (C) 2009. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 3 or * version 2 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.imgfmt.app.mdr; import java.io.File; import uk.me.parabola.imgfmt.app.srt.Sort; /** * Configuration for the MDR file. * Mostly used when creating a file as there are a number of different options * in the way that it is done. * * @author Steve Ratcliffe */ public class MdrConfig { //private static final int DEFAULT_HEADER_LEN = 286; private static final int DEFAULT_HEADER_LEN = 568; private boolean writable; private boolean forDevice; private int headerLen = DEFAULT_HEADER_LEN; private Sort sort; private File outputDir; private boolean splitName; /** * True if we are creating the file, rather than reading it. */ public boolean isWritable() { return writable; } public void setWritable(boolean writable) { this.writable = writable; } /** * The format that is used by the GPS devices is different to that used * by Map Source. This parameter says which to do. * @return True if we are creating the the more compact format required * for a device. */ public boolean isForDevice() { return forDevice; } public void setForDevice(boolean forDevice) { this.forDevice = forDevice; } /** * There are a number of different header lengths in existence. This * controls what sections can exist (and perhaps what must exist). * @return The header length. */ public int getHeaderLen() { return headerLen; } public void setHeaderLen(int headerLen) { this.headerLen = headerLen; } public Sort getSort() { return sort; } public void setSort(Sort sort) { this.sort = sort; } public File getOutputDir() { return outputDir; } public void setOutputDir(String outputDir) { if (outputDir != null) this.outputDir = new File(outputDir); } public void setSplitName(boolean splitName) { this.splitName = splitName; } public boolean isSplitName() { return splitName; } }