20#ifndef __vtkMRMLPlotSeriesNode_h
21#define __vtkMRMLPlotSeriesNode_h
82 void PrintSelf(ostream& os, vtkIndent indent)
override;
96 void WriteXML(ostream& of,
int indent)
override;
121 void *callData)
override;
127 TableModifiedEvent = 15000
143 vtkSetMacro(PlotType,
int);
144 vtkGetMacro(PlotType,
int);
152 vtkGetMacro(XColumnName, std::string);
153 vtkSetMacro(XColumnName, std::string);
157 vtkGetMacro(YColumnName, std::string);
158 vtkSetMacro(YColumnName, std::string);
162 vtkGetMacro(LabelColumnName, std::string);
163 vtkSetMacro(LabelColumnName, std::string);
175 vtkSetMacro(MarkerStyle,
int);
176 vtkGetMacro(MarkerStyle,
int);
186 vtkGetMacro(MarkerSize,
float);
187 vtkSetMacro(MarkerSize,
float);
193 vtkSetMacro(LineStyle,
int);
194 vtkGetMacro(LineStyle,
int);
204 vtkGetMacro(LineWidth,
float);
205 vtkSetMacro(LineWidth,
float);
209 vtkGetVector3Macro(Color,
double);
210 vtkSetVector3Macro(Color,
double);
219 vtkGetMacro(Opacity,
double);
220 vtkSetMacro(Opacity,
double);
245 Superclass::OnNodeReferenceAdded(reference);
246 if (std::string(reference->GetReferenceRole()) == this->TableNodeReferenceRole)
256 Superclass::OnNodeReferenceModified(reference);
257 if (std::string(reference->GetReferenceRole()) == this->TableNodeReferenceRole)
267 Superclass::OnNodeReferenceRemoved(reference);
268 if (std::string(reference->GetReferenceRole()) == this->TableNodeReferenceRole)
285 int PlotType{PlotTypeLine};
292 int LineStyle{LineStyleSolid};
295 int MarkerStyle{MarkerStyleCircle};
Class to hold information about a node reference.
Abstract Superclass for all specific types of MRML nodes.
MRML node to represent a vtkPlot object.
void OnNodeReferenceModified(vtkMRMLNodeReference *reference) override
Called when a node reference ID is modified.
static const char * TableNodeReferenceRole
static vtkMRMLPlotSeriesNode * New()
const char * GetTableNodeID()
Get referenced transform node id.
static int GetPlotTypeFromString(const char *name)
void PrintSelf(ostream &os, vtkIndent indent) override
void SetUniqueColor(const char *colorTableNodeID=nullptr)
vtkMRMLPlotSeriesNode(const vtkMRMLPlotSeriesNode &)
void ReadXMLAttributes(const char **atts) override
Set node attributes.
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void OnNodeReferenceAdded(vtkMRMLNodeReference *reference) override
Called when a node reference ID is added (list size increased).
virtual vtkMRMLTableNode * GetTableNode()
Get associated Table MRML node.
const char * GetLineStyleAsString(int id)
Convert between line style ID and name.
vtkMRMLCopyContentMacro(vtkMRMLPlotSeriesNode)
void operator=(const vtkMRMLPlotSeriesNode &)
~vtkMRMLPlotSeriesNode() override
virtual const char * GetTableNodeReferenceRole()
vtkMRMLPlotSeriesNode()
Constructor and destructor.
virtual void SetAndObserveTableNodeID(const std::string &tableNodeID)
virtual void SetAndObserveTableNodeID(const char *tableNodeID)
vtkMRMLNode * CreateNodeInstance() override
Standard methods for MRML nodes.
static const char * GetMarkerStyleAsString(int id)
Convert between plot markers style ID and name.
bool IsXColumnRequired()
Returns true if X column is required (true for scatter plots)
static int GetMarkerStyleFromString(const char *name)
static const char * GetPlotTypeAsString(int id)
Convert between plot type ID and name.
void OnNodeReferenceRemoved(vtkMRMLNodeReference *reference) override
Called after a node reference ID is removed (list size decreased).
virtual const char * GetTableNodeReferenceMRMLAttributeName()
static const char * TableNodeReferenceMRMLAttributeName
void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) override
Method to propagate events generated in Plot nodes.
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model).
virtual void SetPlotType(const char *type)
int GetLineStyleFromString(const char *name)
std::string LabelColumnName
A superclass for other storage nodes.
MRML node to represent a table object.