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//---------------------------------------------------------------------------24#ifndef OUTPUT_H25#define OUTPUT_H26//---------------------------------------------------------------------------2728#include "libQnormaliz/Qcone.h"2930using namespace std;31using namespace libQnormaliz;3233//---------------------------------------------------------------------------3435template<typename Number>36class Output {37string name;38bool out;39bool inv;40bool ext;41bool esp;42bool typ;43bool egn;44bool gen;45bool cst;46bool tri;47bool tgn;48bool ht1;49bool dec;50bool lat;51bool mod;52bool msp;53Cone<Number>* Result;54size_t dim;55bool homogeneous;56string of_cone;57string of_monoid;58string of_polyhedron;5960bool lattice_ideal_input;616263//---------------------------------------------------------------------------64public:65//---------------------------------------------------------------------------66// Construction and destruction67//---------------------------------------------------------------------------6869Output(); //main constructor70// default copy constructor and destructors are ok71// the Cone Object is handled at another place7273//---------------------------------------------------------------------------74// Data acces75//---------------------------------------------------------------------------7677void read() const; // to be modified, just for tests7879void set_name(const string& n);80void setCone(Cone<Number> & C);8182void set_write_out(const bool& flag); //sets the write .out flag83void set_write_inv(const bool& flag); //sets the write .inv flag84void set_write_ext(const bool& flag); //sets the write .ext flag85void set_write_esp(const bool& flag); //sets the write .esp flag86void set_write_typ(const bool& flag); //sets the write .typ flag87void set_write_egn(const bool& flag); //sets the write .egn flag88void set_write_gen(const bool& flag); //sets the write .gen flag89void set_write_cst(const bool& flag); //sets the write .cst flag90void set_write_tri(const bool& flag); //sets the write .tri flag91void set_write_tgn(const bool& flag); //sets the write .tgn flag92void set_write_ht1(const bool& flag); //sets the write .ht1 flag93void set_write_dec(const bool& flag); //sets the write .dec flag94void set_write_lat(const bool& flag); //sets the write .lat flag95void set_write_mod(const bool& flag); //sets the write .mod flag96void set_write_msp(const bool& flag); //sets the write .msp flag97void set_write_extra_files(); //sets some flags to true98void set_write_all_files(); //sets most flags to true99100void write_matrix_ext(const Matrix<Number>& M) const; //writes M to file name.ext101void write_matrix_lat(const Matrix<Number>& M) const; //writes M to file name.lat102void write_matrix_esp(const Matrix<Number>& M) const; //writes M to file name.esp103void write_matrix_typ(const Matrix<Number>& M) const; //writes M to file name.typ104void write_matrix_egn(const Matrix<Number>& M) const; //writes M to file name.egn105void write_matrix_gen(const Matrix<Number>& M) const; //writes M to file name.gen106void write_matrix_mod(const Matrix<Number>& M) const; //writes M to file name.mod107void write_matrix_msp(const Matrix<Number>& M) const; //writes M to file name.msp108void write_tri() const; //writes the .tri file109void write_Stanley_dec() const;110void write_matrix_ht1(const Matrix<Number>& M) const; //writes M to file name.ht1111112void write_inv_file() const;113114void set_lattice_ideal_input(bool lattice_odeal_input);115116117//---------------------------------------------------------------------------118// Output Algorithms119//---------------------------------------------------------------------------120121void write_files() const;122123};124//class end *****************************************************************125126//---------------------------------------------------------------------------127#endif128//---------------------------------------------------------------------------129130131132