HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HOM_shelves.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  * COMMENTS:
7  */
8 
9 #ifndef __HOM_shelves_h__
10 #define __HOM_shelves_h__
11 
12 #include "HOM_API.h"
13 #include "HOM_Defines.h"
14 #include "HOM_Errors.h"
15 #include "HOM_EnumValue.h"
16 #include "HOM_EnumModules.h"
17 #include "HOM_ElemPtr.h"
18 #include <map>
19 #include <vector>
20 
22 class HOM_ShelfSet;
23 class HOM_Shelf;
24 class HOM_Tool;
25 class HOM_HDADefinition;
26 
27 SWIGOUT(%rename(shelves) HOM_shelves;)
28 
30 {
31 public:
32  virtual ~HOM_shelves()
33  {}
34 
35  virtual std::string __repr__() = 0;
36 
37  virtual std::map<std::string, HOM_ElemPtr<HOM_ShelfSet> > shelfSets() = 0;
38 
39  virtual std::map<std::string, HOM_ElemPtr<HOM_Shelf> > shelves() = 0;
40 
41  virtual std::map<std::string, HOM_ElemPtr<HOM_Tool> > tools() = 0;
42 
43  SWIGOUT(%newobject tool;)
44  virtual HOM_Tool *tool(const char *tool_name) = 0;
45 
46  virtual bool isToolDeleted(const char *tool_name) = 0;
47 
48  virtual void loadFile(const char *file_path) = 0;
49  virtual void reloadShelfFiles() = 0;
50 
51  virtual HOM_Tool *runningTool() = 0;
52 
53  virtual void beginChangeBlock() = 0;
54  virtual void endChangeBlock() = 0;
55 
56  SWIGOUT(%newobject newShelfSet;)
57  SWIGOUT(%kwargs newShelfSet;)
58  virtual HOM_ShelfSet *newShelfSet(const char *file_path = NULL,
59  const char *name = NULL,
60  const char *label = NULL) = 0;
61 
62  SWIGOUT(%newobject newShelf;)
63  SWIGOUT(%kwargs newShelf;)
64  virtual HOM_Shelf *newShelf(const char *file_path = NULL,
65  const char *name = NULL,
66  const char *label = NULL) = 0;
67 
68  SWIGOUT(%newobject newTool;)
69  SWIGOUT(%kwargs newTool;)
70  virtual HOM_Tool *newTool(const char *file_path = NULL,
71  const char *name = NULL,
72  const char *label = NULL,
73  const char *script = NULL,
74  HOM_EnumValue &language = HOM_scriptLanguage::Python,
75  const char *icon = NULL,
76  const char *help = NULL,
77  const char *help_url = NULL,
78  const std::vector<HOM_NodeTypeCategory *> &network_categories =
79  std::vector<HOM_NodeTypeCategory *>(),
80  const std::vector<HOM_NodeTypeCategory*> &viewer_categories =
81  std::vector<HOM_NodeTypeCategory *>(),
82  const std::vector<HOM_NodeTypeCategory*> &cop_viewer_categories
83  = std::vector<HOM_NodeTypeCategory *>(),
84  const char *network_op_type = NULL,
85  const char *viewer_op_type = NULL,
86  const std::vector<std::string> &locations =
87  std::vector<std::string>(),
88  const std::vector<std::string> &keywords =
89  std::vector<std::string>(),
90  HOM_HDADefinition *hda_definition = NULL) = 0;
91 
92  SWIGOUT(%newobject _newAssetTool;)
93  SWIGOUT(%kwargs _newAssetTool;)
94  virtual HOM_Tool *_newAssetTool(const char *name = NULL,
95  const char *label = NULL,
96  const char *icon = NULL,
97  const char *help = NULL,
98  const char *help_url = NULL) = 0;
99 
100  virtual std::string defaultFilePath() = 0;
101 
102  virtual std::string defaultToolName(const char *nodetype_category_name,
103  const char *nodetype_name) = 0;
104 };
105 
106 #endif
107 
GLuint GLsizei const GLchar * label
Definition: glcorearb.h:2545
virtual std::string icon()=0
GLsizei const GLchar *const * string
Definition: glcorearb.h:814
#define SWIGOUT(x)
Definition: HOM_Defines.h:24
string __repr__(VtArray< T > const &self)
Definition: wrapArray.h:349
std::string help(const App *app, const Error &e)
Printout the full help string on error (if this fn is set, the old default for CLI11) ...
Definition: CLI11.h:8978
virtual std::map< std::string, HOM_ElemPtr< HOM_Tool > > tools()=0
virtual ~HOM_shelves()
Definition: HOM_shelves.h:32
#define HOM_API
Definition: HOM_API.h:13
GLuint const GLchar * name
Definition: glcorearb.h:786
OIIO_UTIL_API bool rename(string_view from, string_view to, std::string &err)