1 /*
2     Copyright (c) 2008-2009 NetAllied Systems GmbH
3 
4     This file is part of MayaDataModel.
5 
6     Licensed under the MIT Open Source License,
7     for details please see LICENSE file or the website
8     http://www.opensource.org/licenses/mit-license.php
9 */
10 #ifndef __MayaDM_CONNECTABLES_H__
11 #define __MayaDM_CONNECTABLES_H__
12 namespace MayaDM
13 {
14 enum ConnectableType
15 {
16 	CT_DOUBLE,
17 	CT_MATRIX,
18 	CT_TARGET,
19 	CT_DOUBLE3,
20 	CT_UNSIGNEDINT,
21 	CT_BOOL,
22 	CT_DIRECTION,
23 	CT_NURBSCURVE,
24 	CT_FLOAT,
25 	CT_NURBSSURFACE,
26 	CT_CHAR,
27 	CT_FLOAT3,
28 	CT_AXISANGLE,
29 	CT_FUNCTION,
30 	CT_MESSAGE,
31 	CT_DOUBLEARRAY,
32 	CT_SHORT,
33 	CT_STRING,
34 	CT_MENTALRAYCONTROLS,
35 	CT_GENERICTYPEDDATA,
36 	CT_INT,
37 	CT_SMAPWINDOW,
38 	CT_VECTORARRAY,
39 	CT_RESULT,
40 	CT_ADDR,
41 	CT_MESH,
42 	CT_INPUTTARGET,
43 	CT_INPUTTARGETGROUP,
44 	CT_INPUTTARGETITEM,
45 	CT_GEOMETRY,
46 	CT_POINTARRAY,
47 	CT_COMPONENTLIST,
48 	CT_NURBSSHELL,
49 	CT_DYNBRUSH,
50 	CT_LEAFCURL,
51 	CT_PETALCURL,
52 	CT_WIDTHSCALE,
53 	CT_LEAFWIDTHSCALE,
54 	CT_PETALWIDTHSCALE,
55 	CT_TWIGLENGTHSCALE,
56 	CT_ENVIRONMENT,
57 	CT_REFLECTIONROLLOFF,
58 	CT_FLOAT2,
59 	CT_GENERIC,
60 	CT_INCACHE,
61 	CT_CACHEDATA,
62 	CT_DOUBLE2,
63 	CT_POSTPROJECTION,
64 	CT_FILMROLLCONTROL,
65 	CT_CLIPEVALUATE,
66 	CT_CLIPEVALUATE_INMAP,
67 	CT_CLIPEVALUATE_OUTMAP,
68 	CT_CHARACTERMAPPING,
69 	CT_CLIPEVALLIST,
70 	CT_CLIPEVAL,
71 	CT_CLIPEVAL_INMAP,
72 	CT_CLIPEVAL_OUTMAP,
73 	CT_CHARACTERDATA,
74 	CT_INTARRAY,
75 	CT_BLENDLIST,
76 	CT_BLENDLIST_INMAP,
77 	CT_BLENDLIST_OUTMAP,
78 	CT_CLIPFUNCTION,
79 	CT_CLIPFUNCTION_INMAP,
80 	CT_CLIPFUNCTION_OUTMAP,
81 	CT_FLTMATRIX,
82 	CT_CLUSTERXFORMS,
83 	CT_CLUSTERTRANSFORMS,
84 	CT_UVSET,
85 	CT_COLORSET,
86 	CT_COLORSETPOINTS,
87 	CT_SUBDIVISIONSURFACE,
88 	CT_BOUNDINGBOX,
89 	CT_INSTOBJGROUPS,
90 	CT_OBJECTGROUPS,
91 	CT_DRAWOVERRIDE,
92 	CT_UNSIGNEDCHAR,
93 	CT_RENDERINFO,
94 	CT_RENDERLAYERINFO,
95 	CT_GHOSTCUSTOMSTEPS,
96 	CT_LIGHTDATA,
97 	CT_DRAWINFO,
98 	CT_INPUT,
99 	CT_NID,
100 	CT_CONNECTIONDENSITYRANGE,
101 	CT_STRENGTHDROPOFF,
102 	CT_RADIUSMAP,
103 	CT_RADIUSMAPUSAMPLES,
104 	CT_RADIUSMAPVSAMPLES,
105 	CT_POWERMAP,
106 	CT_POWERMAPUSAMPLES,
107 	CT_POWERMAPVSAMPLES,
108 	CT_INFLUENCEMAP,
109 	CT_INFLUENCEMAPUSAMPLES,
110 	CT_INFLUENCEMAPVSAMPLES,
111 	CT_STARTLENGTHMAP,
112 	CT_STARTLENGTHMAPUSAMPLES,
113 	CT_STARTLENGTHMAPVSAMPLES,
114 	CT_ENDLENGTHMAP,
115 	CT_ENDLENGTHMAPUSAMPLES,
116 	CT_ENDLENGTHMAPVSAMPLES,
117 	CT_THRESHOLDLENGTHMAP,
118 	CT_THRESHOLDLENGTHMAPUSAMPLES,
119 	CT_THRESHOLDLENGTHMAPVSAMPLES,
120 	CT_CURVERADIUSMAP,
121 	CT_CURVERADIUSMAPUSAMPLES,
122 	CT_CURVERADIUSMAPVSAMPLES,
123 	CT_CURVEPOWERMAP,
124 	CT_CURVEPOWERMAPUSAMPLES,
125 	CT_CURVEPOWERMAPVSAMPLES,
126 	CT_CURVEINFLUENCEMAP,
127 	CT_CURVEINFLUENCEMAPUSAMPLES,
128 	CT_CURVEINFLUENCEMAPVSAMPLES,
129 	CT_CURVESTARTLENGTHMAP,
130 	CT_CURVESTARTLENGTHMAPUSAMPLES,
131 	CT_CURVESTARTLENGTHMAPVSAMPLES,
132 	CT_CURVEENDLENGTHMAP,
133 	CT_CURVEENDLENGTHMAPUSAMPLES,
134 	CT_CURVEENDLENGTHMAPVSAMPLES,
135 	CT_CURVETHRESHOLDLENGTHMAP,
136 	CT_CURVETHRESHOLDLENGTHMAPUSAMPLES,
137 	CT_CURVETHRESHOLDLENGTHMAPVSAMPLES,
138 	CT_BASECOLORMAP,
139 	CT_BASECOLORMAPUSAMPLES,
140 	CT_BASECOLORMAPVSAMPLES,
141 	CT_TIPCOLORMAP,
142 	CT_TIPCOLORMAPUSAMPLES,
143 	CT_TIPCOLORMAPVSAMPLES,
144 	CT_BASEAMBIENTCOLORMAP,
145 	CT_BASEAMBIENTCOLORMAPUSAMPLES,
146 	CT_BASEAMBIENTCOLORMAPVSAMPLES,
147 	CT_TIPAMBIENTCOLORMAP,
148 	CT_TIPAMBIENTCOLORMAPUSAMPLES,
149 	CT_TIPAMBIENTCOLORMAPVSAMPLES,
150 	CT_SPECULARCOLORMAP,
151 	CT_SPECULARCOLORMAPUSAMPLES,
152 	CT_SPECULARCOLORMAPVSAMPLES,
153 	CT_LENGTHMAP,
154 	CT_LENGTHMAPUSAMPLES,
155 	CT_LENGTHMAPVSAMPLES,
156 	CT_SPECULARSHARPNESSMAP,
157 	CT_SPECULARSHARPNESSMAPUSAMPLES,
158 	CT_SPECULARSHARPNESSMAPVSAMPLES,
159 	CT_BALDNESSMAP,
160 	CT_BALDNESSMAPUSAMPLES,
161 	CT_BALDNESSMAPVSAMPLES,
162 	CT_BASEOPACITYMAP,
163 	CT_BASEOPACITYMAPUSAMPLES,
164 	CT_BASEOPACITYMAPVSAMPLES,
165 	CT_TIPOPACITYMAP,
166 	CT_TIPOPACITYMAPUSAMPLES,
167 	CT_TIPOPACITYMAPVSAMPLES,
168 	CT_BASEWIDTHMAP,
169 	CT_BASEWIDTHMAPUSAMPLES,
170 	CT_BASEWIDTHMAPVSAMPLES,
171 	CT_TIPWIDTHMAP,
172 	CT_TIPWIDTHMAPUSAMPLES,
173 	CT_TIPWIDTHMAPVSAMPLES,
174 	CT_SEGMENTSMAP,
175 	CT_SEGMENTSMAPUSAMPLES,
176 	CT_SEGMENTSMAPVSAMPLES,
177 	CT_BASECURLMAP,
178 	CT_BASECURLMAPUSAMPLES,
179 	CT_BASECURLMAPVSAMPLES,
180 	CT_TIPCURLMAP,
181 	CT_TIPCURLMAPUSAMPLES,
182 	CT_TIPCURLMAPVSAMPLES,
183 	CT_SCRAGGLEMAP,
184 	CT_SCRAGGLEMAPUSAMPLES,
185 	CT_SCRAGGLEMAPVSAMPLES,
186 	CT_SCRAGGLEFREQUENCYMAP,
187 	CT_SCRAGGLEFREQUENCYMAPUSAMPLES,
188 	CT_SCRAGGLEFREQUENCYMAPVSAMPLES,
189 	CT_SCRAGGLECORRELATIONMAP,
190 	CT_SCRAGGLECORRELATIONMAPUSAMPLES,
191 	CT_SCRAGGLECORRELATIONMAPVSAMPLES,
192 	CT_INCLINATIONMAP,
193 	CT_INCLINATIONMAPUSAMPLES,
194 	CT_INCLINATIONMAPVSAMPLES,
195 	CT_ROLLMAP,
196 	CT_ROLLMAPUSAMPLES,
197 	CT_ROLLMAPVSAMPLES,
198 	CT_POLARMAP,
199 	CT_POLARMAPUSAMPLES,
200 	CT_POLARMAPVSAMPLES,
201 	CT_ATTRACTIONMAP,
202 	CT_ATTRACTIONMAPUSAMPLES,
203 	CT_ATTRACTIONMAPVSAMPLES,
204 	CT_OFFSETMAP,
205 	CT_OFFSETMAPUSAMPLES,
206 	CT_OFFSETMAPVSAMPLES,
207 	CT_CLUMPINGMAP,
208 	CT_CLUMPINGMAPUSAMPLES,
209 	CT_CLUMPINGMAPVSAMPLES,
210 	CT_CLUMPINGFREQUENCYMAP,
211 	CT_CLUMPINGFREQUENCYMAPUSAMPLES,
212 	CT_CLUMPINGFREQUENCYMAPVSAMPLES,
213 	CT_CLUMPSHAPEMAP,
214 	CT_CLUMPSHAPEMAPUSAMPLES,
215 	CT_CLUMPSHAPEMAPVSAMPLES,
216 	CT_ATTRACTORS,
217 	CT_DEFORMEDLATTICE,
218 	CT_LATTICE,
219 	CT_BASELATTICE,
220 	CT_STUCACHELIST,
221 	CT_INPUTDATA,
222 	CT_GENERICARRAY,
223 	CT_FALLOFFCURVE,
224 	CT_FLUID,
225 	CT_RESOLUTION,
226 	CT_DIMENSIONS,
227 	CT_FIELDDATA,
228 	CT_FIELDLIST,
229 	CT_FIELDFUNCTION,
230 	CT_FIELDFUNCTION_INMAP,
231 	CT_FIELDFUNCTION_OUTMAP,
232 	CT_EMISSIONLIST,
233 	CT_EMISSIONFUNCTION,
234 	CT_EMISSIONFUNCTION_INMAP,
235 	CT_EMISSIONFUNCTION_OUTMAP,
236 	CT_SUBVOLUMECENTER,
237 	CT_SUBVOLUMESIZE,
238 	CT_COLOR,
239 	CT_OPACITY,
240 	CT_INCANDESCENCE,
241 	CT_COLLISIONDATA,
242 	CT_SWEPTGEOMETRY,
243 	CT_STIFFNESSSCALE,
244 	CT_CLUMPWIDTHSCALE,
245 	CT_ATTRACTIONSCALE,
246 	CT_HAIRCURVE,
247 	CT_FACEINDEX,
248 	CT_FACEFIRST,
249 	CT_FACESECOND,
250 	CT_IDMAPPING,
251 	CT_LONG3,
252 	CT_LONGARRAY,
253 	CT_COMPINSTOBJGROUPS,
254 	CT_COMPOBJECTGROUPS,
255 	CT_HAIRPIN,
256 	CT_CLUMPCURL,
257 	CT_CLUMPFLATNESS,
258 	CT_HAIRWIDTHSCALE,
259 	CT_HAIRCOLORSCALE,
260 	CT_DISPLACEMENTSCALE,
261 	CT_HAIRRENDERINFO,
262 	CT_COLORSCALE,
263 	CT_FLOORCONTACTS,
264 	CT_HANDSFLOORCONTACTSETUP,
265 	CT_CONTACTSPOSITION,
266 	CT_FEETFLOORCONTACTSETUP,
267 	CT_FEETCONTACTPOSITION,
268 	CT_FINGERSFLOORCONTACTSETUP,
269 	CT_TOESFLOORCONTACTSETUP,
270 	CT_SOLVING,
271 	CT_FINGERTIPSSIZES,
272 	CT_TOETIPSSIZES,
273 	CT_HEAD,
274 	CT_LEFTARM,
275 	CT_RIGHTARM,
276 	CT_CHEST,
277 	CT_HIPS,
278 	CT_LEFTLEG,
279 	CT_RIGHTLEG,
280 	CT_EXTRA,
281 	CT_STIFFNESS,
282 	CT_KILLPITCH,
283 	CT_ROLLEXTRACTION,
284 	CT_STRINGARRAY,
285 	CT_HYPERPOSITION,
286 	CT_SHORT2,
287 	CT_BOX,
288 	CT_SPHERE,
289 	CT_CHILDJOINTCLUSTERXFORMS,
290 	CT_NEXTJOINTCLUSTERXFORMS,
291 	CT_DISTANCELIST,
292 	CT_INPUTS,
293 	CT_LINK,
294 	CT_IGNORE,
295 	CT_SHADOWLINK,
296 	CT_SHADOWIGNORE,
297 	CT_DROPOFF,
298 	CT_LINEMODIFIER,
299 	CT_MIFILESIZE,
300 	CT_COLORPERVERTEX,
301 	CT_VERTEXCOLOR,
302 	CT_VERTEXFACECOLOR,
303 	CT_NURBSPATCHUVIDS,
304 	CT_LONG2,
305 	CT_SELECTIONLIST,
306 	CT_WAVEHEIGHT,
307 	CT_WAVETURBULENCE,
308 	CT_WAVEPEAKING,
309 	CT_EMITTERDATA,
310 	CT_INSTANCEDATA,
311 	CT_INPUTSURFACE,
312 	CT_CURVATUREWIDTH,
313 	CT_TAPERCURVE,
314 	CT_REDSCALE,
315 	CT_GREENSCALE,
316 	CT_BLUESCALE,
317 	CT_ALPHASCALE,
318 	CT_INTENSITYSCALE,
319 	CT_PROFILECURVE,
320 	CT_CACHEDUVS,
321 	CT_NEWUV,
322 	CT_INQUAD,
323 	CT_DEFAULT,
324 	CT_OUTPUT,
325 	CT_COLORENTRYLIST,
326 	CT_TRANSPARENCY,
327 	CT_SPECULARROLLOFF,
328 	CT_SPECULARCOLOR,
329 	CT_REFLECTIVITY,
330 	CT_CONNECTIONLIST,
331 	CT_MULTIPARENTLIST,
332 	CT_REFERENCEEDITS,
333 	CT_RED,
334 	CT_GREEN,
335 	CT_BLUE,
336 	CT_HUE,
337 	CT_SATURATION,
338 	CT_VALUE,
339 	CT_RENDERPASSINFO,
340 	CT_ADJUSTMENTS,
341 	CT_OUTADJUSTMENTS,
342 	CT_GENERALFORCE,
343 	CT_FUNCTION_INMAP,
344 	CT_FUNCTION_OUTMAP,
345 	CT_WEIGHTLIST,
346 	CT_SOFTMODXFORMS,
347 	CT_SOFTMODTRANSFORMS,
348 	CT_PATHCURVE,
349 	CT_PRESSURESCALE,
350 	CT_VERTEX,
351 	CT_VERTEXTWEAK,
352 	CT_SUBDIVEDGECREASE,
353 	CT_SUBDIVTEXTCOORD,
354 	CT_SUBDIVFACEUVIDS,
355 	CT_COLLISIONOFFSETVELOCITYINCREMENT,
356 	CT_COLLISIONDEPTHVELOCITYINCREMENT,
357 	CT_COLLISIONOFFSETVELOCITYMULTIPLIER,
358 	CT_COLLISIONDEPTHVELOCITYMULTIPLIER,
359 	CT_OUTCOLORDATA,
360 	CT_DOUBLE4,
361 	CT_PLIST,
362 	CT_VLIST,
363 	CT_COLORRAMP,
364 	CT_COLORRANGE,
365 	CT_PENUMBRA,
366 	CT_AXIS,
367 	CT_WTMATRIX};
368 /** Macro to connect compatible attributes.*/
369     #define connectAttr(file, src, dst) {   		\
370     fprintf(file, "connectAttr ");      		\
371     src;                                			\
372     fprintf(file, " ");                 		\
373     dst;                                			\
374     fprintf(file, ";\n"); }
375 
376 /** Macro to connect compatible attributes.*/
377     #define connectNextAttr(file, src, dst) {   \
378     fprintf(file, "connectAttr ");      		\
379     src;                                		\
380     fprintf(file, " ");                 		\
381     dst;                                		\
382     fprintf(file, " -na"); 		\
383     fprintf(file, ";\n"); }
384 
385 }//namespace MayaDM
386 #endif//__MayaDM_CONNECTABLES_H__
387