10 #ifndef smtk_markup_ImageData_h
11 #define smtk_markup_ImageData_h
13 #include "smtk/markup/DiscreteGeometry.h"
15 #include "smtk/markup/AssignedIds.h"
17 #include "vtkImageData.h"
30 template<
typename... Args>
36 template<
typename... Args>
38 const std::shared_ptr<AssignedIds>& pointIds,
39 const std::shared_ptr<AssignedIds>& cellIds,
42 , m_pointIds(pointIds)
50 void initialize(
const nlohmann::json& data, smtk::resource::json::Helper& helper)
override;
56 std::unordered_set<Domain*> domains()
const override;
65 void assignedIds(std::vector<AssignedIds*>& assignments)
const override;
67 const AssignedIds& pointIds()
const {
return *m_pointIds; }
68 const AssignedIds& cellIds()
const {
return *m_cellIds; }
81 bool setShapeData(vtkSmartPointer<vtkImageData> image, Superclass::ShapeOptions& options);
82 vtkSmartPointer<vtkImageData> shapeData()
const {
return m_image; }
85 std::shared_ptr<AssignedIds> m_pointIds;
86 std::shared_ptr<AssignedIds> m_cellIds;
87 vtkSmartPointer<vtkImageData> m_image;
93 #endif // smtk_markup_ImageData_h