VTK  9.7.1
vtkSynchronizableAvatars.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
15 #ifndef vtkSynchronizableAvatars_h
16 #define vtkSynchronizableAvatars_h
17 
18 #include "vtkRenderingParallelModule.h" // For export macro
20 
21 #include <memory> // for std::unique_ptr
22 
23 VTK_ABI_NAMESPACE_BEGIN
24 class vtkRenderer;
25 
26 class VTKRENDERINGPARALLEL_EXPORT vtkSynchronizableAvatars : public vtkSynchronizableActors
27 {
28 public:
30 
33  static vtkSynchronizableAvatars* New();
35  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
39 
43  void InitializeRenderer(vtkRenderer* ren) override;
45 
47 
50  void CleanUpRenderer(vtkRenderer* ren) override;
52 
54 
57  void SaveToStream(vtkMultiProcessStream& stream, vtkRenderer* ren) override;
59 
61 
65  void RestoreFromStream(vtkMultiProcessStream& stream, vtkRenderer* ren) override;
67 
68 protected:
70  ~vtkSynchronizableAvatars() override;
71 
72 private:
74  void operator=(const vtkSynchronizableAvatars&) = delete;
75 
76  class vtkInternals;
77  std::unique_ptr<vtkInternals> Internal;
78 };
79 
80 VTK_ABI_NAMESPACE_END
81 #endif
Serialize/deserialize collection of vtkOpenGLAvatars among renderers.
stream used to pass data across processes using vtkMultiProcessController.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard type and print methods.
virtual void CleanUpRenderer(vtkRenderer *ren)=0
Perform any necessary cleanup tasks with the vtkRenderer.
abstract specification for renderers
Definition: vtkRenderer.h:63
abstract base class for synchronizing a collection of actors
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual void RestoreFromStream(vtkMultiProcessStream &stream, vtkRenderer *ren)=0
Read actor information from the stream, update actors already added to the vtkRenderer.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual void SaveToStream(vtkMultiProcessStream &stream, vtkRenderer *ren)=0
Identify target actors added to the vtkRenderer, save them to the stream.
virtual void InitializeRenderer(vtkRenderer *ren)=0
Perform any necessary initialization tasks with the vtkRenderer.