vtkDisplayConfiguration.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkDisplayConfiguration_h
13 #define vtkDisplayConfiguration_h
14 
15 #include "vtkObject.h"
16 #include "vtkRemotingCoreModule.h" // for exports
17 #include "vtkTuple.h" // for vtkTuple
18 #include <memory> // for std::unique_ptr
19 #include <string> // for std::string
20 
22 {
23 public:
24  static vtkDisplayConfiguration* New();
26  void PrintSelf(ostream& os, vtkIndent indent) override;
27 
31  vtkGetMacro(ShowBorders, bool);
32 
37  vtkGetMacro(FullScreen, bool);
38 
42  vtkGetMacro(EyeSeparation, double);
43 
47  vtkGetMacro(UseOffAxisProjection, bool);
48 
52  int GetNumberOfDisplays() const;
53 
55 
59  const char* GetName(int index) const;
61 
63 
67  const char* GetEnvironment(int index) const;
69 
71 
75  vtkTuple<int, 4> GetGeometry(int index) const;
77 
79 
83  vtkTuple<double, 3> GetLowerLeft(int index) const;
84  vtkTuple<double, 3> GetLowerRight(int index) const;
85  vtkTuple<double, 3> GetUpperRight(int index) const;
87 
89 
93  bool GetHasCorners(int index) const;
95 
97 
103  bool GetCoverable(int index) const;
105 
107 
111  bool GetShow2DOverlays(int index) const;
113 
115 
119  int GetViewerId(int index) const;
121 
123 
128  int GetStereoType(int index) const;
130 
132 
137  int GetNumberOfViewers() const;
139 
141 
146  int GetId(int viewerIndex) const;
148 
150 
155  double GetEyeSeparation(int viewerIndex) const;
157 
161  bool LoadPVX(const char* fname);
162 
164 
168  static int ParseStereoType(const std::string& value);
170 
172 
177  static const char* GetStereoTypeAsString(int stereoType);
179 
180 protected:
182  ~vtkDisplayConfiguration() override;
183 
184 private:
186  void operator=(const vtkDisplayConfiguration&) = delete;
187 
188  bool ShowBorders = false;
189  bool Coverable = false;
190  bool FullScreen = false;
191  double EyeSeparation = 0.0;
192  bool UseOffAxisProjection = true;
193 
194  class vtkInternals;
195  std::unique_ptr<vtkInternals> Internals;
196 };
197 
198 #endif
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
display configuration container
#define VTKREMOTINGCORE_EXPORT
static vtkObject * New()
void operator=(const vtkObjectBase &)