23#ifndef __vtkMRMLMarkupsJsonStorageNode_h
24#define __vtkMRMLMarkupsJsonStorageNode_h
27#include "vtkSlicerMarkupsModuleMRMLExport.h"
41 void PrintSelf(ostream& os, vtkIndent indent)
override;
56 void WriteXML(ostream& of,
int indent)
override;
Represents a json object or list.
const char * GetNodeTagName() override
Get node XML tag name (like Storage, Model)
virtual bool ReadMeasurements(vtkMRMLMarkupsJsonElement *measurementsArray, vtkMRMLMarkupsNode *markupsNode)
virtual bool UpdateMarkupsNodeFromJsonValue(vtkMRMLMarkupsNode *markupsNode, vtkMRMLMarkupsJsonElement *markupObject)
~vtkMRMLMarkupsJsonStorageNode() override
virtual bool WriteMarkup(vtkMRMLMarkupsJsonWriter *writer, vtkMRMLMarkupsNode *markupsNode)
virtual bool WriteMeasurements(vtkMRMLMarkupsJsonWriter *writer, vtkMRMLMarkupsNode *markupsNode)
void InitializeSupportedReadFileTypes() override
Initialize all the supported write file types.
static vtkMRMLMarkupsJsonStorageNode * New()
void GetMarkupsTypesInFile(const char *filePath, std::vector< std::string > &outputMarkupsTypes)
vtkMRMLMarkupsNode * AddNewMarkupsNodeFromFile(const char *filePath, const char *nodeName=nullptr, int markupIndex=0)
Read a markups node from a file.
int WriteDataInternal(vtkMRMLNode *refNode) override
Write data from a referenced node.
void InitializeSupportedWriteFileTypes() override
Initialize all the supported write file types.
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file.
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
virtual bool WriteControlPoints(vtkMRMLMarkupsJsonWriter *writer, vtkMRMLMarkupsNode *markupsNode)
void operator=(const vtkMRMLMarkupsJsonStorageNode &)
void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object.
std::string GetMarkupsClassNameFromMarkupsType(std::string markupsType)
void PrintSelf(ostream &os, vtkIndent indent) override
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
vtkMRMLMarkupsJsonStorageNode()
virtual bool UpdateMarkupsDisplayNodeFromJsonValue(vtkMRMLMarkupsDisplayNode *displayNode, vtkMRMLMarkupsJsonElement *markupObject)
virtual bool WriteDisplayProperties(vtkMRMLMarkupsJsonWriter *writer, vtkMRMLMarkupsDisplayNode *markupsDisplayNode)
vtkMRMLMarkupsJsonStorageNode(const vtkMRMLMarkupsJsonStorageNode &)
bool CanReadInReferenceNode(vtkMRMLNode *refNode) override
virtual bool ReadControlPoints(vtkMRMLMarkupsJsonElement *controlPointsArray, int coordinateSystem, vtkMRMLMarkupsNode *markupsNode)
std::string GetCoordinateUnitsFromSceneAsString(vtkMRMLMarkupsNode *markupsNode)
VTK_NEWINSTANCE vtkMRMLMarkupsJsonElement * ReadMarkupsFile(const char *filePath)
Only in C++: The caller must take ownership of the returned object.
virtual bool WriteBasicProperties(vtkMRMLMarkupsJsonWriter *writer, vtkMRMLMarkupsNode *markupsNode)
int ReadDataInternal(vtkMRMLNode *refNode) override
Read data and set it in the referenced node.
Writes properties into a JSON file.
vtkMRMLMarkupsStorageNode()