vtkSMDeserializer.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkSMDeserializer_h
13 #define vtkSMDeserializer_h
14 
15 #include "vtkObject.h"
16 #include "vtkRemotingServerManagerModule.h" //needed for exports
17 #include "vtkWeakPointer.h" // needed for vtkWeakPointer.
18 
19 class vtkPVXMLElement;
20 class vtkSMProxy;
21 class vtkSMProxyLocator;
22 class vtkSMSession;
24 
25 class VTKREMOTINGSERVERMANAGER_EXPORT vtkSMDeserializer : public vtkObject
26 {
27 public:
28  vtkTypeMacro(vtkSMDeserializer, vtkObject);
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
36  void SetSession(vtkSMSession* session);
37 
39 
43  vtkSMSessionProxyManager* GetSessionProxyManager();
44  void SetSessionProxyManager(vtkSMSessionProxyManager*);
46 
51  vtkSMSession* GetSession();
52 
53 protected:
55  ~vtkSMDeserializer() override;
56 
57  // Friend to access NewProxy().
58  friend class vtkSMProxyLocator;
59 
63  virtual vtkSMProxy* NewProxy(vtkTypeUInt32 id, vtkSMProxyLocator* locator) = 0;
64 
69  virtual vtkSMProxy* CreateProxy(
70  const char* xmlgroup, const char* xmlname, const char* subProxyName = nullptr);
71 
73 
74 private:
75  vtkSMDeserializer(const vtkSMDeserializer&) = delete;
76  void operator=(const vtkSMDeserializer&) = delete;
77 };
78 
79 #endif
vtkSMSessionProxyManager
Definition: vtkSMSessionProxyManager.h:135
vtkObjectBase::operator=
void operator=(const vtkObjectBase &)
vtkSMDeserializer::SessionProxyManager
vtkWeakPointer< vtkSMSessionProxyManager > SessionProxyManager
Definition: vtkSMDeserializer.h:72
vtkObject
vtkSMProxy
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
vtkSMDeserializer
deserializes proxies from their states.
Definition: vtkSMDeserializer.h:25
vtkSMSession
Definition: vtkSMSession.h:22
vtkIndent
vtkWeakPointer.h
vtkObject.h
vtkSMProxyLocator::NewProxy
virtual vtkSMProxy * NewProxy(vtkTypeUInt32 globalID)
Create new proxy with the given id.
vtkPVXMLElement
Definition: vtkPVXMLElement.h:23
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
vtkSMProxyLocator
is used to locate proxies referred to in state xmls while loading state files.
Definition: vtkSMProxyLocator.h:24
vtkWeakPointer< vtkSMSessionProxyManager >