HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SOP_ParmOverride Class Reference

#include <SOP_ParmOverride.h>

Classes

class  CacheData
 

Public Types

enum  OverrideType {
  OverrideType::NONE = 0, OverrideType::CURVEATTRIB, OverrideType::CLUMPATTRIB, OverrideType::SKINATTRIB,
  OverrideType::TEXTURE
}
 

Public Member Functions

 SOP_ParmOverride (const SOP_NodeVerb::CookParms &_cookparms, const SOP_NodeParms &_parms, const UT_StringHolder &_baseparmname, const GU_Detail *_gdp, const GU_Detail *_clumpgdp, const GU_Detail *_skingdp, const GA_ROHandleV3 &_uvattrib, const UT_ValArray< OverrideType > &_overridetypes)
 
OverrideType overrideType () const
 
fpreal baseValue () const
 
void eval (UT_FloatArray &out, const GA_AttributeOwner target, const GA_Offset skinprimoff, const GA_OffsetArray &skinvertoffsets, const UT_FloatArray &skinvertweights, const UT_Vector3 &uv, const GA_Offset curveprimoff, const GA_OffsetListRef &curvevertoffsets, const GA_Offset clumpprimoff, const UT_ValArray< GA_OffsetArray > &clumpvertoffsets, const UT_ValArray< UT_FloatArray > &clumpvertweights)
 
void eval (UT_FloatArray &out, const GA_AttributeOwner target, const GA_Offset skinprimoff, const GA_OffsetArray &skinvertoffsets, const UT_FloatArray &skinvertweights, const UT_Vector3 &uv, const GA_Offset curveprimoff, const GA_OffsetListRef &curvevertoffsets)
 
fpreal evalSkin (const GA_Offset skinprimoff, const GA_OffsetArray &skinvertoffsets, const UT_FloatArray &skinvertweights, const UT_Vector3 &uv)
 
fpreal evalSkinPoint (const GA_Offset skinptoff)
 
bool evaluatesToSingleValue (GA_AttributeOwner target) const
 
bool needSkin () const
 
bool needUV () const
 
const GA_AttributegetRequiredAttrib () const
 
bool hasChanged (const CacheData *cache) const
 
bool updateOverrideCache (UT_UniquePtr< SOP_ParmOverride::CacheData > &cachedata) const
 

Static Public Member Functions

template<typename T >
static T evalAttrib (const GU_Detail *gdp, const GA_AttributeOwner target, const GA_ROHandleT< T > &attrib, const GA_Offset &primoff, const GA_Offset &vertoff)
 
template<typename T >
static T interpAttrib (const GU_Detail *gdp, const GA_ROHandleT< T > &attrib, const GA_Offset &primoff, const GA_OffsetArray &vertoffsets, const UT_FloatArray &vertweights, const T defaultvalue=T(0.0f))
 

Detailed Description

Definition at line 20 of file SOP_ParmOverride.h.

Member Enumeration Documentation

Enumerator
NONE 
CURVEATTRIB 
CLUMPATTRIB 
SKINATTRIB 
TEXTURE 

Definition at line 23 of file SOP_ParmOverride.h.

Constructor & Destructor Documentation

SOP_ParmOverride::SOP_ParmOverride ( const SOP_NodeVerb::CookParms _cookparms,
const SOP_NodeParms _parms,
const UT_StringHolder _baseparmname,
const GU_Detail _gdp,
const GU_Detail _clumpgdp,
const GU_Detail _skingdp,
const GA_ROHandleV3 _uvattrib,
const UT_ValArray< OverrideType > &  _overridetypes 
)

Member Function Documentation

fpreal SOP_ParmOverride::baseValue ( ) const
inline

Definition at line 65 of file SOP_ParmOverride.h.

void SOP_ParmOverride::eval ( UT_FloatArray out,
const GA_AttributeOwner  target,
const GA_Offset  skinprimoff,
const GA_OffsetArray skinvertoffsets,
const UT_FloatArray skinvertweights,
const UT_Vector3 uv,
const GA_Offset  curveprimoff,
const GA_OffsetListRef curvevertoffsets,
const GA_Offset  clumpprimoff,
const UT_ValArray< GA_OffsetArray > &  clumpvertoffsets,
const UT_ValArray< UT_FloatArray > &  clumpvertweights 
)
inline

Definition at line 71 of file SOP_ParmOverride.h.

void SOP_ParmOverride::eval ( UT_FloatArray out,
const GA_AttributeOwner  target,
const GA_Offset  skinprimoff,
const GA_OffsetArray skinvertoffsets,
const UT_FloatArray skinvertweights,
const UT_Vector3 uv,
const GA_Offset  curveprimoff,
const GA_OffsetListRef curvevertoffsets 
)
inline

Definition at line 99 of file SOP_ParmOverride.h.

template<typename T >
static T SOP_ParmOverride::evalAttrib ( const GU_Detail gdp,
const GA_AttributeOwner  target,
const GA_ROHandleT< T > &  attrib,
const GA_Offset primoff,
const GA_Offset vertoff 
)
inlinestatic

Definition at line 231 of file SOP_ParmOverride.h.

fpreal SOP_ParmOverride::evalSkin ( const GA_Offset  skinprimoff,
const GA_OffsetArray skinvertoffsets,
const UT_FloatArray skinvertweights,
const UT_Vector3 uv 
)
fpreal SOP_ParmOverride::evalSkinPoint ( const GA_Offset  skinptoff)
bool SOP_ParmOverride::evaluatesToSingleValue ( GA_AttributeOwner  target) const
const GA_Attribute* SOP_ParmOverride::getRequiredAttrib ( ) const
bool SOP_ParmOverride::hasChanged ( const CacheData cache) const
template<typename T >
static T SOP_ParmOverride::interpAttrib ( const GU_Detail gdp,
const GA_ROHandleT< T > &  attrib,
const GA_Offset primoff,
const GA_OffsetArray vertoffsets,
const UT_FloatArray vertweights,
const T  defaultvalue = T(0.0f) 
)
inlinestatic

Definition at line 263 of file SOP_ParmOverride.h.

bool SOP_ParmOverride::needSkin ( ) const
bool SOP_ParmOverride::needUV ( ) const
OverrideType SOP_ParmOverride::overrideType ( ) const
inline

Definition at line 60 of file SOP_ParmOverride.h.

bool SOP_ParmOverride::updateOverrideCache ( UT_UniquePtr< SOP_ParmOverride::CacheData > &  cachedata) const
inline

Definition at line 144 of file SOP_ParmOverride.h.


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