Public Member Functions | |
| NullGeomOp (Node *node, GeomOpEngine::Builder engineBuilder) | |
| NullGeomOp (Node *node) | |
| int | minimum_inputs () const override |
| int | maximum_inputs () const override |
| const char * | Class () const override |
| const char * | node_help () const override |
Public Member Functions inherited from DD::Image::GeomOp | |
| const GeneralInfo & | generalInfo () const override |
| const GeomOp * | geomOp () const override |
| Cast to a GeomOp. This is much cheaper and safer than using dynamic_cast. | |
| GeomOp * | geomOp () override |
| GeomOpEngine * | engineNode () const |
| const char * | node_shape () const override |
| Draw a round sided box. | |
| unsigned | node_color () const override |
| Op * | default_input (int node_input) const override |
| Return a default NullGeomOp op for Node input0. | |
| bool | test_input (int node_input, Op *op) const override |
| Allows only GeomOp inputs by default. | |
| void | knobs (Knob_Callback f) override |
| Default knobs() method - calls addSelectionKnobs(geoselect_saves=false). | |
| virtual void | addSelectionKnobs (Knob_Callback f, bool geoselect_saves=false) |
| virtual void | AppendKnobToTarget (const Knob_Closure &f, const usg::Token &target_id) |
| virtual void | AppendKnobToTarget (const char *knob_name, const usg::Token &target_id) |
| void | KnobDefinesGeometry (const Knob_Closure &f) |
| void | KnobModifiesAttribValues (const Knob_Closure &f) |
| void | KnobEditsLayer (const Knob_Closure &f) |
| void | KnobEditStage (const Knob_Closure &f) |
| template<typename T > | |
| T | getKnobValue (const char *knob_name, const OutputContext &context, const T &default_value) const |
| template<typename T > | |
| bool | setKnobValue (const char *knob_name, const T &value, double time, int32_t element_offset=0, int32_t view=-1) |
| template<typename T > | |
| bool | setKnobValues (const char *knob_name, bool clear_keys, const std::vector< T > &values, const std::vector< double > ×, int32_t element_offset=0, int32_t view=-1) |
| const OutputContext & | inputContext (int node_input, int offset, OutputContext &scratch_ctx) const override |
| const OutputContext * | inputUIContext (int node_input, OutputContext &scratch_ctx) const override |
| GeomOp * | input (int op_input) const |
| GeomOp * | input0 () const |
| GeomOp * | input1 () const |
| virtual bool | selectable () const |
| virtual bool | selection3DChanged (ViewerContext *ctx) |
| virtual bool | selection3DCleared () |
| virtual bool | selection3DMouseDown (ViewerContext *ctx) |
| virtual bool | selection3DMouseUp (ViewerContext *ctx) |
| virtual bool | selection3DMouseDrag (ViewerContext *ctx) |
| virtual void | printInfo (std::ostream &o) |
| void | build_handles (ViewerContext *ctx) override |
| virtual void | buildXformHandles (ViewerContext *ctx, const fdk::Mat4d &localMatrix) |
| const usg::GeomState & | inputVersions () const |
| const usg::GeomState & | localVersions () const |
| const usg::GeomState & | outputVersions () const |
| const usg::GeomState & | inputGeomState () const |
| const usg::GeomState & | localGeomState () const |
| const usg::GeomState & | outputGeomState () const |
| void | resetGeomState () |
| void | buildGeomState (DD::Image::Hash &op_hash) |
| void | appendToTarget (const usg::Token &target_id, const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
| void | appendToTarget (const usg::Token &target_id, const Hash &hash, const Hash &version, bool is_animating_source=false) |
| void | appendToTarget (const usg::Token &target_id, Op *op) |
| Variant that appends op->hash() and uses op->varyingOutputHash() for 'is hash animating' state. | |
| void | appendToDefineGeometryTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
| void | appendToDefineGeometryTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
| void | appendToDefineGeometryTarget (Op *op) |
| void | appendToModifyValuesTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
| void | appendToModifyValuesTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
| void | appendToModifyValuesTarget (Op *op) |
| void | appendToEditLayerTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
| void | appendToEditLayerTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
| void | appendToEditLayerTarget (Op *op) |
| void | appendToEditStageTarget (const fdk::Hash &hash, const fdk::Hash &version, bool is_animating_source=false) |
| void | appendToEditStageTarget (const Hash &hash, const Hash &version, bool is_animating_source=false) |
| void | appendToEditStageTarget (Op *op) |
| const usg::GeomStateTargetArray & | localTargets () const |
| The set of knob-change targets, copied from the shared GeomOpEngine. | |
Public Member Functions inherited from DD::Image::Op | |
| PrevalidateResult | preValidate (ViewerContext *ctx=nullptr, PreValidateContext *=nullptr) |
| Op * | rootOp () const |
| bool | preValidateAborted (int treeStartingVersion, PrevalidateResult &result) const |
| const OutputSet & | getOutputs () const |
| return all the outputs of this node | |
| virtual void | setInputsValid (bool nowValid) |
| set whether the input ops are valid (are for the right context) | |
| bool | inputsValid () const |
| return whether the input ops are valid (are for the right context) | |
| virtual bool | can_clone () const |
| returns whether or not an op can be cloned in the dag | |
| bool | haveHash () const |
| return true if the hash() value is meaningful and globally unique | |
| bool | varyingOutputHash () const |
| void | setVaryingOutputHash (bool varyingHashes) |
| Set the varyingOutputHash indicator to a specific state. | |
| void | enableVaryingOutputHash () |
| Enable the varyingOutputHash indicator. | |
| virtual Hash | editState () const |
| virtual void | setEditState (const Hash &h) |
| virtual std::vector< DD::Image::OutputContext > | getPrevVersionsWanted () const |
| virtual const MetaData::Bundle & | _fetchMetaData (const char *keyname) |
| const MetaData::Bundle & | fetchMetaData (const char *keyname) |
| Node * | node () const |
| DD::Image::NodeI * | getNode () const |
| void | node (Node *v) |
| const char * | nodeName () const |
| Return NodeI::name() which is the Node's local name with no parent path. | |
| std::string | nodeFullPath (char separator= '.') const |
| Hash | nodeTopologyHash () const |
| Op * | firstOp () const |
| void | firstOp (Op *v) |
| Op * | parent () const |
| void | parent (Op *lpOp) |
| virtual void | detach () |
| node has been deleted in DAG | |
| virtual void | attach () |
| node has been created in DAG | |
| virtual void | pre_write_knobs () |
| void | knobStorePrep (const OutputContext &storeContext) |
| void | knobStorePost (const OutputContext &storeContext, Hash &hash) |
| int | replace_knobs (Knob *afterthis, int n, void(*f)(void *, Knob_Callback), void *, const char *fileExt=nullptr) |
| int | add_knobs (void(*f)(void *, Knob_Callback), void *, Knob_Callback) |
| void | set_unlicensed () |
| Knob * | knob (const char *name) const |
| Knob * | knob (int) const |
| bool | pushed () const |
| bool | panel_visible () const |
| bool | node_disabled () const |
| bool | node_selected () const |
| unsigned | node_gl_color () const |
| void * | field (const char *name) |
| void * | field (const char *name, int &type) |
| void * | set_field (const char *name, const void *source, int size) |
| void * | get_field (const char *name, void *dest, int size) |
| void | beginHandle (HandleType command, ViewerContext *ctx, EventCallback *cb, int index, float x=0, float y=0, float z=0, ViewerContext::Cursor cursor=ViewerContext::kNoCursor) |
| void | endHandle (ViewerContext *ctx) |
| virtual int | knob_change_finished (Knob *knob, bool changedByUser=true) |
| void | addTime (OpTimer::Category category, long long microsecondsCPU, long long microsecondsWall, bool isTopLevel=true) |
| void | getPerformanceInfo (OpTimer::Category category, OpTimer::PerformanceInfo &info) const |
| return the amount of CPU time taken by this op | |
| virtual bool | inputs_clockwise () const |
| whether unconnected inputs on the DAG should be arranged clockwise or anticlockwise (default) | |
| virtual std::vector< int > | input_order () const |
| virtual int | inputArrows (int nodeInputs) const |
| bool | script_command (const char *command, bool py=true, bool eval=true) const |
| bool | script_expand (const char *str) const |
| HandlesMode | anyHandles (ViewerContext *ctx) |
| void | add_draw_handle (ViewerContext *) |
| virtual void | draw_handle (ViewerContext *) |
| virtual void | add_input_handle (int input, ViewerContext *) |
| void | add_op_handle (ViewerContext *ctx) |
| void | add_knob_handle (Knob *, ViewerContext *) |
| virtual int | getViewableModes () const |
| virtual int | optional_input () const |
| int | inputs () const |
| int | node_inputs () const |
| Op * | node_input (int, GenerateType=OUTPUT_OP) const |
| Op * | node_input (int, GenerateType, const DD::Image::OutputContext *outputContext) const |
| Op * | input_op (int n=0) const |
| virtual void | inputs (int n) |
| Op * | input (int) const |
| int | inputNumber (int input, int offset) const |
| Op * | input (int input, int offset) const |
| Op * | input0 () const |
| return the primary input More... | |
| Op * | input1 () const |
| return the second input, if it exists More... | |
| const std::vector< Op * > & | getInputs () const |
| const std::vector< Op * > & | getChildren () const |
| virtual void | set_input (int i, Op *op, int input, int offset) |
| void | set_input0 (Op *op) |
| void | set_input (int i, Op *op) |
| void | set_input (int i, Op &op) |
| void | set_input (int input, int offset, Op *op) |
| const OutputContext & | outputContext () const |
| virtual void | append (Hash &) |
| virtual float | uses_input (int) const |
| virtual void | build_splits () |
| virtual int | split_input (int) const |
| const Hash & | hash () const |
| virtual bool | frameTransformImplemented () const |
| virtual bool | frameTransformDownstream (const OutputContext &context, unsigned int input, float inFrame, float &outFrame) const |
| virtual bool | frameTransformUpstream (const OutputContext &context, unsigned int input, float outFrame, float &inFrame) const |
| virtual DopeItemFlags::Mask | getDopeItemFlags () const |
| virtual bool | shouldHideInDopeSheet (Knob *knob) const |
| virtual DD::Image::Knob * | getDopeItemKnob () const |
| virtual ViewSet | viewsProduced () const |
| virtual ViewSet | viewsWantOn (int i) const |
| virtual ViewSet | splitForViews () const |
| bool | requested () const |
| void | setRequested () |
| void | forgetRequestShallow () |
| void | forget_request () |
| void | forget_request (std::set< Op * > &forgotten) |
| DD::Image::Hash | curveHash () const |
| bool | opCurrent () const |
| virtual const char * | input_label (int, char *) const |
| virtual std::string | input_longlabel (int) const |
| void | node_redraw () |
| void | print_name (std::ostream &o) const |
| NodeContext | nodeContext () const |
| std::string | node_name () const |
| Returns the same string as printed by print_name(ostream). | |
| void | invalidateSameHash () |
| bool | invalidate () |
| bool | invalidate (const Hash &hash) |
| bool | update (const Box *=nullptr) |
| void | asapUpdate () |
| void | asapUpdate (const Box &box, int direction=0) |
| void | validate (bool for_real=true) |
| virtual void | force_validate (bool for_real=true) |
| void | update_handles () const |
| bool | valid () const |
| Returns true if it has been validated - including if there was an error. More... | |
| bool | real_valid () const |
| Returns true if it has been real-validated - including if there was an error. More... | |
| bool | inErrorState () const |
| bool | inInvalidState () const |
| bool | opened () const |
| void | open () |
| void | unopen () |
| bool | running () const |
| void | running (bool v) |
| bool | not_closed () const |
| void | close () |
| void | callCloseAfter (double seconds) |
| void | copyState (Op *input) |
| bool | cached () const |
| void | cached (bool b) |
| virtual bool | inUse () const |
| virtual Executable * | executable () |
| void | setKnobsToContext (const OutputContext &, bool force=false) |
| void | gotoContext (const OutputContext &, bool update) |
| void | progressFraction (double fraction, StatusFlags flags=StatusNone) |
| void | progressFraction (int a, int b, StatusFlags flags=StatusNone) |
| void | progressMessage (const char *fmt,...) |
| void | progressModalMessage (const char *fmt,...) |
| void | progressDismiss () |
| int | slowness () const |
| void | slowness (int newval) |
| virtual bool | firstEngineRendersWholeRequest () const |
| virtual bool | updateUI (const OutputContext &context) |
| const Format & | input_format () const |
| const OutputContext & | uiContext () const |
| void | error (const char *fmt,...) |
| void | warning (const char *fmt,...) |
| void | critical (const char *fmt,...) |
| void | debug (const char *fmt,...) |
| void | abort () const |
| Abort all trees the op is in. | |
| bool | aborted () const |
| True if one of the trees the op is in was aborted; ops should check this while processing and return quickly when true. | |
| void | cancel () const |
| Cancel all trees the op is in. Make sure you also call abort() to stop processing. | |
| bool | cancelled () const |
| True if one of the trees the op is in was cancelled (by user interaction) | |
| bool | addToTree (OpTree *lpTree) |
| Returns true if the op was added to the tree, or false if its reference count increased. | |
| bool | removeFromTree (OpTree *lpTree) |
| Returns false if the op was removed from the tree, or true if its reference count decreased. | |
| bool | isInTree (OpTree *lpTree) const |
| Checks if an op is in a particular tree, for debugging purposes. | |
| bool | isInAnyTree () const |
| Checks if an op is in any tree at all. | |
| OpTreeHandler * | getTreeHandler () const |
| Returns the treeHandler for a given Op. | |
| bool | hasError () const |
| bool | opOrChildHasError () const |
| const Op * | getErroredOp () const |
| void | setPopUpScheme (PopUpScheme lScheme) |
| PopUpScheme | getPopUpScheme () const |
| bool | arePopUpsEnabled () |
| Returns whether a pop-up should be enabled for the next message, modifying internal data when necessary. | |
| OpMessageHandler & | getMsgHandler () |
| const OpMessageHandler & | getMsgHandler () const |
| std::string | getDebugInfo () const |
| Returns a string of debug information about the op. For internal use. | |
| std::string | getDetailedDebugInfo () const |
| bool | tryValidate (bool for_real=true) |
| virtual Iop * | iop () |
| Cast to an Iop. This is much cheaper and safer than using dynamic_cast. | |
| virtual const Iop * | iop () const |
| virtual GeoOp * | geoOp () |
| Cast to a GeoOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const GeoOp * | geoOp () const |
| virtual ParticleOp * | particleOp () |
| Cast to a ParticleOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const ParticleOp * | particleOp () const |
| virtual DeepOnlyOp * | deepOnlyOp () |
| Cast to a DeepOnlyOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const DeepOnlyOp * | deepOnlyOp () const |
| virtual AxisOp * | axisOp () |
| Cast to an AxisOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const AxisOp * | axisOp () const |
| virtual CameraOp * | cameraOp () |
| Cast to an CameraOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const CameraOp * | cameraOp () const |
| virtual LightOp * | lightOp () |
| Cast to an LightOp. This is much cheaper and safer than using dynamic_cast. | |
| virtual const LightOp * | lightOp () const |
| virtual std::string | getLibraryName () const |
| Return a label and version string to display library version info for the Node. | |
| virtual VersionInfo | getLibraryVersion () const |
| virtual OpHints | opHints () const |
| Return hints to control when and how this op will be evaluated by the top-down system. | |
| const std::string | libraryDisplayName () const |
| virtual const char * | displayName () const |
| virtual std::string | docsPath () const |
| virtual bool | onAction (const ViewerContext *c, const DD::Image::Flags f, void *d) |
| Op * | get (const Description *description) |
Static Public Member Functions | |
| static GeomOpEngine * | engineBuilder (Op *parent) |
Static Public Member Functions inherited from DD::Image::GeomOp | |
| static usg::StageRef | getStage (const usg::ArgSet &request_args, GeomOp *geop0, GeomOp *geop1=nullptr, const fdk::TimeValueSet *addl_process_times=nullptr) |
| static usg::StageRef | getStage (const usg::ArgSet &request_args, const GeomOpSet &geops, const fdk::TimeValueSet *addl_process_times=nullptr) |
| Same as getStage(GeomOpSet) but for a set of GeomOps. | |
Static Public Member Functions inherited from DD::Image::Op | |
| static int | treeVersion () |
| static bool | nukeBusy () |
| is nuke processing something on a parallel thread? | |
| static Op * | create (Node *node, const char *name, Op *p_op) |
| static Op * | create (const char *name, Op *p_op) |
| static void | resetTimers () |
| reset all the performance timers | |
| static void | setTimingEnabled (bool enabled) |
| turn performance timing on or off | |
| static bool | isTimingEnabled () |
| return whether performance timing is on or not | |
| static const char * | script_result (bool py=false) |
| static void | script_unlock () |
| static Op * | retrieveOp (const char *node_path, GenerateType generate_op_type, const OutputContext *generate_op_context=nullptr) |
| static Op * | retrieveOp (const char *node_path, const Hash &op_hash, int tree_version) |
| static void | all_forget_request () |
| static void | new_request_pass () |
| static double | callPendingClose (double seconds) |
| static void | clearPendingClose () |
| static Op * | error_op () |
| static const char * | error_message () |
| static void | clearAbortAndError () |
| To be removed. | |
| static void | SetDefaultPopUpEnable (bool lEnable) |
| This is used by Nuke to indicate when ops using the default pop-up scheme should show pop-ups. Not recommended for customisation. | |
| static std::string | getVersionInfoStr (const VersionInfo &versionInfo) |
| Helper function to convert a VersionInfo tuple into a string. | |
| static const Description * | find_description (const char *name, const Op *op_) |
| static int | message_f (char t, const char *,...) |
| static int | message_vf (char t, const char *, va_list) |
| static void | add_timeout (float t, TimeoutHandler, void *v=nullptr) |
| static void | repeat_timeout (float t, TimeoutHandler, void *=nullptr) |
| static bool | has_timeout (TimeoutHandler, void *=nullptr) |
| static void | remove_timeout (TimeoutHandler, void *=nullptr) |
Additional Inherited Members | |
Public Types inherited from DD::Image::Op | |
| enum | HandlesMode { eNoHandles, eHandlesUncooked, eHandlesCooked, eHandlesMax } |
| enum | PrevalidateResult { eFinished, eCancelled, eAbandoned } |
| This is a tribool return value. Do not extend. | |
| enum | HandleType { eNone, eMouseLeftClick, eMouseRightClick, eMouseMove, eMouseDrag, eMouseRelease, eSelectionChanged, eSelectionChangeFinished, eHandleDragTranslate, eHandleDragRotate, eHandleDragScale, eHandleDragPivot, eAllHandles } |
| enum | ViewableModes { eViewableMode2D, eViewableMode3D, eViewableMode3D_2DReference } |
| enum | GenerateType { OUTPUT_OP, ANY_CONTEXT, INPUT_OP, INPUT_OP_PEEK, EXECUTABLE, EXECUTABLE_SKIP, EXECUTABLE_INPUT, UICONTEXT_ONLY } |
| enum | NodeContext { eNodeGraph, eTimeline, eOpGraph } |
| enum | StatusFlags { StatusNone, StatusModal, StatusUseCallback } |
| enum | PopUpScheme { ePU_Never, ePU_Done, ePU_Once, ePU_Default, ePU_Always } |
| Pop-up schemes determine when pop-up messages are displayed for op errors. More... | |
| enum | VersionComponents { eMajor, eMinor, ePoint, eRevision } |
| Enum to help get the desired version component from the VersionInfo tuple. | |
| typedef std::pair< int, DD::Image::Op * > | Output |
| Combination of input number and pointer to Op. | |
| typedef std::set< Output > | OutputSet |
| Set of all outputs from this Op. | |
| typedef std::map< Hash, std::vector< unsigned int > > | ItemSelectionList |
| typedef bool( | EventCallback) (Op *op, EventContext eventCtx) |
| using | VersionInfo = std::tuple< int, int, int, int > |
| Contains version components with each index defined by the VersionComponents enum. | |
Public Attributes inherited from DD::Image::Op | |
| const MetaData::Bundle * | metaCache |
| Hash | metaCacheHash |
Static Public Attributes inherited from DD::Image::Op | |
| static unsigned | current_request_pass |
| static void(* | node_redraw_cb )(const Op *) |
| static void(* | print_name_cb )(std::ostream &, const Op *) |
| static void(* | status_callback )(const Op *, float, float, const char *, StatusFlags) |
| static const int | kInvalidVersion |
| static const VersionInfo | kUnsetVersion |
Protected Member Functions inherited from DD::Image::GeomOp | |
| GeomOp (Node *node, GeomOpEngine::Builder engineBuilder) | |
| GeomOp (Node *) | |
| Ctor for MultiTypeNode support only! Do not implement for Engine-using subclasses. | |
| void | setOutputContext (const OutputContext &context) override |
| Called by Nuke immediately AFTER Op::knobs(). | |
| int | knob_changed (Knob *k) override |
| virtual void | appendGeomState (DD::Image::Hash &op_hash) |
| void | _validate (bool for_real) override |
| virtual void | updateGeneralInfo () |
| Default implemenation copies the GeneralInfo from input0. | |
| virtual fdk::Mat4d | handlesParentTransform (DD::Image::ViewerContext *ctx) |
Protected Member Functions inherited from DD::Image::Op | |
| Op (Node *node) | |
| The constructor is protected so only subclasses can create the base class. | |
| virtual void | _knobStorePrep (const OutputContext &storeContext) |
| The subclass-specific portion of knobStorePrep(). See that method for more info. | |
| virtual void | _knobStorePost (const OutputContext &storeContext, Hash &hash) |
| The subclass-specific portion of knobStorePost(). See that method for more info. | |
| virtual void | _invalidate () |
| virtual void | _open () |
| virtual void | _close () |
| Op * | create (Node *node, const char *name) |
| Op * | create (const char *name) |
| HandlesMode | anyInputHandles (ViewerContext *) |
| return if any of the inputs (recursively) wish to draw handles More... | |
| HandlesMode | anyKnobHandles (ViewerContext *) |
| return if any of the knobs on this node wish to draw handles More... | |
| void | build_input_handles (ViewerContext *) |
| void | build_knob_handles (ViewerContext *) |
| void | disallowNoTrees () |
| Call this to tell the op that it should always have op trees for normal behaviour (for internal use) | |
| virtual HandlesMode | doAnyHandles (ViewerContext *ctx) |
| virtual PrevalidateResult | doPreValidate (ViewerContext *ctx=nullptr, PreValidateContext *=nullptr) |
Static Protected Member Functions inherited from DD::Image::GeomOp | |
| template<class Engine > | |
| static GeomOpEngine::Builder | BuildEngine () |
| A helper function you can use as the engineBuilder argument to the GeomOp constructor to reduce clutter. | |
Protected Attributes inherited from DD::Image::GeomOp | |
| GeomOpEngine * | _engineNode |
| GeomEngine graph processor shared between all Op instances of this GeomOp subclass. | |
| GeneralInfo | info_ |
| Global intended frame range (must remain 'info_' for MultiTypeNode support!) | |
Protected Attributes inherited from DD::Image::Op | |
| bool | _haveHash |
| whether the _hash actually has been set by a call to invalidate(Hash) ever. | |
| bool | _varyingOutputHash |
| whether the hash value will animate over time | |
| Hash | _editState |
| Op's current edit state, usually the combination of input & knob edit states. | |
This is a stub GeomOp, intended to be the dead-end in a geometry graph.
| ©2024 The Foundry Visionmongers, Ltd. All Rights Reserved. |