RixBXLobeTraits Struct Reference
#include <RixBxdfLobe.h>
Classes | |
struct | Bitfield |
union | Converter |
Public Member Functions | |
PRMAN_INLINE | RixBXLobeTraits () |
Constructor; initializes all fields to zero. | |
PRMAN_INLINE | RixBXLobeTraits (unsigned serialized) |
Constructor; initializes from serialization as unsigned short. | |
PRMAN_INLINE | RixBXLobeTraits (bool discrete, bool reflect, bool transmit, unsigned short D, unsigned short S, unsigned short U) |
Constructor; sets all fields. | |
PRMAN_INLINE | RixBXLobeTraits (RixBXLobeSampled lobe) |
Constructor; sets all fields from a RixBXLobeSampled struct. | |
PRMAN_INLINE bool | GetDiscrete () const |
PRMAN_INLINE bool | GetReflect () const |
PRMAN_INLINE bool | GetTransmit () const |
PRMAN_INLINE bool | GetContinuation () const |
PRMAN_INLINE unsigned short | GetDiffuse () const |
PRMAN_INLINE unsigned short | GetSpecular () const |
PRMAN_INLINE unsigned short | GetUser () const |
PRMAN_INLINE bool | GetMaxSpecularDepth () const |
PRMAN_INLINE bool | GetMaxDiffuseDepth () const |
PRMAN_INLINE void | SetDiscrete (bool val) |
PRMAN_INLINE void | SetReflect (bool val) |
PRMAN_INLINE void | SetTransmit (bool val) |
PRMAN_INLINE void | SetContinuation (bool val) |
PRMAN_INLINE void | SetMaxSpecularDepth (bool val) |
PRMAN_INLINE void | SetMaxDiffuseDepth (bool val) |
PRMAN_INLINE void | SetDiffuse (unsigned short bits) |
PRMAN_INLINE void | SetSpecular (unsigned short bits) |
PRMAN_INLINE void | SetUser (unsigned short bits) |
PRMAN_INLINE void | SetNone () |
Zero all fields. | |
PRMAN_INLINE void | SetAll () |
PRMAN_INLINE bool | HasAny () const |
PRMAN_INLINE bool | HasAnyDiffSpec () const |
PRMAN_INLINE bool | HasAnyDiffuse () const |
PRMAN_INLINE bool | HasAnySpecular () const |
PRMAN_INLINE bool | HasAnyUser () const |
Returns true if any user bits are set. | |
PRMAN_INLINE unsigned | Serialize () const |
PRMAN_INLINE RixBXLobeTraits const & | operator&= (RixBXLobeTraits const &rhs) |
Bitwise AND all fields with the right-hand-side. | |
PRMAN_INLINE RixBXLobeTraits const & | operator|= (RixBXLobeTraits const &rhs) |
Bitwise OR all fields with the right-hand-side. | |
Detailed Description
This struct represents the characteristics of potentially several lobes of a bxdf in aggregate.
Member Function Documentation
PRMAN_INLINE bool RixBXLobeTraits::HasAny | ( | ) | const |
Returns true if any diffuse, specular, or user bits are set, and either the reflect, transmit, or continuation bits are set.
PRMAN_INLINE bool RixBXLobeTraits::HasAnyDiffSpec | ( | ) | const |
Returns true if any diffuse or specular bits are set, and either the reflect, transmit, or continuation bits are set.
PRMAN_INLINE bool RixBXLobeTraits::HasAnyDiffuse | ( | ) | const |
Returns true if any diffuse bits are set, and either the reflect or transmit bits are set.
PRMAN_INLINE bool RixBXLobeTraits::HasAnySpecular | ( | ) | const |
Returns true if any specular bits are set, and either the reflect or transmit bits are set.
PRMAN_INLINE void RixBXLobeTraits::SetAll | ( | ) |
Set all bits to true (except for the discreteSubset and continuationSubset which are both set to zero; use SetDiscrete() / SetContinuation() to explicitly set the discreteSubset and continuationSubset bits).
The documentation for this struct was generated from the following file: