vtkSMViewLink.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkSMViewLink_h
16 #define vtkSMViewLink_h
17 
18 #include "vtkRemotingViewsModule.h" //needed for exports
19 #include "vtkSMProxyLink.h"
20 
21 class vtkCallbackCommand;
22 
24 {
25 public:
26  static vtkSMViewLink* New();
27  vtkTypeMacro(vtkSMViewLink, vtkSMProxyLink);
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
33  void AddLinkedProxy(vtkSMProxy* proxy, int updateDir) override;
34 
38  void RemoveLinkedProxy(vtkSMProxy* proxy) override;
39 
44  void EnableCameraLink(bool enable);
45 
49  static void UpdateViewCallback(
50  vtkObject* caller, unsigned long eid, void* clientData, void* callData);
51 
55  virtual void UpdateViews(vtkSMProxy* caller);
56 
57 protected:
58  vtkSMViewLink();
59  ~vtkSMViewLink() override;
60 
64  std::string GetXMLTagName() override { return "ViewLink"; }
65 
71  void UpdateVTKObjects(vtkSMProxy* proxy) override;
72 
73  std::map<vtkSMProxy*, vtkSmartPointer<vtkCallbackCommand>> RenderObservers;
74 
75  bool Updating = false;
76  bool UpdateViewsOnEndEvent = true;
77 };
78 
79 #endif
#define VTKREMOTINGVIEWS_EXPORT
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140