1 //============================================================================
2 //  Copyright (c) Kitware, Inc.
3 //  All rights reserved.
4 //  See LICENSE.txt for details.
5 //
6 //  This software is distributed WITHOUT ANY WARRANTY; without even
7 //  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
8 //  PURPOSE.  See the above copyright notice for more information.
9 //============================================================================
10 #ifndef vtk_m_io_VTKDataSetReader_h
11 #define vtk_m_io_VTKDataSetReader_h
12 
13 #include <vtkm/io/VTKDataSetReaderBase.h>
14 
15 namespace vtkm
16 {
17 namespace io
18 {
19 
20 class VTKM_IO_EXPORT VTKDataSetReader : public VTKDataSetReaderBase
21 {
22 public:
23   VTKM_CONT VTKDataSetReader(const char* fileName);
24   VTKM_CONT VTKDataSetReader(const std::string& fileName);
25   VTKM_CONT ~VTKDataSetReader() override;
26 
27   VTKDataSetReader(const VTKDataSetReader&) = delete;
28   void operator=(const VTKDataSetReader&) = delete;
29 
30   VTKM_CONT void PrintSummary(std::ostream& out) const override;
31 
32 private:
33   VTKM_CONT void CloseFile() override;
34   VTKM_CONT void Read() override;
35 
36   std::unique_ptr<VTKDataSetReaderBase> Reader;
37 };
38 }
39 } // vtkm::io
40 
41 #endif // vtk_m_io_VTKReader_h
42