vtkSMProxyLocator.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkSMProxyLocator_h
13 #define vtkSMProxyLocator_h
14 
15 #include "vtkRemotingServerManagerModule.h" //needed for exports
16 #include "vtkSMObject.h"
17 #include "vtkWeakPointer.h" // needed to keep the session around
18 
19 class vtkCollection;
20 class vtkSMDeserializer;
21 class vtkSMProxy;
22 class vtkSMSession;
23 
24 class VTKREMOTINGSERVERMANAGER_EXPORT vtkSMProxyLocator : public vtkSMObject
25 {
26 public:
27  static vtkSMProxyLocator* New();
29  void PrintSelf(ostream& os, vtkIndent indent) override;
30 
36  virtual vtkSMProxy* LocateProxy(vtkTypeUInt32 globalID);
37 
39 
43  void SetDeserializer(vtkSMDeserializer*);
44  vtkGetObjectMacro(Deserializer, vtkSMDeserializer);
46 
48 
51  virtual vtkSMSession* GetSession();
52  virtual void SetSession(vtkSMSession* s);
54 
58  virtual void Clear();
59 
66  virtual void GetLocatedProxies(vtkCollection* collectionToFill);
67 
68  virtual void UseSessionToLocateProxy(bool useSessionToo)
69  {
70  this->LocateProxyWithSessionToo = useSessionToo;
71  }
72 
79  virtual void AssignProxy(vtkTypeUInt32 id, vtkSMProxy* proxy);
80 
81 protected:
83  ~vtkSMProxyLocator() override;
84 
89  virtual vtkSMProxy* NewProxy(vtkTypeUInt32 globalID);
90 
94 
95 private:
96  vtkSMProxyLocator(const vtkSMProxyLocator&) = delete;
97  void operator=(const vtkSMProxyLocator&) = delete;
98 
99  class vtkInternal;
100  vtkInternal* Internal;
101 };
102 
103 #endif
vtkSMObject
superclass for most server manager classes
Definition: vtkSMObject.h:17
vtkSMObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
vtkSMProxyLocator::UseSessionToLocateProxy
virtual void UseSessionToLocateProxy(bool useSessionToo)
Definition: vtkSMProxyLocator.h:68
vtkSMObject.h
vtkSMProxy
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
vtkSMDeserializer
deserializes proxies from their states.
Definition: vtkSMDeserializer.h:25
vtkCollection
vtkSMSession
Definition: vtkSMSession.h:22
vtkIndent
vtkSMProxyLocator::LocateProxyWithSessionToo
bool LocateProxyWithSessionToo
Definition: vtkSMProxyLocator.h:93
vtkWeakPointer.h
vtkSMProxyLocator::Deserializer
vtkSMDeserializer * Deserializer
Definition: vtkSMProxyLocator.h:91
vtkSMProxyLocator
is used to locate proxies referred to in state xmls while loading state files.
Definition: vtkSMProxyLocator.h:24
vtkSMObject::New
static vtkSMObject * New()
vtkWeakPointer< vtkSMSession >
vtkSMProxyLocator::Session
vtkWeakPointer< vtkSMSession > Session
Definition: vtkSMProxyLocator.h:92