VTK
vtkGPUInfoList.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGPUInfoList.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm 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 =========================================================================*/
15 
27 #ifndef vtkGPUInfoList_h
28 #define vtkGPUInfoList_h
29 
30 #include "vtkRenderingCoreModule.h" // For export macro
31 #include "vtkObject.h"
32 
33 class vtkGPUInfoListArray; // STL Pimpl
34 class vtkGPUInfo;
35 
36 class VTKRENDERINGCORE_EXPORT vtkGPUInfoList : public vtkObject
37 {
38 public:
39  static vtkGPUInfoList *New();
40  vtkTypeMacro(vtkGPUInfoList, vtkObject);
41  void PrintSelf(ostream& os, vtkIndent indent) override;
42 
49  virtual void Probe() = 0;
50 
54  virtual bool IsProbed();
55 
60  virtual int GetNumberOfGPUs();
61 
68  virtual vtkGPUInfo *GetGPUInfo(int i);
69 
70 protected:
72 
76  ~vtkGPUInfoList() override;
78 
79  bool Probed;
81 
82 private:
83  vtkGPUInfoList(const vtkGPUInfoList&) = delete;
84  void operator=(const vtkGPUInfoList&) = delete;
85 };
86 
87 #endif
Stores the list of GPUs VRAM information.
abstract base class for most VTK objects
Definition: vtkObject.h:59
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkGPUInfoListArray * Array
a simple class to control print indentation
Definition: vtkIndent.h:39
Stores GPU VRAM information.
Definition: vtkGPUInfo.h:32
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
Internal class vtkGPUInfoList.