11 #ifndef vtk_m_interop_anari_ANARIMapper_h
12 #define vtk_m_interop_anari_ANARIMapper_h
18 #include <vtkm/interop/anari/vtkm_anari_export.h>
41 const std::string& name =
"<noname>",
45 anari_cpp::Device GetDevice()
const;
47 const char* GetName()
const;
50 void SetName(
const char* name);
59 virtual void SetActor(
const ANARIActor& actor);
66 virtual void SetMapFieldAsAttribute(
bool enabled);
67 bool GetMapFieldAsAttribute()
const;
73 virtual void SetANARIColorMap(anari_cpp::Array1D color,
74 anari_cpp::Array1D opacity,
75 bool releaseArrays =
true);
79 virtual void SetANARIColorMapValueRange(
const vtkm::Vec2f_32& valueRange);
83 virtual void SetANARIColorMapOpacityScale(
vtkm::Float32 opacityScale);
88 virtual anari_cpp::Geometry GetANARIGeometry();
93 virtual anari_cpp::SpatialField GetANARISpatialField();
98 virtual anari_cpp::Surface GetANARISurface();
103 virtual anari_cpp::Volume GetANARIVolume();
105 anari_cpp::Group GetANARIGroup();
106 anari_cpp::Instance GetANARIInstance();
108 bool GroupIsEmpty()
const;
111 std::string MakeObjectName(
const char* suffix)
const;
117 bool Current{
false };
122 anari_cpp::Device Device{
nullptr };
123 anari_cpp::Group Group{
nullptr };
124 anari_cpp::Instance Instance{
nullptr };
132 bool MapFieldAsAttribute{
true };