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 
21 {
22 public:
23  static vtkDisplayConfiguration* New();
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
30  vtkGetMacro(ShowBorders, bool);
31 
36  vtkGetMacro(FullScreen, bool);
37 
41  vtkGetMacro(EyeSeparation, double);
42 
46  vtkGetMacro(UseOffAxisProjection, bool);
47 
51  int GetNumberOfDisplays() const;
52 
54 
57  const char* GetEnvironment(int index) const;
59 
61 
65  vtkTuple<int, 4> GetGeometry(int index) const;
67 
69 
73  vtkTuple<double, 3> GetLowerLeft(int index) const;
74  vtkTuple<double, 3> GetLowerRight(int index) const;
75  vtkTuple<double, 3> GetUpperRight(int index) const;
77 
79 
83  bool GetHasCorners(int index) const;
85 
87 
93  bool GetCoverable(int index) const;
95 
97 
101  bool GetShow2DOverlays(int index) const;
103 
107  bool LoadPVX(const char* fname);
108 
109 protected:
111  ~vtkDisplayConfiguration() override;
112 
113 private:
115  void operator=(const vtkDisplayConfiguration&) = delete;
116 
117  bool ShowBorders = false;
118  bool Coverable = false;
119  bool FullScreen = false;
120  double EyeSeparation = 0.0;
121  bool UseOffAxisProjection = true;
122 
123  class vtkInternals;
124  std::unique_ptr<vtkInternals> Internals;
125 };
126 
127 #endif
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
display configuration container
#define VTKREMOTINGCORE_EXPORT
static vtkObject * New()
void operator=(const vtkObjectBase &)