vtkSMLiveInsituLinkProxy.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkSMLiveInsituLinkProxy_h
16 #define vtkSMLiveInsituLinkProxy_h
17 
18 #include "vtkRemotingLiveModule.h" //needed for exports
19 #include "vtkSMProxy.h"
20 #include "vtkSmartPointer.h" // needed for vtkSmartPointer.
21 #include "vtkWeakPointer.h" // needed for vtkWeakPointer.
22 
24 
26 {
27 public:
28  static vtkSMLiveInsituLinkProxy* New();
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
33 
37  vtkSMSessionProxyManager* GetInsituProxyManager();
38  void SetInsituProxyManager(vtkSMSessionProxyManager*);
40 
41  bool HasExtract(const char* reg_group, const char* reg_name, int port_number);
42 
44  vtkSMProxy* CreateExtract(const char* reg_group, const char* reg_name, int port_number);
45  void RemoveExtract(vtkSMProxy*);
48 
52  void LiveChanged();
53  vtkIdType GetTimeStep() { return this->TimeStep; }
55 
59  void LoadState(const vtkSMMessage* msg, vtkSMProxyLocator* locator) override;
60 
66  void PushUpdatedStates();
67 
68 protected:
70  ~vtkSMLiveInsituLinkProxy() override;
71 
72  // overridden to ensure that we communicate the globalid for this proxy so
73  // that the server-side can send messages to this proxy.
74  void CreateVTKObjects() override;
75 
76  void MarkStateDirty();
77 
81  void PushUpdatedState();
82 
83  void InsituConnected(const char* initialial_state);
84  void NextTimestepAvailable(vtkIdType timeStep);
85 
88 
89  bool StateDirty;
91 
92 private:
94  void operator=(const vtkSMLiveInsituLinkProxy&) = delete;
95 
96  class vtkInternals;
97  vtkInternals* Internals;
98 };
99 
100 #endif
Performs additional operation on the Live client.
void PrintSelf(ostream &os, vtkIndent indent) override
vtkPVCatalystSessionCore is used by vtkSMSession.
#define VTKREMOTINGLIVE_EXPORT
int vtkIdType
vtkWeakPointer< vtkPVCatalystSessionCore > CatalystSessionCore
Header class that setup every thing in order to use Protobuf messages in a transparent manner...
The vtkSMSessionProxyManager is esponsible for creating and managing proxies for a given session...
void LoadState(const vtkSMMessage *msg, vtkSMProxyLocator *locator) override
This method is used to initialise the object to the given state If the definitionOnly Flag is set to ...
static vtkSMProxy * New()
virtual void CreateVTKObjects()
Given a class name (by setting VTKClassName) and server ids (by setting ServerIDs), this methods instantiates the objects on the server(s)
vtkIdType GetTimeStep()
Wakes up Insitu side if simulation is paused.
proxy for a VTK object(s) on a server
Definition: vtkSMProxy.h:140
is used to locate proxies referred to in state xmls while loading state files.
void operator=(const vtkSMProxy &)=delete
vtkSMProxyInternals * Internals
Definition: vtkSMProxy.h:1024
vtkSmartPointer< vtkSMSessionProxyManager > InsituProxyManager