COVISE Core
CoviseIO.h
Go to the documentation of this file.
1/* This file is part of COVISE.
2
3 You can use it under the terms of the GNU Lesser General Public License
4 version 2.1 or later, see lgpl-2.1.txt.
5
6 * License: LGPL 2+ */
7
8#ifndef COVISEIO_H
9#define COVISEIO_H
10
11#include <util/coviseCompat.h>
12#include <appl/ApplInterface.h>
13#include <file/covWriteFiles.h>
14#include <file/covReadFiles.h>
15#include <do/coDoData.h>
16#include <string>
17
18namespace covise
19{
20
21class coDoLines;
22class coDoPixelImage;
23class coDoPoints;
24class coDoPolygons;
25class coDoQuads;
26class coDoRectilinearGrid;
27class coDoSpheres;
28class coDoStructuredGrid;
29class coDoText;
30class coDoTexture;
31class coDoTriangleStrips;
32class coDoTriangles;
33class coDoUniformGrid;
34class coDoUnstructuredGrid;
35
37{
38private:
39 class doInfo
40 {
41 public:
43 {
44 obj = o;
45 fileOffset = offset;
46 }
48 int64_t fileOffset;
49 };
50 typedef std::vector<doInfo> ObjectList;
51 typedef std::list<std::string> ObjectNameList;
52
53 // Local data
54 int n_coord, n_elem, n_conn;
55 int *el, *vl, *tl;
56 float *x_coord;
57 float *y_coord;
58 float *z_coord;
59 float *radius;
60
62
63 // Shared memory data
81
86
87 void readattrib(int fd, coDistributedObject *tmp_Object);
88 void skipattrib(int fd);
89 coDistributedObject *readData(int fd, const char *Name);
90 void skipData(int fd);
91 void writeobj(int fd, const coDistributedObject *tmp_Object);
92 bool force;
95
96protected:
97 virtual int covOpenInFile(const char *grid_Path);
98 virtual int covCloseInFile(int fd);
99
100public:
101 coDistributedObject *ReadFile(const char *filename, const char *ObjectName, bool force = false, int firstStep = 0, int numSteps = 0, int skipSteps = 0);
102 int WriteFile(const char *filename, const coDistributedObject *Object);
104 {
105 force = false;
106 }
107 virtual ~CoviseIO()
108 {
109 }
110};
111}
112#endif
#define READEREXPORT
Definition: coExport.h:224
GLsizei const GLchar *const * string
Definition: khronos-glext.h:6750
GLsizei GLsizei GLuint * obj
Definition: khronos-glext.h:6733
GLintptr offset
Definition: khronos-glext.h:6611
int covCloseInFile(int fd)
Definition: covFiles.c:276
int covOpenInFile(const char *filename)
Definition: covFiles.c:230
list of all chemical elements
Definition: coConfig.h:27
Definition: coDistributedObject.h:296
Definition: coDoData.h:85
Definition: coDoData.h:262
Definition: coDoData.h:368
Definition: coDoLines.h:48
Definition: coDoPixelImage.h:35
Definition: coDoPoints.h:48
Definition: coDoPolygons.h:51
Definition: coDoPolygons.h:180
Definition: coDoPolygons.h:242
Definition: coDoRectilinearGrid.h:54
Definition: coDoSpheres.h:47
Definition: coDoStructuredGrid.h:54
Definition: coDoText.h:40
Definition: coDoTexture.h:35
Definition: coDoTriangleStrips.h:48
Definition: coDoUniformGrid.h:54
Definition: coDoUnstructuredGrid.h:61
Definition: CoviseIO.h:37
coDoRectilinearGrid * rgrid
Definition: CoviseIO.h:71
float * y_coord
Definition: CoviseIO.h:57
coDoRGBA * rgba
Definition: CoviseIO.h:79
float * x_coord
Definition: CoviseIO.h:56
coDoFloat * us3d
Definition: CoviseIO.h:74
coDoUnstructuredGrid * mesh
Definition: CoviseIO.h:73
coDoStructuredGrid * sgrid
Definition: CoviseIO.h:72
int numStepsToRead
Definition: CoviseIO.h:84
int setsRead
Definition: CoviseIO.h:82
ObjectList objectList
Definition: CoviseIO.h:94
coDoPoints * pts
Definition: CoviseIO.h:66
coDoLines * lin
Definition: CoviseIO.h:67
virtual ~CoviseIO()
Definition: CoviseIO.h:107
float * radius
Definition: CoviseIO.h:59
float * z_coord
Definition: CoviseIO.h:58
coDoPixelImage * pixelimage
Definition: CoviseIO.h:76
int n_conn
Definition: CoviseIO.h:54
std::list< std::string > ObjectNameList
Definition: CoviseIO.h:51
coDoTexture * texture
Definition: CoviseIO.h:77
bool force
Definition: CoviseIO.h:92
int * el
Definition: CoviseIO.h:55
std::vector< doInfo > ObjectList
Definition: CoviseIO.h:50
coDoTriangleStrips * tri
Definition: CoviseIO.h:70
coDoQuads * quads
Definition: CoviseIO.h:69
coDoPolygons * pol
Definition: CoviseIO.h:65
ObjectNameList objectNameList
Definition: CoviseIO.h:93
int firstStepToRead
Definition: CoviseIO.h:83
coDoVec3 * us3dv
Definition: CoviseIO.h:75
coDoSpheres * sph
Definition: CoviseIO.h:80
std::string grid_Path
Definition: CoviseIO.h:61
int skipSteps
Definition: CoviseIO.h:85
coDoText * txt
Definition: CoviseIO.h:78
CoviseIO()
Definition: CoviseIO.h:103
coDoUniformGrid * ugrid
Definition: CoviseIO.h:64
coDoTriangles * triang
Definition: CoviseIO.h:68
Definition: CoviseIO.h:40
coDistributedObject * obj
Definition: CoviseIO.h:47
int64_t fileOffset
Definition: CoviseIO.h:48
doInfo(coDistributedObject *o, int64_t offset)
Definition: CoviseIO.h:42