1. 16 Aug, 2021 1 commit
    • Marcus Mohr's avatar
      Further extends capabilities of VTKOutput · 87190569
      Marcus Mohr authored
      We can now export all of the following functions
      - P[1,2]Function
      - P[1,2]VectorFunction
      - EdgeDoFFunction
      - DGFunction
      for all of the following value types
      - double
      - int32_t
      - int64_t
      
      Commit extends VTKOutputTest to check that this works and also
      makes some details of the implementations in VTK*Writer classes
      more consistent.
      87190569
  2. 13 Aug, 2021 2 commits
    • Marcus Mohr's avatar
      Extending capabilities of VTKOutput · 23072e16
      Marcus Mohr authored
      This commit changes VTKOutput so that it export also functions of the
      following kind:
      - P1Function< int32_t >
      - P1Function< int64_t >
      and not only P1Function< double >.
      
      For this we replace the std::vector< P1Function< real_t > > in the class
      by an object of type FunctionMultiStore. This new class allows to store
      multiple functions from the same family, which can but need not differ in
      their value types.
      23072e16
    • Marcus Mohr's avatar
      Small update to VTKP1Writer · 07b9171d
      Marcus Mohr authored
      Opening and closing of <DataArray> element is now handled inside
      writeScalarFunction and writeVectorFunction.
      07b9171d
  3. 06 Aug, 2021 4 commits
    • Marcus Mohr's avatar
      Reduces datatype hardcoding in VTK writer classes · 25f7841b
      Marcus Mohr authored
      Occurences of double and "Float64" get replaced by real_t and
      typeToString< real_t >().
      25f7841b
    • Marcus Mohr's avatar
      Further unburdening of VTKOutput class · e1a18a8f
      Marcus Mohr authored
      The private methods
      - void writeCells2D()
      - void writeCells3D()
      - writePointsForMicroVertices()
      - writePointsForMicroEdges()
      are now members of a new VTKMeshWriter friend class.
      
      The private methods
      - writeEdgeDoFs()
      - writeEdgeDoFData()
      are now members of a new VTKEdgeDoFWriter friend class.
      
      Makes enumeration vtk::DataFormat scoped for forward declarations
      e1a18a8f
    • Marcus Mohr's avatar
      Converts VTKOutput::DoFType to vtk::DoFType · a1fd1614
      Marcus Mohr authored
      Having DoFType as private enum inside VTKOuput will not work together
      smoothly with the VTK*Writer friend classes when we need to pass a
      DoFType. E.g. we cannot forward declare it. So the commit makes it an
      enum inside the vtk namespace instead.
      a1fd1614
    • Marcus Mohr's avatar
      Starts disentangling of VTKOutput class · 261fd4a5
      Marcus Mohr authored
      Commits places the following free functions in the new file VTKHelpers.hpp
      - writeXMLHeader()
      - writeXMLFooter()
      - writePieceHeader()
      - writePieceFooter()
      They now belong to the namespace vtk.
      
      We also convert VTKOutput::openDataElement() into a free function, placed
      in the same file and namespace as above.
      
      Additionally we remove the class enum VTKOutput::VTK_DATA_FORMAT and replace
      it by vtk::DataFormat.
      
      The private methods
      - writeP1()
      - writeVertexDoFData()
      - writeP1VectorFunctionData()
      are now members of a new VTKP1Writer friend class.
      
      The private methods
      - writeP2()
      - writeSingleP2Function()
      - writeSingleP2VectorFunction()
      are now members of a new VTKP2Writer friend class.
      The private method
      - writeDGDoF()
      is now a member of a new VTKDGDoFWriter friend class.
      
      Finally we modify the VTKOutputTest so that some data are actually written
      in base64 encoded binary
      261fd4a5