HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
VEX_RslTypes.h
Go to the documentation of this file.
1
/*
2
* PROPRIETARY INFORMATION. This software is proprietary to
3
* Side Effects Software Inc., and is not to be reproduced,
4
* transmitted, or disclosed in any way without written permission.
5
*
6
* NAME: VEX_RslTypes.h (VEX Library, C++)
7
*
8
* COMMENTS:
9
*/
10
11
#ifndef __VEX_RslTypes__
12
#define __VEX_RslTypes__
13
14
#include "
VEX_API.h
"
15
16
/// TODO: While we have a library for VEX language
17
/// (ie, this one), currently we don't have any library for RSL stuff. We
18
/// already started putting RSL-related entities in this library (eg,
19
/// VEX_RslResolver), so this is continuation of this trend. Ideally, at some
20
/// point we should factor out any RSL related code out of this library into a
21
/// new RSL library.
22
23
// ============================================================================
24
/// RenderMan shader context types.
25
typedef
enum
{
26
RSL_INVALID_CONTEXT
= 0x00000000,
27
RSL_SURFACE_CONTEXT
= 0x00000001,
28
RSL_DISPLACE_CONTEXT
= 0x00000002,
29
RSL_LIGHT_CONTEXT
= 0x00000004,
30
RSL_VOLUME_CONTEXT
= 0x00000008,
31
RSL_IMAGER_CONTEXT
= 0x00000010,
32
RSL_CLASS_CONTEXT
= 0x00000020,
33
}
RSL_ContextType
;
34
35
36
// ============================================================================
37
/// Basic management of shader contexts in RSL.
38
class
VEX_API
RSL_ContextManager
39
{
40
public
:
41
/// Get the name token of a context.
42
static
const
char
*getNameFromContextType(
RSL_ContextType
t
);
43
44
/// Returns a context label token for a given type.
45
static
const
char
*getLabelFromContextType(
RSL_ContextType
t );
46
47
/// Map the context name to a context type.
48
static
RSL_ContextType
getContextTypeFromName(
const
char
*
name
);
49
};
50
51
#endif
52
53
RSL_LIGHT_CONTEXT
Definition:
VEX_RslTypes.h:29
RSL_ContextManager
Basic management of shader contexts in RSL.
Definition:
VEX_RslTypes.h:38
RSL_SURFACE_CONTEXT
Definition:
VEX_RslTypes.h:27
RSL_VOLUME_CONTEXT
Definition:
VEX_RslTypes.h:30
RSL_IMAGER_CONTEXT
Definition:
VEX_RslTypes.h:31
VEX_API
#define VEX_API
Definition:
VEX_API.h:14
RSL_DISPLACE_CONTEXT
Definition:
VEX_RslTypes.h:28
RSL_INVALID_CONTEXT
Definition:
VEX_RslTypes.h:26
name
GLuint const GLchar * name
Definition:
glcorearb.h:786
t
GLdouble t
Definition:
glad.h:2397
RSL_CLASS_CONTEXT
Definition:
VEX_RslTypes.h:32
RSL_ContextType
RSL_ContextType
RenderMan shader context types.
Definition:
VEX_RslTypes.h:25
VEX_API.h
VEX
VEX_RslTypes.h
Generated on Thu Apr 25 2024 03:19:17 for HDK by
1.8.6