vtkSMLiveInsituLinkProxy.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: ParaView
4  Module: $RCSfile$
5 
6  Copyright (c) Kitware, Inc.
7  All rights reserved.
8  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
27 #ifndef vtkSMLiveInsituLinkProxy_h
28 #define vtkSMLiveInsituLinkProxy_h
29 
30 #include "vtkRemotingLiveModule.h" //needed for exports
31 #include "vtkSMProxy.h"
32 #include "vtkSmartPointer.h" // needed for vtkSmartPointer.
33 #include "vtkWeakPointer.h" // needed for vtkWeakPointer.
34 
36 
38 {
39 public:
40  static vtkSMLiveInsituLinkProxy* New();
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
45 
49  vtkSMSessionProxyManager* GetInsituProxyManager();
50  void SetInsituProxyManager(vtkSMSessionProxyManager*);
52 
53  bool HasExtract(const char* reg_group, const char* reg_name, int port_number);
54 
56  vtkSMProxy* CreateExtract(const char* reg_group, const char* reg_name, int port_number);
57  void RemoveExtract(vtkSMProxy*);
59 
60 
64  void LiveChanged();
65  vtkIdType GetTimeStep() { return this->TimeStep; }
67 
71  void LoadState(const vtkSMMessage* msg, vtkSMProxyLocator* locator) override;
72 
78  void PushUpdatedStates();
79 
80 protected:
82  ~vtkSMLiveInsituLinkProxy() override;
83 
84  // overridden to ensure that we communicate the globalid for this proxy so
85  // that the server-side can send messages to this proxy.
86  void CreateVTKObjects() override;
87 
88  void MarkStateDirty();
89 
93  void PushUpdatedState();
94 
95  void InsituConnected(const char* initialial_state);
96  void NextTimestepAvailable(vtkIdType timeStep);
97 
100 
103 
104 private:
106  void operator=(const vtkSMLiveInsituLinkProxy&) = delete;
107 
108  class vtkInternals;
109  vtkInternals* Internals;
110 };
111 
112 #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:152
is used to locate proxies referred to in state xmls while loading state files.
void operator=(const vtkSMProxy &)=delete
vtkSMProxyInternals * Internals
Definition: vtkSMProxy.h:1006
vtkSmartPointer< vtkSMSessionProxyManager > InsituProxyManager