8 #ifndef OPENVDB_HOUDINI_SOP_NODEVDB_HAS_BEEN_INCLUDED 9 #define OPENVDB_HOUDINI_SOP_NODEVDB_HAS_BEEN_INCLUDED 11 #include <houdini_utils/ParmFactory.h> 14 #include <SOP/SOP_Node.h> 16 #include <UT/UT_DSOVersion.h> 43 std::string mNativeName;
54 SOP_NodeVDB(OP_Network*,
const char*, OP_Operator*);
57 void fillInfoTreeNodeSpecific(UT_InfoTree&,
const OP_NodeInfoTreeParms&)
override;
58 void getNodeSpecificInfoText(OP_Context&, OP_NodeInfoParms&)
override;
61 const SOP_NodeVerb* cookVerb()
const override;
69 const GA_PrimitiveGroup* matchGroup(GU_Detail&,
const std::string& pattern);
70 const GA_PrimitiveGroup* matchGroup(
const GU_Detail&,
const std::string& pattern);
93 std::string evalStdString(
const char* name, fpreal time,
int index = 0)
const;
102 OP_ERROR cookMySop(OP_Context&)
override final;
104 virtual OP_ERROR
cookVDBSop(OP_Context&) {
return UT_ERROR_NONE; }
107 OP_ERROR cookMyGuide1(OP_Context&)
override;
114 void resolveRenamedParm(PRM_ParmList& obsoleteParms,
115 const char* oldName,
const char* newName);
146 OP_ERROR duplicateSourceStealable(
const unsigned index,
147 OP_Context& context, GU_Detail **pgdp, GU_DetailHandle& gdh,
bool clean =
true);
168 OP_ERROR duplicateSourceStealable(
const unsigned index, OP_Context& context);
184 bool isSourceStealable(
const unsigned index, OP_Context& context)
const;
202 namespace node_info_text
220 template<
typename Gr
idType>
231 #endif // OPENVDB_HOUDINI_SOP_NODEVDB_HAS_BEEN_INCLUDED OpFlavor
Definition: ParmFactory.h:379
void registerGridSpecificInfoText(ApplyGridSpecificInfoText callback)
Register an info text callback to a templated grid type.
Definition: SOP_NodeVDB.h:221
Abstract base class for typed grids.
Definition: Grid.h:77
Vec3< int32_t > Vec3i
Definition: Vec3.h:665
Parameter template list that is always terminated.
Definition: ParmFactory.h:73
Vec2< int32_t > Vec2i
Definition: Vec2.h:534
virtual OP_ERROR cookVDBSop(OP_Context &)
To facilitate compilable SOPs, cookMySop() is now final. Instead, either override SOP_NodeVDB::cookVD...
Definition: SOP_NodeVDB.h:104
Base class from which to derive OpenVDB-related Houdini SOPs.
Definition: SOP_NodeVDB.h:51
void(*)(std::ostream &, const openvdb::GridBase &) ApplyGridSpecificInfoText
Definition: SOP_NodeVDB.h:207
Helper class to simplify operator registration.
Definition: ParmFactory.h:376
Definition: AttributeTransferUtil.h:34
Use this class to register a new OpenVDB operator (SOP, POP, etc.)
Definition: SOP_NodeVDB.h:30