HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DD_Defines.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: DD_Define.h
7  *
8  * COMMENTS:
9  */
10 
11 #ifndef __DD_Define__
12 #define __DD_Define__
13 
14 enum DD_State {
19 };
20 
21 //
22 // Some common drag-n-drop attributes
23 // which are supplied by the sender
24 //
25 // Strings are chose over enumerated types
26 // so custom drag-n-drop objects will have
27 // a smaller chance of name collision.
28 //
29 
30 #define DD_MIMETYPE_NAMESPACE "application/sidefx-houdini-"
31 
32 #define DD_DATA_TEXT "text/plain"
33 #define DD_LABEL_TEXT "Text"
34 #define DD_DATA_JSON "application/json"
35 
36 // the data parameter is a (void *)int to index between multiple choices
37 #define DD_DATA_PARM_PATH DD_MIMETYPE_NAMESPACE "parm.path"
38 #define DD_LABEL_PARM_PATH "Parameter Path"
39 
40 #define DD_DATA_CHAN_PATH DD_MIMETYPE_NAMESPACE "channel.path"
41 #define DD_DATA_FLAG_PATH DD_MIMETYPE_NAMESPACE "node.flag.path"
42 
43 // the node and track are separated by a space since track names may
44 // have slashes in them
45 #define DD_DATA_TRACK_PATH DD_MIMETYPE_NAMESPACE "chop.track.path"
46 
47 // the data parameter is a (void *)int to index between multiple choices
48 #define DD_DATA_OP_PATH DD_MIMETYPE_NAMESPACE "node.path"
49 #define DD_LABEL_OP_PATH "Node Path"
50 
51 #define DD_DATA_ITEM_PATH DD_MIMETYPE_NAMESPACE "item.path"
52 #define DD_LABEL_ITEM_PATH "Network Item Path"
53 #define DD_DATA_PERS_HANDLE_PATH DD_MIMETYPE_NAMESPACE \
54  "persistent.handle.path"
55 
56 #define DD_DATA_APEX_NODE_ID DD_MIMETYPE_NAMESPACE "apex.node.id"
57 #define DD_LABEL_APEX_NODE_ID "APEX Node ID"
58 
59 // returns the name of a take
60 #define DD_DATA_TAKE_NAME DD_MIMETYPE_NAMESPACE "take.name"
61 
62 // returns a pointer to an OP_GalleryEntry or the gallery entry name
63 #define DD_DATA_GALLERY_ENTRY DD_MIMETYPE_NAMESPACE "gallery.entry"
64 #define DD_DATA_GALLERY_ENTRY_NAME DD_MIMETYPE_NAMESPACE \
65  "gallery.entry.name"
66 #define DD_LABEL_GALLERY_ENTRY_NAME "Gallery Entry"
67 
68 // returns a pointer to SHLF_Tool or the shelf tool name
69 #define DD_DATA_SHELF_TOOL DD_MIMETYPE_NAMESPACE "shelf.tool"
70 #define DD_DATA_SHELF_TOOL_NAME DD_MIMETYPE_NAMESPACE "shelf.tool.name"
71 #define DD_LABEL_SHELF_TOOL_NAME "Shelf Tool"
72 
73 // returns an entry in the asset gallery
74 #define DD_DATA_ASSET_GALLERY_ENTRY DD_MIMETYPE_NAMESPACE "asset.gallery.entry"
75 #define DD_LABEL_ASSET_GALLERY_ENTRY "Asset Gallery Entry"
76 
77 // Returns the name of the node type
78 #define DD_DATA_ASSET_GUID DD_MIMETYPE_NAMESPACE "asset.guid"
79 #define DD_LABEL_ASSET_GUID "Asset Guid"
80 #define DD_DATA_ASSETTOOL_NAME DD_MIMETYPE_NAMESPACE \
81  "orbolt.node.type.name"
82 #define DD_LABEL_ASSETTOOL_NAME "Asset Tool"
83 #define DD_DATA_FOLDER_GUID DD_MIMETYPE_NAMESPACE "folder.guid"
84 #define DD_LABEL_FOLDER_GUID "Folder Guid"
85 
86 // returns a pointer to OPUI_ToolbarItem
87 #define DD_DATA_SHELF_TOOL_BUTTON DD_MIMETYPE_NAMESPACE \
88  "shelf.tool.button"
89 
90 // returns a pointer to the OPUI_Toolbar or the shelf name
91 #define DD_DATA_SHELF_TOOLBAR DD_MIMETYPE_NAMESPACE \
92  "shelf.toolbar"
93 #define DD_DATA_SHELF_TOOLBAR_NAME DD_MIMETYPE_NAMESPACE "shelf.name"
94 #define DD_LABEL_SHELF_TOOLBAR_NAME "Shelf"
95 
96 // returns a pointer to FUSE_DesktopNode or the name of the pane tab
97 #define DD_DATA_DESKTOP_NODE DD_MIMETYPE_NAMESPACE "desktop.node"
98 #define DD_DATA_DESKTOP_NODE_NAME DD_MIMETYPE_NAMESPACE "pane.tab.name"
99 #define DD_LABEL_DESKTOP_NODE_NAME "Pane Tab"
100 
101 #define DD_DATA_DOPDATA_PYTHON DD_MIMETYPE_NAMESPACE "dop.data.python"
102 #define DD_LABEL_DOPDATA_PYTHON "Dop Data as Python expression"
103 #define DD_DATA_DOPDATA_HSCRIPT_FLOAT DD_MIMETYPE_NAMESPACE \
104  "dop.data.hscript.float"
105 #define DD_LABEL_DOPDATA_HSCRIPT_FLOAT "Dop Data as Hscript float"
106 #define DD_DATA_DOPDATA_HSCRIPT_STRING DD_MIMETYPE_NAMESPACE \
107  "dop.data.hscript.string"
108 #define DD_LABEL_DOPDATA_HSCRIPT_STRING "Dop Data as Hscript string"
109 
110 // Returns a path to a primitive, which is essentially the SOP path
111 // ('/obj/foo/mysop') plus the primitive path name (can be partial) separated
112 // by a colon (e.g: '/obj/foo/mysop:/alembic/foo/prim')
113 #define DD_DATA_PRIM_PATH DD_MIMETYPE_NAMESPACE "primitive.path"
114 #define DD_LABEL_PRIM_PATH "Primitive Path"
115 
116 // Visualizder
117 #define DD_DATA_VISUALIZER DD_MIMETYPE_NAMESPACE "visualizer"
118 #define DD_LABEL_VISUALIZER "Visualizer"
119 
120 // USD Primitives and collections
121 #define DD_DATA_USDPRIMPATH DD_MIMETYPE_NAMESPACE \
122  "usd.primitive.path"
123 #define DD_DATA_USDPRIMPYTHON DD_MIMETYPE_NAMESPACE \
124  "usd.primitive.python"
125 #define DD_LABEL_USDPRIMPYTHON "USD Primitive as Python expression"
126 #define DD_DATA_USDPROPERTYPATH DD_MIMETYPE_NAMESPACE \
127  "usd.property.path"
128 #define DD_DATA_USDPROPERTYPYTHON DD_MIMETYPE_NAMESPACE \
129  "usd.property.python"
130 #define DD_LABEL_USDPROPERTYPYTHON "USD Property as Python expression"
131 
132 //
133 // Some attributes which receivers can derive given the above
134 //
135 
136 //
137 // parameter
138 //
139 
140 #define DD_DATA_CHAN_VALUE DD_MIMETYPE_NAMESPACE "chan.value"
141 #define DD_LABEL_CHAN_VALUE "Current Channel Value"
142 
143 
144 #define DD_DATA_CHAN_EXPR DD_MIMETYPE_NAMESPACE "chan.express"
145 #define DD_LABEL_CHAN_EXPR "Channel Expression"
146 
147 #define DD_DATA_CHAN_REF_ABS DD_MIMETYPE_NAMESPACE "chan.ref.abs"
148 #define DD_LABEL_CHAN_REF_ABS "Absolute Channel Reference"
149 
150 #define DD_DATA_CHAN_REF_REL DD_MIMETYPE_NAMESPACE "chan.ref.rel"
151 #define DD_LABEL_CHAN_REF_REL "Relative Channel Reference"
152 
153 #define DD_DATA_COPY_CHANNEL DD_MIMETYPE_NAMESPACE "copy.channel"
154 #define DD_LABEL_COPY_CHANNEL "Copy Channel"
155 
156 #define DD_DATA_CHAN_GROUPS DD_MIMETYPE_NAMESPACE "chgroups"
157 #define DD_LABEL_CHAN_GROUPS "Channel Groups"
158 
159 #define DD_DATA_SI_TREENODES DD_MIMETYPE_NAMESPACE "si.tree.nodes"
160 
161 //
162 // chop
163 //
164 //
165 
166 #define DD_DATA_TRACK_VALUE DD_MIMETYPE_NAMESPACE "chop.value"
167 #define DD_LABEL_TRACK_VALUE "Current CHOP Value"
168 
169 #define DD_DATA_TRACK_REF_ABS DD_MIMETYPE_NAMESPACE "chop.ref.abs"
170 #define DD_LABEL_TRACK_REF_ABS "CHOP Reference"
171 
172 #define DD_DATA_TRACK_REF_REL DD_MIMETYPE_NAMESPACE "chop.ref.rel"
173 #define DD_LABEL_TRACK_REF_REL "Relative CHOP Reference"
174 
175 #define DD_DATA_TRACK_EXPORT DD_MIMETYPE_NAMESPACE "chop.export"
176 #define DD_LABEL_TRACK_EXPORT "Export CHOP"
177 
178 //
179 // top
180 //
181 //
182 
183 #define DD_DATA_WORKITEM_ID DD_MIMETYPE_NAMESPACE "workitem.id"
184 #define DD_LABEL_WORKITEM_ID "Work Item ID"
185 
186 #endif
187 
188 
DD_State
Definition: DD_Defines.h:14