VTK  9.3.0
vtkGPUInfoList.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
3 
15 #ifndef vtkGPUInfoList_h
16 #define vtkGPUInfoList_h
17 
18 #include "vtkObject.h"
19 #include "vtkRenderingCoreModule.h" // For export macro
20 
21 VTK_ABI_NAMESPACE_BEGIN
22 class vtkGPUInfoListArray; // STL Pimpl
23 class vtkGPUInfo;
24 
25 class VTKRENDERINGCORE_EXPORT vtkGPUInfoList : public vtkObject
26 {
27 public:
28  static vtkGPUInfoList* New();
29  vtkTypeMacro(vtkGPUInfoList, vtkObject);
30  void PrintSelf(ostream& os, vtkIndent indent) override;
31 
38  virtual void Probe() = 0;
39 
43  virtual bool IsProbed();
44 
49  virtual int GetNumberOfGPUs();
50 
57  virtual vtkGPUInfo* GetGPUInfo(int i);
58 
59 protected:
61 
65  ~vtkGPUInfoList() override;
67 
68  bool Probed;
70 
71 private:
72  vtkGPUInfoList(const vtkGPUInfoList&) = delete;
73  void operator=(const vtkGPUInfoList&) = delete;
74 };
75 
76 VTK_ABI_NAMESPACE_END
77 #endif
Internal class vtkGPUInfoList.
Stores the list of GPUs VRAM information.
virtual vtkGPUInfo * GetGPUInfo(int i)
Return information about GPU i.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGPUInfoListArray * Array
virtual int GetNumberOfGPUs()
Return the number of GPUs.
virtual void Probe()=0
Build the list of vtkInfoGPU if not done yet.
vtkGPUInfoList()
Default constructor.
~vtkGPUInfoList() override
Default constructor.
virtual bool IsProbed()
Tells if the operating system has been probed.
static vtkGPUInfoList * New()
Stores GPU VRAM information.
Definition: vtkGPUInfo.h:22
a simple class to control print indentation
Definition: vtkIndent.h:29
abstract base class for most VTK objects
Definition: vtkObject.h:52