vtkSelectionSerializer.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkSelectionSerializer_h
16 #define vtkSelectionSerializer_h
17 
18 #include "vtkObject.h"
19 #include "vtkPVVTKExtensionsMiscModule.h" // needed for export macro
20 
22 class vtkPVXMLElement;
23 class vtkSelection;
24 class vtkSelectionNode;
25 
27 {
28 public:
29  static vtkSelectionSerializer* New();
31  void PrintSelf(ostream& os, vtkIndent indent) override;
32 
34 
38  static void PrintXML(int printData, vtkSelection* selection);
39  static void PrintXML(ostream& os, vtkIndent indent, int printData, vtkSelection* selection);
41 
43 
50  static void Parse(const char* xml, vtkSelection* root);
51  static void Parse(const char* xml, unsigned int length, vtkSelection* root);
53 
58  static vtkInformationIntegerKey* ORIGINAL_SOURCE_ID();
59 
60 protected:
62  ~vtkSelectionSerializer() override;
63 
64 private:
66  void operator=(const vtkSelectionSerializer&) = delete;
67 
68  static void WriteSelectionData(ostream& os, vtkIndent indent, vtkSelectionNode* selection);
69  static void Parse(vtkPVXMLElement* rootElem, vtkSelection* root);
70  static void ParseNode(vtkPVXMLElement* nodeXML, vtkSelectionNode* node);
71 };
72 
73 #endif
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
#define VTKPVVTKEXTENSIONSMISC_EXPORT
This is used by vtkPVXMLParser to represent an XML document starting at the root element.
static vtkObject * New()
Serialize/deserialize vtkSelection to/from xml.
void operator=(const vtkObjectBase &)