1 /**************************************************************************/ 2 /* Copyright 2009 Tim Day */ 3 /* */ 4 /* This file is part of Fracplanet */ 5 /* */ 6 /* Fracplanet is free software: you can redistribute it and/or modify */ 7 /* it under the terms of the GNU General Public License as published by */ 8 /* the Free Software Foundation, either version 3 of the License, or */ 9 /* (at your option) any later version. */ 10 /* */ 11 /* Fracplanet is distributed in the hope that it will be useful, */ 12 /* but WITHOUT ANY WARRANTY; without even the implied warranty of */ 13 /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */ 14 /* GNU General Public License for more details. */ 15 /* */ 16 /* You should have received a copy of the GNU General Public License */ 17 /* along with Fracplanet. If not, see <http://www.gnu.org/licenses/>. */ 18 /**************************************************************************/ 19 20 /*! \file 21 \brief Interface for class ParametersSave. 22 */ 23 24 #ifndef _parameters_save_h_ 25 #define _parameters_save_h_ 26 27 #include "common.h" 28 29 class ParametersRender; 30 31 //! Aggregates controllable parameters for all things related to save. 32 class ParametersSave 33 { 34 public: 35 36 //! Constructor. 37 ParametersSave(const ParametersRender*); 38 39 //! Destructor. 40 ~ParametersSave(); 41 42 //! Whether to emit an atmosphere object to POV file. 43 bool pov_atmosphere; 44 45 //! Whether to emit a single sea-level object to POV file. 46 bool pov_sea_object; 47 48 //! Whether to try using per-vertex-alpha in the blender output. 49 bool blender_per_vertex_alpha; 50 51 //! Whether textures should include shading. 52 bool texture_shaded; 53 54 //! Size of texture for texture save (is height; width is implicit). 55 uint texture_height; 56 57 //! Save for blender needs access to some of these. 58 const ParametersRender*const parameters_render; 59 }; 60 61 #endif 62