VPTissue Reference Manual
CsvGzExporter.h
Go to the documentation of this file.
1 #ifndef VIEW_CSV_GZ_EXPORTER_H_INCLUDED
2 #define VIEW_CSV_GZ_EXPORTER_H_INCLUDED
3 /*
4  * Copyright 2011-2016 Universiteit Antwerpen
5  *
6  * Licensed under the EUPL, Version 1.1 or as soon they will be approved by
7  * the European Commission - subsequent versions of the EUPL (the "Licence");
8  * You may not use this work except in compliance with the Licence.
9  * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl5
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the Licence is distributed on an "AS IS" basis,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the Licence for the specific language governing
15  * permissions and limitations under the Licence.
16  */
22 #include <memory>
23 
24 class QTextStream;
25 namespace SimPT_Sim {
26 class Mesh;
27 class SimInterface;
28 }
29 
30 namespace SimPT_Shell {
31 
36 {
37 public:
44  static bool Export(std::shared_ptr<SimPT_Sim::SimInterface> sim, std::string const& file_path, bool overwrite = true);
45 
50  static std::string GetFileExtension();
51 
52 private:
54  static void StreamCellData(const SimPT_Sim::Mesh* mesh, QTextStream& csv_stream);
55 
57  static void StreamWallData(const SimPT_Sim::Mesh* mesh, QTextStream& csv_stream);
58 
60  static void StreamMeshData(const SimPT_Sim::Mesh* mesh, QTextStream& csv_stream);
61 };
62 
63 } // namespace
64 
65 #endif // end_of_include_guard
Namespace for SimPT shell package.
Definition: Client.cpp:50
Namespace for the core simulator.
static bool Export(std::shared_ptr< SimPT_Sim::SimInterface > sim, std::string const &file_path, bool overwrite=true)
Export mesh state to csv format.
static std::string GetFileExtension()
File extension associated with this export format.
Functions and data for gzip'ed CSV (comma-separated values) export of Sim objects.
Definition: CsvGzExporter.h:35
Structure of cells; key data structure.
Definition: Mesh.h:62