#ifndef OPTIONS_H #define OPTIONS_H /* * @(#)Options.h * * This file is part of webCDwriter - Network CD Writing. * * Copyright (C) 1999-2005 Jörg P. M. Haeger * * webCDwriter is free software. See CDWserver.cpp for details. * * Jörg Haeger, 25.04.2001 */ /** * A container for the writing options. * * @version 20050614 * @author Jörg P. M. Haeger */ struct Options { int protocolVersion; String acceptKey; int blankTOC; String bootImage; int burnOffline; int CDText; int closeCD; int copies; int DAO; int DVDVideo; int format; int HFS; int hideContents; int joliet; int laserOff; String medium; int overburn; int rejectEmptyCD; int rejectUnprotectedCD; int rockRidge; int speed; int verify; int videoDVD; String volumeID; int waitForEmptyCD; String writeProtection; String writer; class ProjectInfo { public: String from, to, label, contents; }; ProjectInfo projectInfo; Options() { protocolVersion = 1; reset(); } ~Options() { reset(); } public: int mediumDVD() { return mediumDVDRewritable() || medium.equals("DVD-R") || medium.equals("DVD+R"); } public: int mediumDVDRewritable() { return medium.equals("DVD-RW") || medium.equals("DVD+RW"); } void reset() { if (protocolVersion == 1) { closeCD = 1; joliet = 1; rockRidge = 1; } else { closeCD = 0; joliet = 0; rockRidge = 0; } acceptKey = ""; blankTOC = 0; bootImage = ""; burnOffline = 0; // CDText = 0; copies = 1; DAO = 0; DVDVideo = 0; format = 0; HFS = 0; hideContents = 0; laserOff = 0; medium = ""; overburn = 0; projectInfo.from = "-"; projectInfo.to = "-"; projectInfo.label = "-"; projectInfo.contents = "-"; rejectEmptyCD = 0; rejectUnprotectedCD = 0; speed = 0; verify = 0; videoDVD = 0; volumeID = ""; waitForEmptyCD = 0; writeProtection = ""; writer = ""; } }; #endif