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 
26 class VTKPVVTKEXTENSIONSMISC_EXPORT vtkSelectionSerializer : public vtkObject
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
vtkObjectBase::operator=
void operator=(const vtkObjectBase &)
vtkSelectionNode
vtkObject::New
static vtkObject * New()
vtkObject
vtkSelection
vtkSelectionSerializer
Serialize/deserialize vtkSelection to/from xml.
Definition: vtkSelectionSerializer.h:26
vtkInformationIntegerKey
vtkIndent
vtkObject.h
vtkPVXMLElement
Definition: vtkPVXMLElement.h:23
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE