Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 418384/*1* Normaliz2* Copyright (C) 2007-2014 Winfried Bruns, Bogdan Ichim, Christof Soeger3* This program is free software: you can redistribute it and/or modify4* it under the terms of the GNU General Public License as published by5* the Free Software Foundation, either version 3 of the License, or6* (at your option) any later version.7*8* This program is distributed in the hope that it will be useful,9* but WITHOUT ANY WARRANTY; without even the implied warranty of10* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the11* GNU General Public License for more details.12*13* You should have received a copy of the GNU General Public License14* along with this program. If not, see <http://www.gnu.org/licenses/>.15*16* As an exception, when this program is distributed through (i) the App Store17* by Apple Inc.; (ii) the Mac App Store by Apple Inc.; or (iii) Google Play18* by Google Inc., then that store may impose any digital rights management,19* device limits and/or redistribution restrictions that are required by its20* terms of service.21*/2223#include <vector>24#include <list>25#include <string>26#include <sstream>27using namespace std;2829#include "libnormaliz/libnormaliz.h"30#include "libnormaliz/cone.h"31using namespace libnormaliz;3233//#include "Input.h"34#include "output.h"3536#ifndef NMZ_OPTIONS_H37#define NMZ_OPTIONS_H3839//---------------------------------------------------------------------------4041class OptionsHandler {4243public:44OptionsHandler();4546// returns true if a help should be printed, false otherwise47bool handle_commandline(int argc, char* argv[]);4849// returns true if default mode was activated, false otherwise50bool activateDefaultMode();5152template<typename Integer>53void applyOutputOptions(Output<Integer>& Out);5455bool isFilenameSet() const {56return project_name_set;57}5859bool isIgnoreInFileOpt() const {60return ignoreInFileOpt;61}6263int getNrThreads() const {64return nr_threads;65}6667void activateConeProperty(ConeProperty::Enum cp) {68to_compute.set(cp, true);69}7071void activateInputFileConeProperty(ConeProperty::Enum cp) {72if (!ignoreInFileOpt) to_compute.set(cp, true);73}74/* void activateInputFileBigInt() {75if (!ignoreInFileOpt) use_Big_Integer = true;76}*/77void activateInputFileLongLong() {78if (!ignoreInFileOpt) use_long_long = true;79}8081void activateNoExtRaysOutput() {82if (!ignoreInFileOpt) no_ext_rays_output = true;83}8485const ConeProperties& getToCompute() const {86return to_compute;87}8889/* bool isUseBigInteger() const {90return use_Big_Integer;91}*/92bool isUseLongLong() const {93return use_long_long;94}9596bool isNoExtRaysOutput() const {97return no_ext_rays_output;98}99100const string& getProjectName() const {101return project_name;102}103104const string& getOutputDir() const {105return output_dir;106}107108void setProjectName(const string& s);109void setOutputDirName(const string& s);110111//---------------------------------------------------------------------------112113private:114bool project_name_set;115bool output_dir_set;116string project_name;117string output_dir;118string output_file;119120// bool use_Big_Integer; now in ConeProperty121bool use_long_long;122bool no_ext_rays_output;123124bool ignoreInFileOpt;125126int nr_threads;127128ConeProperties to_compute;129130bool write_extra_files, write_all_files;131132vector<string> OutFiles;133134//return true if help should be printed, false otherwise135bool handle_options(vector<string>& LongOptions, string& ShortOptions);136};137138//---------------------------------------------------------------------------139140string pureName(const string& fullName); // extracts the pure filename from a path141142#endif //NMZ_OPTIONS_H143144145