RenderManAPI  24.0
RixVolumeIntegrator Class Referenceabstract

#include <RixBxdf.h>

Inherited by RixSSDiffusion, and 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, void *_instanceData)
 
virtual ~RixVolumeIntegrator ()
 
RixShadingContext const * GetShadingCtx () const
 
RixShadingContextGetVolumeShadingCtx () const
 
RixBxdfFactoryGetBxdfFactory () const
 
void SetBxdfFactory (RixBxdfFactory *factory)
 
void * GetInstanceData () const
 
void SetInstanceData (void *data)
 
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
 
void * instanceData
 
void const * params
 

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 

Constructor & Destructor Documentation

◆ RixVolumeIntegrator()

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

◆ ~RixVolumeIntegrator()

virtual RixVolumeIntegrator::~RixVolumeIntegrator ( )
inlinevirtual

Member Function Documentation

◆ BeginVolumeSampling()

RixShadingContext* RixVolumeIntegrator::BeginVolumeSampling ( )
inline

◆ EndVolumeSampling()

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

◆ GetBxdfFactory()

RixBxdfFactory* RixVolumeIntegrator::GetBxdfFactory ( ) const
inline

References bxdfFactory.

◆ GetInstanceData()

void* RixVolumeIntegrator::GetInstanceData ( ) const
inline

References instanceData.

◆ 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

References k_RixSCInvalidDetail.

◆ GetShadingCtx()

RixShadingContext const* RixVolumeIntegrator::GetShadingCtx ( ) const
inline

◆ 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

References PIXAR_ARGUSED.

◆ GetVolumeShadingCtx()

RixShadingContext* RixVolumeIntegrator::GetVolumeShadingCtx ( ) const
inline

◆ Release()

virtual void RixVolumeIntegrator::Release ( )
inlinevirtual

◆ SetBxdfFactory()

void RixVolumeIntegrator::SetBxdfFactory ( RixBxdfFactory factory)
inline

References bxdfFactory.

◆ SetInstanceData()

void RixVolumeIntegrator::SetInstanceData ( void *  data)
inline

References instanceData.

◆ SetParameters()

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

References params.

Member Data Documentation

◆ bxdfFactory

RixBxdfFactory* RixVolumeIntegrator::bxdfFactory
protected

◆ instanceData

void* RixVolumeIntegrator::instanceData
protected

◆ params

void const* RixVolumeIntegrator::params
protected

Referenced by SetParameters().


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