HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SHOP_Operator.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: SHOP_Operator.h ( SHOP Library, C++)
7  *
8  * COMMENTS: Special class which has additional knowledge about the operator
9  * being described.
10  */
11 
12 #ifndef __SHOP_Operator__
13 #define __SHOP_Operator__
14 
15 #include "SHOP_API.h"
16 #include <OP/OP_Operator.h>
17 #include "SHOP_NodeTypes.h"
18 #include "SHOP_OperatorInfo.h"
19 
21 public:
22  SHOP_Operator(const char *name,
23  const char *english,
24  OP_Constructor construct,
25  PRM_Template *templates,
26  const char *child_table_name,
27  unsigned min_sources,
28  unsigned max_sources = 9999,
29  CH_LocalVariable *variables = 0,
30  unsigned flags = 0,
31  int auto_add_clerk=SHOP_AUTOADD_ANY);
32 
33  SHOP_Operator(const char *name,
34  const char *english,
35  OP_Constructor construct,
36  OP_TemplatePair *template_pair,
37  const char *child_table_name,
38  unsigned min_sources,
39  unsigned max_sources = 9999,
40  OP_VariablePair *variable_pair = 0,
41  unsigned flags = 0,
42  int auto_add_clerk=SHOP_AUTOADD_ANY);
43 
44  ~SHOP_Operator() override;
45 
46  void useShaderIconName();
47 
48  int compareOperator(const OP_Operator *other,
49  int method) const override;
50 
51  unsigned maxOutputs() override;
52  bool wantsInputEditor() const override;
53 
54  // This method will return a pointer to the SHOP_OperatorInfo class
56  { return &myOperatorInfo; }
57  const OP_SpecificData *getOpSpecificData() const override
58  { return &myOperatorInfo; }
59 
60 private:
61  SHOP_OperatorInfo myOperatorInfo;
62 };
63 
64 #endif
GLbitfield flags
Definition: glcorearb.h:1596
std::function< OP_Ptr(OP_Network *, const char *, OP_Operator *)> OP_Constructor
Definition: OP_Operator.h:107
OP_SpecificData * getOpSpecificData() override
Definition: SHOP_Operator.h:55
virtual int compareOperator(const OP_Operator *other, int method) const
#define SHOP_API
Definition: SHOP_API.h:10
GLuint const GLchar * name
Definition: glcorearb.h:786
const OP_SpecificData * getOpSpecificData() const override
Definition: SHOP_Operator.h:57
virtual unsigned maxOutputs()
Definition: OP_Operator.h:417
virtual bool wantsInputEditor() const