Houdini Engine 9.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
HAPI_Helpers.C
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  * Methods for initializing HAPI structs with the correct default values.
8  */
9 
10 #include "HAPI_Helpers.h"
11 
12 #include "HAPI.h"
13 
14 // Session ------------------------------------------------------------------
15 
16 HAPI_DECL_RETURN( void )
18 {
19  in->connectionCount = 0;
20  in->portType = HAPI_TCP_PORT_ANY;
21  in->minPort = 1024;
22  in->maxPort = 65535;
23  in->sharedMemoryBufferType = HAPI_THRIFT_SHARED_MEMORY_FIXED_LENGTH_BUFFER;
24  in->sharedMemoryBufferSize = 100; // 100 MB
25  in->enableSharedMemoryDataTransfer = false;
26 }
27 
30 {
31  HAPI_SessionInfo info;
32  HAPI_SessionInfo_Init( &info );
33  return info;
34 }
35 
36 // Server -------------------------------------------------------------------
37 
38 HAPI_DECL_RETURN( void )
40 {
41  in->autoClose = true;
42  in->timeoutMs = 30000.f;
43  in->verbosity = HAPI_STATUSVERBOSITY_WARNINGS;
44  in->sharedMemoryBufferType = HAPI_THRIFT_SHARED_MEMORY_FIXED_LENGTH_BUFFER;
45  in->sharedMemoryBufferSize = 100; // 100 MB
46 }
47 
50 {
53  return options;
54 }
55 
56 // TIME ---------------------------------------------------------------------
57 
58 HAPI_DECL_RETURN( void )
60 {
61  in->fps = 0.0f;
62 
63  in->startTime = 0.0f;
64  in->endTime = 0.0f;
65 }
66 
69 {
72  return info;
73 }
74 
75 // COMPOSITOR SETTINGS ------------------------------------------------------
76 
77 HAPI_DECL_RETURN( void )
79 {
80  in->maximumResolutionX = 10000;
81  in->maximumResolutionY = 10000;
82 }
83 
86 {
87  HAPI_CompositorOptions settings;
88  HAPI_CompositorOptions_Init(&settings);
89  return settings;
90 }
91 
92 // ASSETS -------------------------------------------------------------------
93 
94 HAPI_DECL_RETURN( void )
96 {
97  in->nodeId = -1;
98  in->objectNodeId = -1;
99 
100  in->hasEverCooked = false;
101 
102  in->nameSH = 0;
103  in->labelSH = 0;
104  in->filePathSH = 0;
105 
106  in->versionSH = 0;
107  in->fullOpNameSH = 0;
108  in->helpTextSH = 0;
109  in->helpURLSH = 0;
110 
111  in->objectCount = -1;
112  in->handleCount = -1;
113 
114  in->transformInputCount = -1;
115  in->geoInputCount = -1;
116  in->geoOutputCount = -1;
117 
118  in->haveObjectsChanged = false;
119  in->haveMaterialsChanged = false;
120 }
121 
124 {
125  HAPI_AssetInfo info;
126  HAPI_AssetInfo_Init( &info );
127  return info;
128 }
129 
130 HAPI_DECL_RETURN( void )
132 {
133  in->splitGeosByGroup = false;
134  in->splitGroupSH = 0;
135  in->splitGeosByAttribute = false;
136  in->splitAttrSH = 0;
137 
138  in->maxVerticesPerPrimitive = -1;
139 
140  in->refineCurveToLinear = false;
141  in->curveRefineLOD = 8.0f;
142 
143  in->clearErrorsAndWarnings = false;
144 
145  in->cookTemplatedGeos = false;
146 
147  in->splitPointsByVertexAttributes = false;
148 
149  in->packedPrimInstancingMode = HAPI_PACKEDPRIM_INSTANCING_MODE_DISABLED;
150 
151  in->handleBoxPartTypes = false;
152  in->handleSpherePartTypes = false;
153 
154  in->checkPartChanges = false;
155 
156  in->cacheMeshTopology = false;
157 
158  in->preferOutputNodes = false;
159 
160  in->extraFlags = 0;
161 }
162 
165 {
166  HAPI_CookOptions info;
167  HAPI_CookOptions_Init( &info );
168  return info;
169 }
170 
173  const HAPI_CookOptions * left,
174  const HAPI_CookOptions * right )
175 {
176  // Note: DO NOT check the extraFlags here. They do not exist!
177 
178  return left->splitGeosByGroup == right->splitGeosByGroup
179  && left->splitGroupSH == right->splitGroupSH
180  && left->splitGeosByAttribute == right->splitGeosByAttribute
181  && left->splitAttrSH == right->splitAttrSH
182  && left->maxVerticesPerPrimitive == right->maxVerticesPerPrimitive
183  && left->refineCurveToLinear == right->refineCurveToLinear
184  && left->curveRefineLOD == right->curveRefineLOD
185  && left->cookTemplatedGeos == right->cookTemplatedGeos
186  && left->packedPrimInstancingMode == right->packedPrimInstancingMode
187  && left->handleBoxPartTypes == right->handleBoxPartTypes
188  && left->handleSpherePartTypes == right->handleSpherePartTypes
189  && left->cacheMeshTopology == right->cacheMeshTopology;
190 }
191 
192 // NODES --------------------------------------------------------------------
193 
194 HAPI_DECL_RETURN( void )
196 {
197  in->id = -1;
198  in->parentId = -1;
199  in->nameSH = 0;
200  in->type = HAPI_NODETYPE_NONE;
201 
202  in->isValid = true;
203 
204  in->totalCookCount = 0;
205 
206  in->uniqueHoudiniNodeId = -1;
207  in->internalNodePathSH = 0;
208 
209  in->parmCount = 0;
210  in->parmIntValueCount = 0;
211  in->parmFloatValueCount = 0;
212  in->parmStringValueCount = 0;
213  in->parmChoiceCount = 0;
214 
215  in->childNodeCount = 0;
216  in->inputCount = 0;
217  in->outputCount = 0;
218  in->createdPostAssetLoad = false;
219 }
220 
223 {
224  HAPI_NodeInfo info;
225  HAPI_NodeInfo_Init( &info );
226  return info;
227 }
228 
229 // PARAMETERS ---------------------------------------------------------------
230 
231 HAPI_DECL_RETURN( void )
233 {
234  in->id = HAPI_INVALID_PARM_ID;
235  in->parentId = HAPI_INVALID_PARM_ID;
236  in->childIndex = 0;
237 
238  in->type = HAPI_PARMTYPE_INT;
239  in->scriptType = HAPI_PRM_SCRIPT_TYPE_INT;
240  in->typeInfoSH = 0;
241 
242  in->permissions = HAPI_PERMISSIONS_NON_APPLICABLE;
243 
244  in->tagCount = 0;
245 
246  in->size = 0;
247 
248  in->choiceListType = HAPI_CHOICELISTTYPE_NONE;
249  in->choiceCount = 0;
250 
251  in->nameSH = 0;
252  in->labelSH = 0;
253  in->templateNameSH = 0;
254  in->helpSH = 0;
255 
256  in->hasMin = false;
257  in->hasMax = false;
258  in->hasUIMin = false;
259  in->hasUIMax = false;
260 
261  in->min = 0.0f;
262  in->max = 10.0f;
263  in->UIMin = 0.0f;
264  in->UIMax = 10.0f;
265 
266  in->invisible = false;
267  in->disabled = false;
268  in->spare = false;
269  in->joinNext = false;
270  in->labelNone = false;
271 
272  in->intValuesIndex = -1;
273  in->floatValuesIndex = -1;
274  in->stringValuesIndex = -1;
275  in->choiceIndex = -1;
276 
277  in->inputNodeType = HAPI_NODETYPE_NONE;
278  in->inputNodeFlag = HAPI_NODEFLAGS_ANY;
279 
280  in->isChildOfMultiParm = false;
281  in->instanceNum = -1;
282  in->instanceLength = 0;
283  in->instanceCount = 0;
284  in->instanceStartOffset = -1;
285 
286  in->rampType = HAPI_RAMPTYPE_INVALID;
287 
288  in->visibilityConditionSH = 0;
289  in->disabledConditionSH = 0;
290 }
291 
294 {
295  HAPI_ParmInfo info;
296  HAPI_ParmInfo_Init( &info );
297  return info;
298 }
299 
300 HAPI_DECL_RETURN( bool )
302 {
303  return ( in->type >= HAPI_PARMTYPE_INT_START
304  && in->type <= HAPI_PARMTYPE_INT_END ) ||
305  in->type == HAPI_PARMTYPE_MULTIPARMLIST ||
306  in->type == HAPI_PARMTYPE_FOLDERLIST_RADIO;
307 }
308 
309 HAPI_DECL_RETURN( bool )
311 {
312  return ( in->type >= HAPI_PARMTYPE_FLOAT_START
313  && in->type <= HAPI_PARMTYPE_FLOAT_END );
314 }
315 
316 HAPI_DECL_RETURN( bool )
318 {
319  return ( ( in->type >= HAPI_PARMTYPE_STRING_START && in->type <= HAPI_PARMTYPE_STRING_END )
320  || ( in->type == HAPI_PARMTYPE_LABEL )
321  || ( in->type == HAPI_PARMTYPE_PATH_FILE_DIR) );
322 }
323 
324 HAPI_DECL_RETURN( bool )
326 {
327  return ( (in->type >= HAPI_PARMTYPE_PATH_START
328  && in->type <= HAPI_PARMTYPE_PATH_END)
329  || ( in->type == HAPI_PARMTYPE_PATH_FILE_DIR));
330 }
331 
332 HAPI_DECL_RETURN( bool )
334 {
335  return ( in->type >= HAPI_PARMTYPE_NODE_START
336  && in->type <= HAPI_PARMTYPE_NODE_END );
337 }
338 
339 HAPI_DECL_RETURN( bool )
341 {
342  return ( in->type >= HAPI_PARMTYPE_NONVALUE_START
343  && in->type <= HAPI_PARMTYPE_NONVALUE_END );
344 }
345 
346 HAPI_DECL_RETURN( int )
348 {
349  if ( HAPI_ParmInfo_IsInt( in ) )
350  return in->size;
351  else
352  return 0;
353 }
354 
355 HAPI_DECL_RETURN( int )
357 {
358  if ( HAPI_ParmInfo_IsFloat( in ) )
359  return in->size;
360  else
361  return 0;
362 }
363 
364 HAPI_DECL_RETURN( int )
366 {
367  if ( HAPI_ParmInfo_IsString( in ) )
368  return in->size;
369  else
370  return 0;
371 }
372 
373 HAPI_DECL_RETURN( void )
375 {
376  in->parentParmId = 0;
377  in->labelSH = 0;
378  in->valueSH = 0;
379 }
380 
383 {
384  HAPI_ParmChoiceInfo info;
385  HAPI_ParmChoiceInfo_Init( &info );
386  return info;
387 }
388 
389 // HANDLES ------------------------------------------------------------------
390 
391 HAPI_DECL_RETURN( void )
393 {
394  in->nameSH = 0;
395  in->typeNameSH = 0;
396  in->bindingsCount = 0;
397 }
398 
401 {
402  HAPI_HandleInfo info;
403  HAPI_HandleInfo_Init( &info );
404  return info;
405 }
406 
407 HAPI_DECL_RETURN( void )
409 {
410  in->handleParmNameSH = 0;
411  in->assetParmNameSH = 0;
412  in->assetParmId = -1;
413 }
414 
417 {
420  return info;
421 }
422 
423 // OBJECTS ------------------------------------------------------------------
424 
425 HAPI_DECL_RETURN( void )
427 {
428  in->nameSH = 0;
429  in->objectInstancePathSH = 0;
430 
431  in->hasTransformChanged = true;
432  in->haveGeosChanged = true;
433 
434  in->isVisible = true;
435  in->isInstancer = false;
436  in->isInstanced = false;
437 
438  in->geoCount = 0;
439 
440  in->nodeId = -1;
441  in->objectToInstanceId = -1;
442 }
443 
446 {
447  HAPI_ObjectInfo out;
448  HAPI_ObjectInfo_Init( &out );
449  return out;
450 }
451 
452 // GEOMETRY -----------------------------------------------------------------
453 
454 HAPI_DECL_RETURN( void )
456 {
457  in->type = HAPI_GEOTYPE_INVALID;
458  in->nameSH = 0;
459  in->nodeId = -1;
460 
461  in->isEditable = false;
462  in->isTemplated = false;
463  in->isDisplayGeo = true;
464 
465  in->hasGeoChanged = true;
466  in->hasMaterialChanged = true;
467 
468  in->pointGroupCount = 0;
469  in->primitiveGroupCount = 0;
470  in->edgeGroupCount = 0;
471 
472  in->partCount = 1;
473 }
474 
477 {
478  HAPI_GeoInfo info;
479  HAPI_GeoInfo_Init( &info );
480  return info;
481 }
482 
483 HAPI_DECL_RETURN( int )
485  HAPI_GeoInfo * in, HAPI_GroupType type )
486 {
487  if ( !in )
488  return 0;
489 
490  switch ( type )
491  {
492  case HAPI_GROUPTYPE_POINT: return in->pointGroupCount;
493  case HAPI_GROUPTYPE_PRIM: return in->primitiveGroupCount;
494  case HAPI_GROUPTYPE_EDGE: return in->edgeGroupCount;
495  default: return 0;
496  }
497 }
498 
499 HAPI_DECL_RETURN( void )
501 {
502  in->id = 0;
503  in->nameSH = 0;
504  in->type = HAPI_PARTTYPE_INVALID;
505 
506  in->faceCount = 0;
507  in->vertexCount = 0;
508  in->pointCount = 0;
509 
510  in->attributeCounts[ HAPI_ATTROWNER_POINT ] = 0;
511  in->attributeCounts[ HAPI_ATTROWNER_PRIM ] = 0;
512  in->attributeCounts[ HAPI_ATTROWNER_VERTEX ] = 0;
513  in->attributeCounts[ HAPI_ATTROWNER_DETAIL ] = 0;
514 
515  in->isInstanced = false;
516  in->instancedPartCount = 0;
517  in->instanceCount = 0;
518  in->hasChanged = true;
519 }
520 
523 {
524  HAPI_PartInfo info;
525  HAPI_PartInfo_Init( &info );
526  return info;
527 }
528 
529 HAPI_DECL_RETURN( int )
531  HAPI_PartInfo * in, HAPI_AttributeOwner owner )
532 {
533  if ( !in )
534  return 0;
535 
536  switch ( owner )
537  {
538  case HAPI_ATTROWNER_VERTEX: return in->vertexCount;
539  case HAPI_ATTROWNER_POINT: return in->pointCount;
540  case HAPI_ATTROWNER_PRIM: return in->faceCount;
541  case HAPI_ATTROWNER_DETAIL: return 1;
542  default: return 0;
543  }
544 }
545 
546 HAPI_DECL_RETURN( int )
548  HAPI_PartInfo * in, HAPI_GroupType type )
549 {
550  if ( !in )
551  return 0;
552 
553  switch ( type )
554  {
555  case HAPI_GROUPTYPE_POINT: return in->pointCount;
556  case HAPI_GROUPTYPE_PRIM: return in->faceCount;
557  default: return 0;
558  }
559 }
560 
561 HAPI_DECL_RETURN( int )
563  HAPI_PartInfo * in, HAPI_AttributeOwner owner )
564 {
565  if ( !in )
566  return 0;
567 
568  switch ( owner )
569  {
570  case HAPI_ATTROWNER_VERTEX: return in->attributeCounts[ HAPI_ATTROWNER_VERTEX ];
571  case HAPI_ATTROWNER_POINT: return in->attributeCounts[ HAPI_ATTROWNER_POINT ];
572  case HAPI_ATTROWNER_PRIM: return in->attributeCounts[ HAPI_ATTROWNER_PRIM ];
573  case HAPI_ATTROWNER_DETAIL: return in->attributeCounts[ HAPI_ATTROWNER_DETAIL ];
574  default: return 0;
575  }
576 }
577 
578 HAPI_DECL_RETURN( void )
580 {
581  in->exists = false;
582 
583  in->owner = HAPI_ATTROWNER_INVALID;
584  in->storage = HAPI_STORAGETYPE_INVALID;
585 
586  in->originalOwner = HAPI_ATTROWNER_INVALID;
587 
588  in->count = 0;
589  in->tupleSize = 0;
590 
591  in->totalArrayElements = 0;
592  in->typeInfo = HAPI_ATTRIBUTE_TYPE_NONE;
593 }
594 
597 {
598  HAPI_AttributeInfo info;
599  HAPI_AttributeInfo_Init( &info );
600  return info;
601 }
602 
603 // MATERIALS ----------------------------------------------------------------
604 
605 HAPI_DECL_RETURN( void )
607 {
608  in->nodeId = 0;
609  in->exists = false;
610  in->hasChanged = true;
611 }
612 
615 {
616  HAPI_MaterialInfo info;
617  HAPI_MaterialInfo_Init( &info );
618  return info;
619 }
620 
621 HAPI_DECL_RETURN( void )
623 {
624  in->nameSH = 0;
625  in->descriptionSH = 0;
626  in->defaultExtensionSH = 0;
627 }
628 
631 {
633  HAPI_ImageFileFormat_Init( &info );
634  return info;
635 }
636 
637 HAPI_DECL_RETURN( void )
639 {
640  in->imageFileFormatNameSH = 0;
641 
642  in->xRes = 0;
643  in->yRes = 0;
644 
645  in->dataFormat = HAPI_IMAGE_DATA_DEFAULT;
646 
647  in->interleaved = true;
648  in->packing = HAPI_IMAGE_PACKING_DEFAULT4;
649 
650  in->gamma = 2.2;
651 }
652 
655 {
656  HAPI_ImageInfo image_info;
657  HAPI_ImageInfo_Init( &image_info );
658  return image_info;
659 }
660 
661 // ANIMATION ----------------------------------------------------------------
662 
663 HAPI_DECL_RETURN( void )
665 {
666  in->time = 0;
667  in->value = 0;
668  in->inTangent = 0;
669  in->outTangent = 0;
670 }
671 
674 {
675  HAPI_Keyframe info;
676  HAPI_Keyframe_Init( &info );
677  return info;
678 }
679 
680 // CAMERAS ------------------------------------------------------------------
681 
682 HAPI_DECL_RETURN(void)
684 {
685  in->focal = 50;
686  in->aperture = 41.42136;
687  in->pixelAspect = 1;
688  in->focusDistance = 10;
689  in->fStop = 22.1;
690  in->imagingDistance = 1;
691  in->resX = 320;
692  in->resY = 243;
693  in->cropX[0] = in->cropY[0] = 0;
694  in->cropX[1] = in->cropY[1] = 1;
695  in->winX[0] = in->winY[0] = 0;
696  in->winX[1] = in->winY[1] = 1;
697  in->clipNear = 0.001;
698  in->clipFar = 1E6;
699  in->shutterOpen = 0;
700  in->shutterClose = 0;
701  in->orthoZoom = 1;
702  in->guideScale = 1;
703  in->projection = HAPI_CAMERAPROJECTIONTYPE_PERSPECTIVE;
704 }
705 
708 {
709  HAPI_CameraInfo info;
710  HAPI_CameraInfo_Init(&info);
711  return info;
712 }
713 
714 // VOLUMES ------------------------------------------------------------------
715 
716 HAPI_DECL_RETURN( void )
718 {
719  in->nameSH = 0;
720 
721  in->type = HAPI_VOLUMETYPE_INVALID;
722 
723  in->xLength = 0;
724  in->yLength = 0;
725  in->zLength = 0;
726  in->minX = 0;
727  in->minY = 0;
728  in->minZ = 0;
729 
730  in->tupleSize = 0;
731  in->storage = HAPI_STORAGETYPE_INVALID;
732 
733  in->tileSize = 0;
734 
735  in->hasTaper = false;
736  in->xTaper = 0.0f;
737  in->yTaper = 0.0f;
738 }
739 
742 {
743  HAPI_VolumeInfo info;
744  HAPI_VolumeInfo_Init( &info );
745  return info;
746 }
747 
748 HAPI_DECL_RETURN( void )
750 {
751  in->minX = 0;
752  in->minY = 0;
753  in->minZ = 0;
754  in->isValid = false;
755 }
756 
759 {
760  HAPI_VolumeTileInfo info;
761  HAPI_VolumeTileInfo_Init( &info );
762  return info;
763 }
764 
765 // CURVES -------------------------------------------------------------------
766 
767 HAPI_DECL_RETURN( void )
769 {
770  in->curveType = HAPI_CURVETYPE_LINEAR;
771  in->curveCount = 0;
772  in->vertexCount = 0;
773  in->knotCount = 0;
774 
775  in->isPeriodic = false;
776  in->isRational = false;
777  in->isClosed = false;
778  in->order = 2;
779 
780  in->hasKnots = false;
781 }
782 
785 {
786  HAPI_CurveInfo info;
787  HAPI_CurveInfo_Init( &info );
788  return info;
789 }
790 
791 // INPUT CURVES -------------------------------------------------------------
792 
793 HAPI_DECL_RETURN( void )
795 {
796  in->curveType = HAPI_CURVETYPE_LINEAR;
797  in->closed = false;
798  in->order = 2;
799  in->reverse = false;
800  in->inputMethod = HAPI_CURVEMETHOD_CVS;
801  in->breakpointParameterization = HAPI_CURVEPARAMETERIZATION_UNIFORM;
802 }
803 
806 {
807  HAPI_InputCurveInfo info;
808  HAPI_InputCurveInfo_Init( &info );
809  return info;
810 }
811 
812 // TRANSFORMS ---------------------------
813 
814 HAPI_DECL_RETURN( void )
816 {
817  for ( int n = 0; n < HAPI_POSITION_VECTOR_SIZE; n++ )
818  in->position[ n ] = 0.0f;
819 
820  for ( int n = 0; n < HAPI_QUATERNION_VECTOR_SIZE; n++ )
821  in->rotationQuaternion[ n ] = 0.0f;
822 
823  for ( int n = 0; n < HAPI_SCALE_VECTOR_SIZE; n++ )
824  in->scale[ n ] = 0.0f;
825 
826  for ( int n = 0; n < HAPI_SHEAR_VECTOR_SIZE; n++ )
827  in->shear[ n ] = 0.0f;
828 
829  in->rstOrder = HAPI_RSTORDER_DEFAULT;
830 }
831 
834 {
835  HAPI_Transform transform;
836  HAPI_Transform_Init( &transform );
837  return transform;
838 }
839 
840 HAPI_DECL_RETURN( void )
842 {
843  for ( int n = 0; n < HAPI_POSITION_VECTOR_SIZE; n++ )
844  in->position[ n ] = 0.0f;
845 
846  for ( int n = 0; n < HAPI_EULER_VECTOR_SIZE; n++ )
847  in->rotationEuler[ n ] = 0.0f;
848 
849  for ( int n = 0; n < HAPI_SCALE_VECTOR_SIZE; n++ )
850  in->scale[ n ] = 0.0f;
851 
852  for ( int n = 0; n < HAPI_SHEAR_VECTOR_SIZE; n++ )
853  in->shear[ n ] = 0.0f;
854 
855  in->rstOrder = HAPI_RSTORDER_DEFAULT;
856  in->rotationOrder = HAPI_XYZORDER_DEFAULT;
857 }
858 
861 {
862  HAPI_TransformEuler transformEuler;
863  HAPI_TransformEuler_Init( &transformEuler );
864  return transformEuler;
865 }
866 
867 // SESSIONSYNC --------------------------------------------------------------
868 
869 HAPI_DECL_RETURN( void )
871 {
872  for ( int n = 0; n < HAPI_POSITION_VECTOR_SIZE; n++ )
873  in->position[ n ] = 0.0f;
874 
875  for ( int n = 0; n < HAPI_QUATERNION_VECTOR_SIZE; n++ )
876  in->rotationQuaternion[ n ] = 0.0f;
877 
878  in->offset = 0;
879 }
880 
883 {
884  HAPI_Viewport viewport;
885  HAPI_Viewport_Init( &viewport );
886  return viewport;
887 }
888 
889 HAPI_DECL_RETURN( void )
891 {
892  in->cookUsingHoudiniTime = true;
893  in->syncViewport = false;
894 }
895 
898 {
899  HAPI_SessionSyncInfo syncInfo;
900  HAPI_SessionSyncInfo_Init( &syncInfo );
901  return syncInfo;
902 }
HAPI_ObjectInfo_Init(HAPI_ObjectInfo *in)
Definition: HAPI_Helpers.C:426
#define HAPI_QUATERNION_VECTOR_SIZE
Definition: HAPI_Common.h:20
HAPI_ParmInfo_GetIntValueCount(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:347
Data for an image, used with HAPI_GetImageInfo() and HAPI_SetImageInfo()
Definition: HAPI_Common.h:1861
HAPI_Viewport_Init(HAPI_Viewport *in)
Definition: HAPI_Helpers.C:870
HAPI_GeoInfo_Create()
Definition: HAPI_Helpers.C:476
Used for Results. Equivalent to HAPI_STATUSVERBOSITY_1.
Definition: HAPI_Common.h:228
HAPI_HandleBindingInfo_Init(HAPI_HandleBindingInfo *in)
Definition: HAPI_Helpers.C:408
HAPI_ParmChoiceInfo_Init(HAPI_ParmChoiceInfo *in)
Definition: HAPI_Helpers.C:374
#define HAPI_POSITION_VECTOR_SIZE
Definition: HAPI_Common.h:16
HAPI_VolumeInfo_Create()
Definition: HAPI_Helpers.C:741
HAPI_ParmInfo_IsString(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:317
HAPI_InputCurveInfo_Init(HAPI_InputCurveInfo *in)
Definition: HAPI_Helpers.C:794
HAPI_VolumeTileInfo_Init(HAPI_VolumeTileInfo *in)
Definition: HAPI_Helpers.C:749
HAPI_AttributeInfo_Init(HAPI_AttributeInfo *in)
Definition: HAPI_Helpers.C:579
HAPI_CurveInfo_Init(HAPI_CurveInfo *in)
Definition: HAPI_Helpers.C:768
HAPI_HandleInfo_Init(HAPI_HandleInfo *in)
Definition: HAPI_Helpers.C:392
HAPI_PartInfo_Init(HAPI_PartInfo *in)
Definition: HAPI_Helpers.C:500
HAPI_AssetInfo_Create()
Definition: HAPI_Helpers.C:123
HAPI_ParmInfo_Create()
Creates a struct with default values and returns it.
Definition: HAPI_Helpers.C:293
#define HAPI_INVALID_PARM_ID
Definition: HAPI_Common.h:29
HAPI_ParmInfo_IsInt(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:301
HAPI_InputCurveInfo_Create()
Definition: HAPI_Helpers.C:805
HAPI_VolumeTileInfo_Create()
Definition: HAPI_Helpers.C:758
HAPI_NodeInfo_Init(HAPI_NodeInfo *in)
Definition: HAPI_Helpers.C:195
HAPI_CompositorOptions_Init(HAPI_CompositorOptions *in)
Definition: HAPI_Helpers.C:78
HAPI_ParmInfo_Init(HAPI_ParmInfo *in)
Clears the struct to default values.
Definition: HAPI_Helpers.C:232
HAPI_Keyframe_Init(HAPI_Keyframe *in)
Definition: HAPI_Helpers.C:664
HAPI_CookOptions_AreEqual(const HAPI_CookOptions *left, const HAPI_CookOptions *right)
Definition: HAPI_Helpers.C:172
HAPI_SessionInfo_Create()
Definition: HAPI_Helpers.C:29
HAPI_Transform_Create()
Definition: HAPI_Helpers.C:833
#define HAPI_SHEAR_VECTOR_SIZE
Definition: HAPI_Common.h:18
HAPI_ParmInfo_GetFloatValueCount(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:356
HAPI_GeoInfo_GetGroupCountByType(HAPI_GeoInfo *in, HAPI_GroupType type)
Definition: HAPI_Helpers.C:484
HAPI_CameraInfo_Init(HAPI_CameraInfo *in)
Definition: HAPI_Helpers.C:683
HAPI_TransformEuler_Create()
Definition: HAPI_Helpers.C:860
Meta-data about an HDA, returned by HAPI_GetAssetInfo()
Definition: HAPI_Common.h:1208
HAPI_AttributeOwner
Definition: HAPI_Common.h:574
HAPI_CookOptions_Create()
Definition: HAPI_Helpers.C:164
HAPI_TimelineOptions_Init(HAPI_TimelineOptions *in)
Definition: HAPI_Helpers.C:59
Meta-data for an OBJ Node.
Definition: HAPI_Common.h:1642
HAPI_ImageFileFormat_Init(HAPI_ImageFileFormat *in)
Definition: HAPI_Helpers.C:622
HAPI_PartInfo_Create()
Definition: HAPI_Helpers.C:522
Options to configure a Thrift server being started from HARC.
Definition: HAPI_Common.h:1165
HAPI_PartInfo_GetElementCountByAttributeOwner(HAPI_PartInfo *in, HAPI_AttributeOwner owner)
Definition: HAPI_Helpers.C:530
HAPI_NodeInfo_Create()
Definition: HAPI_Helpers.C:222
HAPI_CameraInfo_Create()
Definition: HAPI_Helpers.C:707
Meta-data describing a Geo Part.
Definition: HAPI_Common.h:1735
HAPI_ParmInfo_IsPath(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:325
Meta-data for a Houdini Node.
Definition: HAPI_Common.h:1366
HAPI_ObjectInfo_Create()
Definition: HAPI_Helpers.C:445
HAPI_HandleBindingInfo_Create()
Definition: HAPI_Helpers.C:416
HAPI_SessionSyncInfo_Create()
Definition: HAPI_Helpers.C:897
HAPI_HandleInfo_Create()
Definition: HAPI_Helpers.C:400
Configuration options for Houdini's compositing context.
Definition: HAPI_Common.h:2197
Data for SOP camera primitives.
Definition: HAPI_Common.h:2062
HAPI_AssetInfo_Init(HAPI_AssetInfo *in)
Definition: HAPI_Helpers.C:95
HAPI_PartInfo_GetElementCountByGroupType(HAPI_PartInfo *in, HAPI_GroupType type)
Definition: HAPI_Helpers.C:547
HAPI_ImageInfo_Init(HAPI_ImageInfo *in)
Definition: HAPI_Helpers.C:638
#define HAPI_SCALE_VECTOR_SIZE
Definition: HAPI_Common.h:17
HAPI_ImageFileFormat_Create()
Definition: HAPI_Helpers.C:630
HAPI_SessionInfo_Init(HAPI_SessionInfo *in)
Definition: HAPI_Helpers.C:17
Configurations for sessions.
Definition: HAPI_Common.h:1136
Options which affect how nodes are cooked.
Definition: HAPI_Common.h:1267
HAPI_PartInfo_GetAttributeCountByOwner(HAPI_PartInfo *in, HAPI_AttributeOwner owner)
Definition: HAPI_Helpers.C:562
HAPI_MaterialInfo_Init(HAPI_MaterialInfo *in)
Definition: HAPI_Helpers.C:606
#define HAPI_DECL_RETURN(r)
Definition: HAPI_API.h:96
HAPI_ThriftServerOptions_Create()
Definition: HAPI_Helpers.C:49
HAPI_CompositorOptions_Create()
Definition: HAPI_Helpers.C:85
Meta-data for a SOP Node.
Definition: HAPI_Common.h:1691
HAPI_CookOptions_Init(HAPI_CookOptions *in)
Definition: HAPI_Helpers.C:131
A Transform with Euler rotation.
Definition: HAPI_Common.h:1108
HAPI_TimelineOptions_Create()
Definition: HAPI_Helpers.C:68
Data for global timeline, used with HAPI_SetTimelineOptions()
Definition: HAPI_Common.h:1196
char HAPI_Bool
Definition: HAPI_Common.h:119
HAPI_GeoInfo_Init(HAPI_GeoInfo *in)
Definition: HAPI_Helpers.C:455
HAPI_Viewport_Create()
Definition: HAPI_Helpers.C:882
HAPI_AttributeInfo_Create()
Definition: HAPI_Helpers.C:596
"int", "integer"
Definition: HAPI_Common.h:417
HAPI_VolumeInfo_Init(HAPI_VolumeInfo *in)
Definition: HAPI_Helpers.C:717
Implicit type based on data.
Definition: HAPI_Common.h:676
HAPI_ParmInfo_IsFloat(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:310
A Transform with Quaternion rotation.
Definition: HAPI_Common.h:1096
#define HAPI_EULER_VECTOR_SIZE
Definition: HAPI_Common.h:21
HAPI_GroupType
Definition: HAPI_Common.h:564
HAPI_SessionSyncInfo_Init(HAPI_SessionSyncInfo *in)
Definition: HAPI_Helpers.C:890
Describes an image format, used with HAPI_GetSupportedImageFileFormats()
Definition: HAPI_Common.h:1852
HAPI_ThriftServerOptions_Init(HAPI_ThriftServerOptions *in)
Definition: HAPI_Helpers.C:39
HAPI_MaterialInfo_Create()
Definition: HAPI_Helpers.C:614
Data for a single Key Frame.
Definition: HAPI_Common.h:1890
Parameter is not a menu.
Definition: HAPI_Common.h:482
HAPI_ParmInfo_IsNonValue(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:340
HAPI_ParmChoiceInfo_Create()
Definition: HAPI_Helpers.C:382
HAPI_CurveInfo_Create()
Definition: HAPI_Helpers.C:784
HAPI_ImageInfo_Create()
Definition: HAPI_Helpers.C:654
HAPI_ParmInfo_IsNode(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:333
HAPI_Keyframe_Create()
Definition: HAPI_Helpers.C:673
Meta-data for a combo-box / choice parm.
Definition: HAPI_Common.h:1597
HAPI_TransformEuler_Init(HAPI_TransformEuler *in)
Definition: HAPI_Helpers.C:841
HAPI_ParmInfo_GetStringValueCount(const HAPI_ParmInfo *in)
Definition: HAPI_Helpers.C:365
HAPI_Transform_Init(HAPI_Transform *in)
Definition: HAPI_Helpers.C:815