Loading...
Searching...
No Matches
include
bbm
bsdf_attr_flag.h
Go to the documentation of this file.
1
#ifndef _BBM_BSDF_ATTR_FLAG_H_
2
#define _BBM_BSDF_ATTR_FLAG_H_
3
4
#include "
util/flags.h
"
5
6
/***********************************************************************/
7
/*! \file bsdf_attr_flag.h
8
\brief Flags to mark properties of a bsdf's attribute.
9
************************************************************************/
10
11
namespace
bbm
{
12
13
/*********************************************************************/
14
/*! \brief Attribute Property Flags
15
*********************************************************************/
16
enum struct
bsdf_attr
17
{
18
None
= 0x0000,
19
DiffuseScale
= 0x0001,
20
DiffuseParameter
= 0x0002,
21
SpecularScale
= 0x0004,
22
SpecularParameter
= 0x0008,
23
Dependent
= 0x0010,
24
Diffuse
=
DiffuseScale
|
DiffuseParameter
,
25
Specular
=
SpecularScale
|
SpecularParameter
,
26
Scale
=
DiffuseScale
|
SpecularScale
,
27
Parameter
=
DiffuseParameter
|
SpecularParameter
,
28
All
=
Specular
|
Diffuse
,
29
};
30
31
BBM_ENUM
(
bsdf_attr
,
None
,
DiffuseScale
,
DiffuseParameter
,
SpecularScale
,
SpecularParameter
,
Dependent
,
Diffuse
,
Specular
,
Scale
,
Parameter
,
All
);
32
33
}
// end bbm namespace
34
35
#endif
/* _BBM_BSDF_ATT_FLAG_H_ */
flags.h
Scoped enum operators and methods.
bbm
Definition:
aggregatebsdf.h:29
bbm::bsdf_attr
bsdf_attr
Attribute Property Flags.
Definition:
bsdf_attr_flag.h:17
bbm::bsdf_attr::Dependent
@ Dependent
bbm::bsdf_attr::Specular
@ Specular
bbm::bsdf_attr::Diffuse
@ Diffuse
bbm::bsdf_attr::DiffuseScale
@ DiffuseScale
bbm::bsdf_attr::DiffuseParameter
@ DiffuseParameter
bbm::bsdf_attr::None
@ None
bbm::bsdf_attr::Parameter
@ Parameter
bbm::bsdf_attr::Scale
@ Scale
bbm::bsdf_attr::All
@ All
bbm::bsdf_attr::SpecularParameter
@ SpecularParameter
bbm::bsdf_attr::SpecularScale
@ SpecularScale
BBM_ENUM
#define BBM_ENUM(FlagName,...)
BBM_ENUM macro for declaring the types of an enum.
Definition:
reflection.h:332