CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxPolyDataMeshReader.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 
12 #ifndef CXPOLYDATAMESHREADER_H
13 #define CXPOLYDATAMESHREADER_H
14 
16 #include "org_custusx_core_filemanager_Export.h"
17 
18 class ctkPluginContext;
19 
20 namespace cx {
21 
25 class org_custusx_core_filemanager_EXPORT PolyDataMeshReader: public FileReaderWriterImplService
26 {
27 public:
28  Q_INTERFACES(cx::FileReaderWriterService)
29 
30  PolyDataMeshReader(PatientModelServicePtr patientModelService);
31  virtual ~PolyDataMeshReader(){}
32 
33  bool isNull(){ return false; }
34 
35  virtual bool canRead(const QString& type, const QString& filename);
36  virtual bool readInto(DataPtr data, QString path);
37  bool readInto(MeshPtr mesh, QString filename);
38 
39  virtual vtkPolyDataPtr loadVtkPolyData(QString filename);
40  virtual QString canReadDataType() const;
41  virtual DataPtr read(const QString& uid, const QString& filename);
42  std::vector<DataPtr> read(const QString &filename);
43 
44  virtual void write(DataPtr data, const QString& filename);
45  QString canWriteDataType() const;
46  bool canWrite(const QString &type, const QString &filename) const;
47 };
48 
49 }
50 
51 #endif // CXPOLYDATAMESHREADER_H
boost::shared_ptr< class Data > DataPtr
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
vtkSmartPointer< vtkPolyData > vtkPolyDataPtr
Reader for .vtk files.
boost::shared_ptr< class Mesh > MeshPtr
Namespace for all CustusX production code.