RenderMan API  23.0
RixVolumeIntegrator Class Referenceabstract

#include <RixBxdf.h>

Inheritance diagram for RixVolumeIntegrator:
RixSSDiffusion RixSSPathTraced

Classes

class  IntegratorDelegate
 

Public Types

enum  VolumeProperty {
  k_DensityType, k_DensityFloat, k_DensityColor, k_MaxDensity,
  k_Velocity, k_NontemporalDensityFloat, k_NontemporalDensityColor, k_DensityFloatId,
  k_DensityColorId, k_Emission
}
 

Public Member Functions

 RixVolumeIntegrator (RixShadingContext const *sCtx, RixBxdfFactory *f, RtPointer _instanceData)
 
virtual ~RixVolumeIntegrator ()
 
RixShadingContext const * GetShadingCtx () const
 
RixShadingContextGetVolumeShadingCtx () const
 
RixBxdfFactoryGetBxdfFactory () const
 
RtPointer GetInstanceData () const
 
virtual void SetParameters (void const *subclassParams)
 
virtual void Release ()
 
virtual RixSCDetail GetProperty (VolumeProperty, void const **) const
 
RixShadingContextBeginVolumeSampling ()
 
RixShadingContext const * EndVolumeSampling (RixBXLobeTraits const *exposeVol=NULL, int const *membership=NULL)
 
virtual void GetNearestHits (int numRays, RtRayGeometry const *rays, RixRNG *rng, RixBXLobeTraits const &lobesWanted, RixIntegratorContext &iCtx, RixLightingServices *lightingServices, IntegratorDelegate *lcb, int *numShadingCtxs, RixShadingContext const **shadingCtxs, RtUString const subset=US_NULL, RtUString const excludeSubset=US_NULL, bool isLightPath=false, RtHitSides hitSides=k_SidesBoth, bool isPrimary=false)=0
 
virtual void GetTransmission (int numRays, RtRayGeometry const *rays, RixRNG *rng, RixIntegratorContext &iCtx, RtColorRGB *transmissions, RtColorRGB *emission, RtUString const subset=US_NULL, RtUString const excludeSubset=US_NULL)
 

Protected Attributes

RixBxdfFactorybxdfFactory
 
RtPointer instanceData
 
void const * params
 

Detailed Description

Definition at line 744 of file RixBxdf.h.

Member Enumeration Documentation

◆ VolumeProperty

Enumerator
k_DensityType 
k_DensityFloat 
k_DensityColor 
k_MaxDensity 
k_Velocity 
k_NontemporalDensityFloat 
k_NontemporalDensityColor 
k_DensityFloatId 
k_DensityColorId 
k_Emission 

Definition at line 811 of file RixBxdf.h.

Constructor & Destructor Documentation

◆ RixVolumeIntegrator()

RixVolumeIntegrator::RixVolumeIntegrator ( RixShadingContext const *  sCtx,
RixBxdfFactory f,
RtPointer  _instanceData 
)
inline

Definition at line 747 of file RixBxdf.h.

◆ ~RixVolumeIntegrator()

virtual RixVolumeIntegrator::~RixVolumeIntegrator ( )
inlinevirtual

Definition at line 754 of file RixBxdf.h.

Member Function Documentation

◆ BeginVolumeSampling()

RixShadingContext* RixVolumeIntegrator::BeginVolumeSampling ( )
inline

Definition at line 851 of file RixBxdf.h.

◆ EndVolumeSampling()

RixShadingContext const* RixVolumeIntegrator::EndVolumeSampling ( RixBXLobeTraits const *  exposeVol = NULL,
int const *  membership = NULL 
)
inline

Definition at line 859 of file RixBxdf.h.

◆ GetBxdfFactory()

RixBxdfFactory* RixVolumeIntegrator::GetBxdfFactory ( ) const
inline

Definition at line 774 of file RixBxdf.h.

◆ GetInstanceData()

RtPointer RixVolumeIntegrator::GetInstanceData ( ) const
inline

Definition at line 779 of file RixBxdf.h.

◆ GetNearestHits()

virtual void RixVolumeIntegrator::GetNearestHits ( int  numRays,
RtRayGeometry const *  rays,
RixRNG rng,
RixBXLobeTraits const &  lobesWanted,
RixIntegratorContext iCtx,
RixLightingServices lightingServices,
IntegratorDelegate lcb,
int *  numShadingCtxs,
RixShadingContext const **  shadingCtxs,
RtUString const  subset = US_NULL,
RtUString const  excludeSubset = US_NULL,
bool  isLightPath = false,
RtHitSides  hitSides = k_SidesBoth,
bool  isPrimary = false 
)
pure virtual

Implemented in RixSSPathTraced, and RixSSDiffusion.

◆ GetProperty()

virtual RixSCDetail RixVolumeIntegrator::GetProperty ( VolumeProperty  ,
void const **   
) const
inlinevirtual

Definition at line 825 of file RixBxdf.h.

◆ GetShadingCtx()

RixShadingContext const* RixVolumeIntegrator::GetShadingCtx ( ) const
inline

Definition at line 764 of file RixBxdf.h.

◆ GetTransmission()

virtual void RixVolumeIntegrator::GetTransmission ( int  numRays,
RtRayGeometry const *  rays,
RixRNG rng,
RixIntegratorContext iCtx,
RtColorRGB transmissions,
RtColorRGB emission,
RtUString const  subset = US_NULL,
RtUString const  excludeSubset = US_NULL 
)
inlinevirtual

Definition at line 889 of file RixBxdf.h.

◆ GetVolumeShadingCtx()

RixShadingContext* RixVolumeIntegrator::GetVolumeShadingCtx ( ) const
inline

Definition at line 769 of file RixBxdf.h.

◆ Release()

virtual void RixVolumeIntegrator::Release ( )
inlinevirtual

Definition at line 800 of file RixBxdf.h.

◆ SetParameters()

virtual void RixVolumeIntegrator::SetParameters ( void const *  subclassParams)
inlinevirtual

Definition at line 784 of file RixBxdf.h.

Member Data Documentation

◆ bxdfFactory

RixBxdfFactory* RixVolumeIntegrator::bxdfFactory
protected

Definition at line 910 of file RixBxdf.h.

◆ instanceData

RtPointer RixVolumeIntegrator::instanceData
protected

Definition at line 911 of file RixBxdf.h.

◆ params

void const* RixVolumeIntegrator::params
protected

Definition at line 912 of file RixBxdf.h.


The documentation for this class was generated from the following file: