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
 
struct  EvalTemp
 
class  OverrideValue
 

Public Types

enum  OverrideType {
  OverrideType::NONE = 0, OverrideType::CURVEATTRIB, OverrideType::CLUMPATTRIB, OverrideType::SKINATTRIB,
  OverrideType::TEXTURE, OverrideType::TEXTUREPRIM
}
 
enum  UVMode { UVMode::SKIN = 0, UVMode::CURVE, UVMode::FEATHER }
 
enum  BarbMode { BarbMode::PERPOINT = 0, BarbMode::MAX }
 
using OverrideValueF = OverrideValue< float >
 
using OverrideValueV3 = OverrideValue< UT_Vector3 >
 
using OverrideValueQ = OverrideValue< UT_Quaternion >
 

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 GU_Detail *texprimgdp, const GA_ROHandleV3 &uvattrib, const UT_ValArray< OverrideType > &overridetypes)
 
 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 GU_Detail *texprimgdp, const GA_ROHandleV3 &uvattrib, const GA_ROHandleV3 &curveuvattrib, const UT_ValArray< OverrideType > &overridetypes, const GA_Attribute *barbl, const GA_Attribute *barbr, const GA_Attribute *barbuvl, const GA_Attribute *barbuvr)
 
void setBarbPromotionMode (BarbMode mode)
 
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)
 
void eval (OverrideValue< float > &out, EvalTemp &temp, 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
 
float postProcessVarying (float value) const
 
bool needSkin () const
 
bool needTexPrim () const
 
bool needUV () const
 
const GA_AttributegetRequiredAttrib () const
 
bool hasChanged (const CacheData *cache) const
 
const UT_StringHoldergetBaseName () const
 
UVMode getUVMode () const
 
bool updateOverrideCache (UT_UniquePtr< SOP_ParmOverride::CacheData > &cachedata) const
 

Detailed Description

Definition at line 26 of file SOP_ParmOverride.h.

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
PERPOINT 
MAX 

Definition at line 46 of file SOP_ParmOverride.h.

Enumerator
NONE 
CURVEATTRIB 
CLUMPATTRIB 
SKINATTRIB 
TEXTURE 
TEXTUREPRIM 

Definition at line 29 of file SOP_ParmOverride.h.

Enumerator
SKIN 
CURVE 
FEATHER 

Definition at line 39 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 GU_Detail texprimgdp,
const GA_ROHandleV3 uvattrib,
const UT_ValArray< OverrideType > &  overridetypes 
)
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 GU_Detail texprimgdp,
const GA_ROHandleV3 uvattrib,
const GA_ROHandleV3 curveuvattrib,
const UT_ValArray< OverrideType > &  overridetypes,
const GA_Attribute barbl,
const GA_Attribute barbr,
const GA_Attribute barbuvl,
const GA_Attribute barbuvr 
)

Member Function Documentation

fpreal SOP_ParmOverride::baseValue ( ) const
inline

Definition at line 359 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 365 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 393 of file SOP_ParmOverride.h.

void SOP_ParmOverride::eval ( OverrideValue< float > &  out,
EvalTemp temp,
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 418 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 UT_StringHolder& SOP_ParmOverride::getBaseName ( ) const
inline

Definition at line 469 of file SOP_ParmOverride.h.

const GA_Attribute* SOP_ParmOverride::getRequiredAttrib ( ) const
UVMode SOP_ParmOverride::getUVMode ( ) const
inline

Definition at line 474 of file SOP_ParmOverride.h.

bool SOP_ParmOverride::hasChanged ( const CacheData cache) const
bool SOP_ParmOverride::needSkin ( ) const
bool SOP_ParmOverride::needTexPrim ( ) const
bool SOP_ParmOverride::needUV ( ) const
OverrideType SOP_ParmOverride::overrideType ( ) const
inline

Definition at line 354 of file SOP_ParmOverride.h.

float SOP_ParmOverride::postProcessVarying ( float  value) const
void SOP_ParmOverride::setBarbPromotionMode ( BarbMode  mode)
inline

Definition at line 349 of file SOP_ParmOverride.h.

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

Definition at line 480 of file SOP_ParmOverride.h.


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