33 AllocationFunction allocator);
40 AllocationFunction myAlloc;
46 static int getFactoryIndex(
int target_node_id);
89 return myStateChanged;
105 int myCurrentType = -1;
108 bool myStateChanged =
false;
virtual IMX_LayerPtr getOutputLayer(const UT_StringHolder &name) const =0
Returns a particular output by name.
GLuint GLsizei const GLchar * message
void setVersion(int version) override
virtual void setUpdateCallback(void(*cb)(void *), void *data)=0
Sets a callback that gets called when slapcomp changes.
bool hasStateChanged() const override
virtual COP_CableStructure getOutputStructure() const =0
Should return the outputs that this slapcomp produces.
COP_SlapcompManager & operator=(const COP_SlapcompManager &)=delete
virtual bool isEnabled() const =0
Returns the on-off state of slapcomp.
ImageBuf OIIO_API checker(int width, int height, int depth, cspan< float > color1, cspan< float > color2, int xoffset, int yoffset, int zoffset, ROI roi, int nthreads=0)
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects.
int getVersion() const override
GLuint const GLchar * name
virtual void reportWarning(const char *message)=0
Reports a warning (through the callback if possible).
Abstract interface for managing slapcomp.
UT_UniquePtr< COP_SlapcompManager > myManager
virtual void reportError(const char *message)=0
Reports an error (through the callback if possible).
GT_API const UT_StringHolder version
virtual bool isSlapcompAOV(const UT_StringHolder &name) const =0
virtual bool hasErrors() const =0
Returns true if the last run of slapcomp had errors.
bool(*)(const OP_Node *) CheckFunction
Should return true for nodes that are supported by the slapcomp type.
virtual void setWarningCallback(void(*cb)(void *, const char *), void *data)=0
Sets a callback that gets called when reporting slapcomp warnings.
virtual void setErrorCallback(void(*cb)(void *, const char *), void *data)=0
Sets a callback that gets called when reporting slapcomp errors.
virtual void enable(int target_node_id, const OP_Context &)=0
Enable slapcomp with the given node.
virtual bool buildForInputs(const COP_CableStructure &inputs, const OP_Context &context)=0
Prepares for applying slapcomp for inputs of the given types.
virtual void disable()=0
Disable slapcomp.
virtual int getTargetNode() const =0
Returns the id of the node slapcomp was built from.
void enable(OP_Node *const node, const OP_Context &ctx)
virtual void setRunCallback(void(*cb)(void *), void *data)=0
Sets a callback that gets called when slapcomp is run.
UT_SharedPtr< IMX_Layer > IMX_LayerPtr
virtual void runSlapcompImpl(COP_SlapcompInputFetcher &input_fetcher, const OP_Context &context)=0
Should run slapcomp with the specified inputs and context.