VTK
dox
Rendering
OSPRay
vtkOSPRayMaterialLibrary.h
Go to the documentation of this file.
1
/*=========================================================================
2
3
Program: Visualization Toolkit
4
Module: vtkOSPRayMaterialLibrary.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
=========================================================================*/
28
#ifndef vtkOSPRayMaterialLibrary_h
29
#define vtkOSPRayMaterialLibrary_h
30
31
#include "vtkRenderingOSPRayModule.h"
// For export macro
32
#include "
vtkObject.h
"
33
34
#include <set>
//for set
35
#include <vector>
//for set
36
37
class
vtkOSPRayMaterialLibraryInternals;
38
class
vtkTexture
;
39
40
class
VTKRENDERINGOSPRAY_EXPORT
vtkOSPRayMaterialLibrary
:
public
vtkObject
41
{
42
public
:
43
static
vtkOSPRayMaterialLibrary
*
New
();
44
vtkTypeMacro(
vtkOSPRayMaterialLibrary
,
vtkObject
);
45
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
46
50
void
Fire();
51
57
bool
ReadFile(
const
char
*FileName);
58
62
const
char
*WriteBuffer();
63
69
bool
ReadBuffer(
const
char
*Buffer);
70
74
std::set<std::string> GetMaterialNames();
75
79
std::string
LookupImplName(
const
std::string
& nickname);
80
84
std::vector<double> GetDoubleShaderVariable(
const
std::string
& nickname,
const
std::string
& varname);
85
89
vtkTexture
* GetTexture(
const
std::string
& nickname,
const
std::string
& varname);
90
96
void
AddMaterial(
const
std::string
& nickname,
const
std::string
& implname);
97
102
void
AddTexture(
const
std::string
& nickname,
const
std::string
& texturename,
vtkTexture
* tex);
103
108
void
AddShaderVariable(
const
std::string
& nickname,
const
std::string
& variablename,
int
numVars,
double
*x);
109
110
111
protected
:
112
vtkOSPRayMaterialLibrary
();
113
virtual
~
vtkOSPRayMaterialLibrary
();
114
115
bool
InternalParse(
const
char
*
name
,
bool
IsFile);
116
117
private
:
118
vtkOSPRayMaterialLibrary
(
const
vtkOSPRayMaterialLibrary
&) =
delete
;
119
void
operator=(
const
vtkOSPRayMaterialLibrary
&) =
delete
;
120
121
vtkOSPRayMaterialLibraryInternals *Internal;
122
};
123
124
#endif
vtkObject
abstract base class for most VTK objects
Definition:
vtkObject.h:59
vtkObject::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkX3D::string
Definition:
vtkX3D.h:490
vtkOSPRayMaterialLibrary
a collection of materials for vtk apps to draw from
Definition:
vtkOSPRayMaterialLibrary.h:40
vtkX3D::name
Definition:
vtkX3D.h:219
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:39
vtkTexture
handles properties associated with a texture map
Definition:
vtkTexture.h:71
vtkObject::New
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkObject.h
Generated by
1.8.14