14 #ifndef ESYS_LSMVTKXMLWRITER_H
15 #define ESYS_LSMVTKXMLWRITER_H
17 #include <Geometry/SimpleParticle.h>
18 #include <Geometry/BasicInteraction.h>
21 #include <boost/shared_ptr.hpp>
34 void visitSimpleParticle(
const Particle &particle);
36 void visitParticle(
const Particle &particle);
38 void visitBasicInteraction(
const Connection &connection);
40 void visitConnection(
const Connection &connection);
42 size_t getNumParticles()
const;
44 size_t getNumConnections()
const;
46 int getIndex(
int particleId)
const;
48 void writeCentrePoints(std::ostream &oStream)
const;
50 void writeRadii(std::ostream &oStream)
const;
52 void writeTags(std::ostream &oStream)
const;
54 void writeIds(std::ostream &oStream)
const;
56 void writeParticleIndexConnections(std::ostream &oStream)
const;
58 void writeConnectionTags(std::ostream &oStream)
const;
62 typedef boost::shared_ptr<Impl> ImplPtr;
78 size_t getNumParticles()
const;
80 size_t getNumConnections()
const;
82 virtual void writePoints(std::ostream &oStream);
83 virtual void writePointData(std::ostream &oStream);
84 virtual void writeCells(std::ostream &oStream);
85 virtual void writeCellData(std::ostream &oStream);
87 virtual void write(std::ostream &oStream);
89 virtual void writeToFile(
const std::string &fileName);
94 typedef boost::shared_ptr<Impl> ImplPtr;