72 const char * log_file );
91 const char * host_name,
122 const char * pipe_name,
124 const char * log_file );
142 const char * pipe_name,
170 const char * shared_mem_name,
172 const char * log_file);
192 const char * shared_mem_name,
209 const char * dll_path );
365 int cooking_thread_stack_size,
366 const char * houdini_environment_files,
367 const char * otl_search_path,
368 const char * dso_search_path,
369 const char * image_dso_search_path,
370 const char * audio_dso_search_path );
465 const char * file_path );
524 const char * variable_name,
544 const char * variable_name,
623 const char * variable_name,
650 const char * variable_name,
651 const char * value );
720 int * buffer_length );
795 int * buffer_length );
865 int * buffer_length );
1121 const float * matrix,
1148 const float * matrix,
1251 int * buffer_length );
1276 char * string_value,
1299 const char * string_value,
1343 const int * string_handle_array,
1344 int string_handle_count,
1345 int * string_buffer_size );
1373 int char_array_length );
1566 const char * file_path,
1630 const char * library_buffer,
1631 int library_buffer_length,
1656 int * asset_count );
1774 const char * asset_name,
1776 int * int_value_count,
1777 int * float_value_count,
1778 int * string_value_count,
1779 int * choice_value_count );
1831 const char * asset_name,
1955 const char * asset_name,
1956 int * int_values_array,
1959 float * float_values_array,
1968 int choice_length );
1999 const char * asset_name,
2033 const char * asset_name,
2035 const char * tag_name,
2145 const char * file_name,
2179 const char * file_name,
2207 const char * file_path,
2500 const char * operator_name,
2501 const char * node_label,
2545 const char * name );
2588 const char * name );
2792 const char * new_name );
2969 int * connected_count );
3026 int start,
int length );
3153 int start,
int length );
3206 const char * parm_name,
3230 const char * parm_name,
3295 const char * tag_name,
3323 const char * tag_name,
3350 const char * parm_name,
3378 const char * tag_name,
3406 const char * parm_name,
3431 const char * parm_name,
3452 const char * parm_name );
3570 const char * parm_name,
3609 int start,
int length );
3635 const char * parm_name,
3673 float * values_array,
3674 int start,
int length );
3709 const char * parm_name,
3760 int start,
int length );
3786 const char * parm_name,
3815 const char * parm_name,
3816 const char * destination_directory,
3817 const char * destination_file_name );
3854 int start,
int length );
3900 const char * parm_name,
3957 const int * values_array,
3958 int start,
int length );
4004 const char * parm_name,
4054 const float * values_array,
4055 int start,
int length );
4131 const char * parm_name,
4160 int instance_position );
4185 int instance_position );
4219 int start,
int length );
4258 int start,
int length );
4292 const char * preset_name,
4293 int * buffer_length );
4318 int buffer_length );
4351 const char * preset_name,
4352 const char * buffer,
4353 int buffer_length );
4383 const char * buffer,
4415 const char * buffer,
4418 int preset_names_count );
4518 const char * categories,
4519 int * object_count );
4554 int start,
int length );
4601 int start,
int length );
4634 int start,
int length );
4677 int start,
int length );
4860 const char * group_name,
4896 int * face_counts_array,
4897 int start,
int length );
4933 int * vertex_list_array,
4934 int start,
int length );
5067 int start,
int length );
5127 int * data_fixed_array,
5128 int data_fixed_length,
5129 int * sizes_fixed_array,
5130 int start,
int sizes_fixed_length );
5187 int start,
int length );
5247 int data_fixed_length,
5248 int * sizes_fixed_array,
5249 int start,
int sizes_fixed_length );
5306 int start,
int length );
5366 int data_fixed_length,
5367 int * sizes_fixed_array,
5368 int start,
int sizes_fixed_length );
5425 int start,
int length );
5485 int data_fixed_length,
5486 int * sizes_fixed_array,
5487 int start,
int sizes_fixed_length );
5544 int start,
int length );
5604 int data_fixed_length,
5605 int * sizes_fixed_array,
5606 int start,
int sizes_fixed_length );
5663 int start,
int length );
5722 float * data_fixed_array,
5723 int data_fixed_length,
5724 int * sizes_fixed_array,
5725 int start,
int sizes_fixed_length );
5781 double * data_array,
5782 int start,
int length );
5841 double * data_fixed_array,
5842 int data_fixed_length,
5843 int * sizes_fixed_array,
5844 int start,
int sizes_fixed_length );
5899 int start,
int length );
5965 int data_fixed_length,
5966 int * sizes_fixed_array,
5967 int start,
int sizes_fixed_length );
6093 int data_fixed_length,
6094 int* sizes_fixed_array,
6096 int sizes_fixed_length );
6157 int start,
int length,
6219 int start,
int length,
6281 int start,
int length,
6342 int start,
int length,
6403 int start,
int length,
6465 int start,
int length,
6525 double * data_array,
6526 int start,
int length,
6583 int start,
int length,
6640 int start,
int length,
6702 const char * attr_name,
6704 int * data_fixed_array,
6705 int data_fixed_length,
6706 int * sizes_fixed_array,
6707 int start,
int sizes_fixed_length,
6769 const char * attr_name,
6772 int data_fixed_length,
6773 int * sizes_fixed_array,
6774 int start,
int sizes_fixed_length,
6836 const char * attr_name,
6839 int data_fixed_length,
6840 int * sizes_fixed_array,
6841 int start,
int sizes_fixed_length,
6903 const char * attr_name,
6906 int data_fixed_length,
6907 int * sizes_fixed_array,
6908 int start,
int sizes_fixed_length,
6970 const char * attr_name,
6973 int data_fixed_length,
6974 int * sizes_fixed_array,
6975 int start,
int sizes_fixed_length,
7037 const char * attr_name,
7039 float * data_fixed_array,
7040 int data_fixed_length,
7041 int * sizes_fixed_array,
7042 int start,
int sizes_fixed_length,
7104 const char * attr_name,
7106 double * data_fixed_array,
7107 int data_fixed_length,
7108 int * sizes_fixed_array,
7109 int start,
int sizes_fixed_length,
7175 const char * attr_name,
7178 int data_fixed_length,
7179 int * sizes_fixed_array,
7180 int start,
int sizes_fixed_length,
7246 const char * attr_name,
7249 int data_fixed_length,
7250 int * sizes_fixed_array,
7251 int start,
int sizes_fixed_length,
7370 const char * group_name,
7372 int * membership_array,
7373 int start,
int length );
7402 int * pointGroupCount,
7403 int * primitiveGroupCount );
7495 const char * group_name,
7497 int * membership_array,
7498 int start,
int length );
7534 int start,
int length );
7577 int start,
int length );
7642 const int * face_counts_array,
7643 int start,
int length );
7679 const int * vertex_list_array,
7680 int start,
int length );
7782 const int * data_array,
7783 int start,
int length );
7830 int start,
int length );
7877 int start,
int length );
7924 int start,
int length );
7971 int start,
int length );
8017 const float * data_array,
8018 int start,
int length );
8064 const double * data_array,
8065 int start,
int length );
8111 const char ** data_array,
8112 int start,
int length );
8166 const char** string_array,
8168 const int* indices_array,
8170 int indices_length);
8219 const char* data_array,
8273 const int* data_array,
8544 const float* data_array,
8598 const double* data_array,
8648 const char** data_array,
8649 int start,
int length );
8702 const int * data_fixed_array,
8703 int data_fixed_length,
8704 const int * sizes_fixed_array,
8706 int sizes_fixed_length );
8760 int data_fixed_length,
8761 const int * sizes_fixed_array,
8763 int sizes_fixed_length );
8817 int data_fixed_length,
8818 const int * sizes_fixed_array,
8820 int sizes_fixed_length);
8874 int data_fixed_length,
8875 const int * sizes_fixed_array,
8877 int sizes_fixed_length );
8931 int data_fixed_length,
8932 const int * sizes_fixed_array,
8934 int sizes_fixed_length );
8987 const float * data_fixed_array,
8988 int data_fixed_length,
8989 const int * sizes_fixed_array,
8991 int sizes_fixed_length );
9044 const double * data_fixed_array,
9045 int data_fixed_length,
9046 const int * sizes_fixed_array,
9048 int sizes_fixed_length );
9101 const char ** data_fixed_array,
9102 int data_fixed_length,
9103 const int * sizes_fixed_array,
9105 int sizes_fixed_length );
9159 const char** data_fixed_array,
9160 int data_fixed_length,
9161 const int* sizes_fixed_array,
9163 int sizes_fixed_length);
9212 const int * data_array,
9213 int start,
int length,
9264 int start,
int length,
9315 int start,
int length,
9366 int start,
int length,
9417 int start,
int length,
9467 const float * data_array,
9468 int start,
int length,
9519 const double * data_array,
9520 int start,
int length,
9571 const char ** data_array,
9572 int start,
int length,
9631 const char ** string_array,
9633 const int * indices_array,
9689 const char * data_array,
9748 const int * data_array,
10043 const float* data_array,
10102 const double* data_array,
10157 const char** data_array,
10158 int start,
int length,
10217 const int * data_fixed_array,
10218 int data_fixed_length,
10219 const int * sizes_fixed_array,
10221 int sizes_fixed_length,
10281 int data_fixed_length,
10282 const int * sizes_fixed_array,
10284 int sizes_fixed_length,
10344 int data_fixed_length,
10345 const int * sizes_fixed_array,
10347 int sizes_fixed_length,
10407 int data_fixed_length,
10408 const int * sizes_fixed_array,
10410 int sizes_fixed_length,
10470 int data_fixed_length,
10471 const int * sizes_fixed_array,
10473 int sizes_fixed_length,
10532 const float * data_fixed_array,
10533 int data_fixed_length,
10534 const int * sizes_fixed_array,
10536 int sizes_fixed_length,
10595 const double * data_fixed_array,
10596 int data_fixed_length,
10597 const int * sizes_fixed_array,
10599 int sizes_fixed_length,
10658 const char ** data_fixed_array,
10659 int data_fixed_length,
10660 const int * sizes_fixed_array,
10662 int sizes_fixed_length,
10722 const char ** data_fixed_array,
10723 int data_fixed_length,
10724 const int * sizes_fixed_array,
10726 int sizes_fixed_length,
10755 const char * group_name );
10783 const char * group_name );
10831 const char * group_name,
10832 const int * membership_array,
10833 int start,
int length );
10922 int start,
int length );
11067 int * image_plane_count );
11101 int image_plane_count );
11170 const char * image_file_format_name,
11171 const char * image_planes,
11172 const char * destination_folder_path,
11173 const char * destination_file_name,
11174 int * destination_file_path );
11220 const char * image_file_format_name,
11221 const char * image_planes,
11222 const char * destination_folder_path,
11223 const char * destination_file_name,
11225 int * destination_file_path );
11284 const char * image_file_format_name,
11285 const char * image_planes,
11286 int * buffer_size );
11324 char * buffer,
int length );
11340 int * file_format_count );
11370 int file_format_count );
11405 int keyframe_count );
11439 int keyframe_count );
11581 float * values_array,
11623 float * values_array,
11667 int * values_array,
11709 int * values_array,
11747 float * values_array,
11748 int start,
int length );
11809 const float * values_array,
11844 const int * values_array,
11886 const float * values_array,
11928 const int * values_array,
11986 float * x_min,
float * y_min,
float * z_min,
11987 float * x_max,
float * y_max,
float * z_max,
11988 float * x_center,
float * y_center,
float * z_center );
12030 const float * values_array,
12031 int start,
int length );
12118 int * counts_array,
12119 int start,
int length );
12152 int * orders_array,
12153 int start,
int length );
12189 float * knots_array,
12190 int start,
int length );
12251 const int * counts_array,
12252 int start,
int length );
12286 const int * orders_array,
12287 int start,
int length );
12323 const float * knots_array,
12324 int start,
int length );
12423 const float* positions_array,
12496 const float* positions_array,
12497 int positions_start,
12498 int positions_length,
12499 const float* rotations_array,
12500 int rotations_start,
12501 int rotations_length,
12502 const float * scales_array,
12504 int scales_length);
12573 int * active_cache_count );
12598 int active_cache_count );
12621 const char * cache_name,
12623 int * property_value );
12648 const char * cache_name,
12650 int property_value );
12672 const char * file_name );
12693 const char * file_name );
12715 const char * file_name );
12749 const char * file_name,
12751 const char * node_label,
12780 const char * format,
12842 const char * format,
12843 const char * buffer,
13046 int* num_contexts );
13174 int * remaining_events );
13286 const
char * data_name,
13287 const
int * values_array,
13319 const
char * data_name,
13320 const
float * values_array,
13352 const
char * data_name,
13354 const
char * value );
13418 int * workitem_ids_array,
13448 const
char * data_name,
13481 const
char * data_name,
13515 const
char * data_name,
13516 float * data_array,
13552 const
char * data_name,
13586 int resultinfo_count );
13674 const
char * attribute_name,
13675 const
int * values_array,
13706 const
char * attribute_name,
13707 const
float * values_array,
13738 const
char * attribute_name,
13740 const
char * value );
13801 int * work_item_ids_array,
13830 const
char * attribute_name,
13862 const
char * attribute_name,
13895 const
char * attribute_name,
13896 float * data_array,
13931 const
char * attribute_name,
13964 int resultinfo_count );
14020 #endif // __HAPI_h__
HAPI_DECL HAPI_SetAttributeInt64ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set 64-bit integer array attribute data asynchronously.
HAPI_DECL HAPI_DeleteNode(const HAPI_Session *session, HAPI_NodeId node_id)
Delete a node from a node network. Only nodes with their HAPI_NodeInfo::createdPostAssetLoad set to t...
HAPI_DECL HAPI_AddAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info)
Add an attribute.
HAPI_DECL HAPI_GetWorkItemFloatAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, float *data_array, int length)
Gets float data from a work item attribute.
HAPI_DECL HAPI_SetAttributeFloatDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_array, int start, int length, int *job_id)
Set attribute float data asynchronously.
HAPI_DECL HAPI_GetAttributeStringData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_array, int start, int length)
Get attribute string data. Note that the string handles returned are only valid until the next time t...
HAPI_DECL HAPI_GetVolumeTileFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, float fill_value, const HAPI_VolumeTileInfo *tile, float *values_array, int length)
Retrieve floating point values of the voxels pointed to by a tile. Note that a tile may extend beyond...
HAPI_DECL HAPI_SetParmIntValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, int value)
Set single parm int value by name.
HAPI_DECL HAPI_GetSphereInfo(const HAPI_Session *session, HAPI_NodeId geo_node_id, HAPI_PartId part_id, HAPI_SphereInfo *sphere_info)
Get the sphere info on a geo part (if the part is a sphere).
HAPI_DECL HAPI_GetParmInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, HAPI_ParmInfo *parm_info)
Get the parm info of a parameter by parm id.
Data for an image, used with HAPI_GetImageInfo() and HAPI_SetImageInfo()
HAPI_DECL HAPI_SetAttributeInt8DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_array, int start, int length, int *job_id)
Set 8-bit attribute integer data asynchronously.
HAPI_DECL HAPI_GetImageFilePath(const HAPI_Session *session, HAPI_NodeId material_node_id, const char *image_file_format_name, const char *image_planes, const char *destination_folder_path, const char *destination_file_name, HAPI_ParmId texture_parm_id, int *destination_file_path)
Get the file name that this image would be saved to.
HAPI_DECL HAPI_GetAttributeInt16ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_Int16 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute 16-bit integer data asynchronously. Each entry in an array attribute can have var...
HAPI_DECL HAPI_LoadNodeFromFile(const HAPI_Session *session, const char *file_name, HAPI_NodeId parent_node_id, const char *node_label, HAPI_Bool cook_on_load, HAPI_NodeId *new_node_id)
Loads and creates a previously saved node and all its contents from given file. The saved file must h...
HAPI_DECL HAPI_GetStringBatchSize(const HAPI_Session *session, const int *string_handle_array, int string_handle_count, int *string_buffer_size)
Gives back the length of the buffer needed to hold all the values null-separated for the given string...
HAPI_DECL HAPI_GetNodeFromPath(const HAPI_Session *session, const HAPI_NodeId parent_node_id, const char *path, HAPI_NodeId *node_id)
Get the id of the node with the specified path.
HAPI_DECL HAPI_GetStringBatch(const HAPI_Session *session, char *char_buffer, int char_array_length)
Gives back the values of the given string handles. The given char array is filled with null-separated...
HAPI_DECL HAPI_SetAnimCurve(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, int parm_index, const HAPI_Keyframe *curve_keyframes_array, int keyframe_count)
Set an animation curve on a parameter of an exposed node.
HAPI_DECL HAPI_SetAttributeUInt8UniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute unsigned 8-bit int data to the same unique value asynchronously.
HAPI_DECL HAPI_SaveGeoToFile(const HAPI_Session *session, HAPI_NodeId node_id, const char *file_name)
Saves a geometry to file. The type of file to save is to be determined by the extension ie...
HAPI_DECL HAPI_GetAttributeUInt8ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_UInt8 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute unsigned 8-bit integer data. Each entry in an array attribute can have varying ar...
HAPI_DECL HAPI_SetNodeDisplay(const HAPI_Session *session, HAPI_NodeId node_id, int onOff)
Set the specified node's display flag.
HAPI_DECL HAPI_GetNodeCookResultLength(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_StatusVerbosity verbosity, int *buffer_length)
Gets the length of the cook result string (errors and warnings) of a specific node.
HAPI_DECL HAPI_SetAttributeInt64UniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute 64-bit int data to the same unique value.
HAPI_DECL HAPI_GetPDGGraphContextId(const HAPI_Session *session, HAPI_NodeId top_node_id, HAPI_PDG_GraphContextId *context_id)
Get the PDG graph context for the specified TOP node.
HAPI_DECL HAPI_GetServerEnvVarList(const HAPI_Session *session, HAPI_StringHandle *values_array, int start, int length)
Provides a list of all of the environment variables in the server's process.
HAPI_DECL HAPI_GetAttributeInt8DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int8 *data_array, int start, int length, int *job_id)
Get attribute 8-bit integer data asynchronously.
Data for a PDG output file.
HAPI_DECL HAPI_AddGroup(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, const char *group_name)
Add a group to the input geo with the given type and name.
HAPI_DECL HAPI_GetGroupNames(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_GroupType group_type, HAPI_StringHandle *group_names_array, int group_count)
Get group names for an entire geo. Please note that this function is NOT per-part, but it is per-geo. The companion function HAPI_GetGroupMembership() IS per-part. Also keep in mind that the name string handles are only valid until the next time this function is called.
HAPI_GetWorkitemStringData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, HAPI_StringHandle *data_array, int length)
Gets string ids from a work item member.
HAPI_DECL HAPI_LoadGeoFromMemory(const HAPI_Session *session, HAPI_NodeId node_id, const char *format, const char *buffer, int length)
Loads a geometry from memory and put its contents onto a SOP node.
HAPI_DECL HAPI_SetAttributeDictionaryData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_array, int start, int length)
Set attribute dictionary data. The dictionary data should be provided as JSON-encoded strings...
HAPI_DECL HAPI_SetParmExpression(const HAPI_Session *session, HAPI_NodeId node_id, const char *value, HAPI_ParmId parm_id, int index)
Set (push) an expression string. We can only set a single value at a time because we want to avoid fi...
HAPI_DECL HAPI_GetParmFloatValues(const HAPI_Session *session, HAPI_NodeId node_id, float *values_array, int start, int length)
Fill an array of parameter float values. This is more efficient than calling HAPI_GetParmFloatValue()...
HAPI_DECL HAPI_GetAttributeInt16ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_Int16 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute 16-bit integer data. Each entry in an array attribute can have varying array leng...
HAPI_DECL HAPI_GetActiveCacheNames(const HAPI_Session *session, HAPI_StringHandle *cache_names_array, int active_cache_count)
Get the names of the currently active caches.
int HAPI_PDG_WorkItemId
Use this with PDG functions.
HAPI_DECL HAPI_GetMessageNodeIds(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_NodeId *message_node_ids_array, int count)
Get the ids of message nodes set in the "Type Properties".
HAPI_DECL HAPI_GetAttributeFloatDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, float *data_array, int start, int length, int *job_id)
Get attribute float data asynchronously.
HAPI_DECL HAPI_GetParameters(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmInfo *parm_infos_array, int start, int length)
Fill an array of HAPI_ParmInfo structs with parameter information from the asset instance node...
HAPI_DECL HAPI_ConvertTransformEulerToMatrix(const HAPI_Session *session, const HAPI_TransformEuler *transform, float *matrix)
Converts HAPI_TransformEuler into a 4x4 transform matrix.
HAPI_DECL HAPI_ParmHasExpression(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, HAPI_Bool *has_expression)
See if a parameter has an expression.
HAPI_SetWorkitemFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, const float *values_array, int length)
Adds float data to a pending PDG workitem data member for the given node.
int HAPI_PDG_GraphContextId
Use this with PDG functions.
HAPI_DECL HAPI_GetPDGGraphContexts(const HAPI_Session *session, HAPI_StringHandle *context_names_array, HAPI_PDG_GraphContextId *context_id_array, int start, int length)
Return an array of PDG graph context names and ids, the first count names will be returned...
HAPI_DECL HAPI_ConvertTransform(const HAPI_Session *session, const HAPI_TransformEuler *transform_in, HAPI_RSTOrder rst_order, HAPI_XYZOrder rot_order, HAPI_TransformEuler *transform_out)
Converts the transform described by a HAPI_TransformEuler struct into a different transform and rotat...
HAPI_DECL HAPI_SetAttributeIntArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set integer array attribute data asynchronously.
HAPI_DECL HAPI_GetAttributeStringArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute string data asynchronously. Each entry in an array attribute can have varying arr...
HAPI_DECL HAPI_RevertGeo(const HAPI_Session *session, HAPI_NodeId node_id)
Remove all changes that have been committed to this geometry. If this is an intermediate result node ...
HAPI_DECL HAPI_GetAvailableAssetCount(const HAPI_Session *session, HAPI_AssetLibraryId library_id, int *asset_count)
Get the number of assets contained in an asset library. You should call HAPI_LoadAssetLibraryFromFile...
HAPI_DECL HAPI_GetAttributeInt64ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_Int64 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute 64-bit integer data. Each entry in an array attribute can have varying array leng...
HAPI_DECL HAPI_GetGroupMembership(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, const char *group_name, HAPI_Bool *membership_array_all_equal, int *membership_array, int start, int length)
Get group membership.
HAPI_DECL HAPI_GetParmIdFromName(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, HAPI_ParmId *parm_id)
All parameter APIs require a HAPI_ParmId but if you know the parameter you wish to operate on by name...
HAPI_DECL HAPI_SetParmIntValues(const HAPI_Session *session, HAPI_NodeId node_id, const int *values_array, int start, int length)
Set (push) an array of parameter int values.
HAPI_DECL HAPI_GetAttributeFloat64DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, double *data_array, int start, int length, int *job_id)
Get attribute 64-bit float data asynchronously.
HAPI_DECL HAPI_GetAttributeDictionaryDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_array, int start, int length, int *job_id)
Get attribute dictionary data asynchronously.
HAPI_DECL HAPI_SetCacheProperty(const HAPI_Session *session, const char *cache_name, HAPI_CacheProperty cache_property, int property_value)
Lets you modify specific properties of the different memory caches in the current Houdini context...
HAPI_DECL HAPI_GetTime(const HAPI_Session *session, float *time)
Gets the global time of the scene. All API calls deal with this time to cook.
HAPI_DECL HAPI_SetAttributeInt8ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set 8-bit integer array attribute data.
HAPI_DECL HAPI_ConvertTransformQuatToMatrix(const HAPI_Session *session, const HAPI_Transform *transform, float *matrix)
Converts HAPI_Transform into a 4x4 transform matrix.
HAPI_DECL HAPI_GetAttributeFloat64ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, double *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute 64-bit float data asynchronously. Each entry in an array attribute can have varyi...
HAPI_DECL HAPI_Cleanup(const HAPI_Session *session)
Clean up memory. This will unload all assets and you will need to call HAPI_Initialize() again to be ...
HAPI_DECL HAPI_SetAttributeFloatUniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute float data to the same unique value.
HAPI_DECL HAPI_GetAssetInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_AssetInfo *asset_info)
Fill an asset_info struct from a node.
HAPI_DECL HAPI_GetAttributeUInt8ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_UInt8 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute unsigned 8-bit integer data asynchronously. Each entry in an array attribute can ...
HAPI_DECL HAPI_IsSessionValid(const HAPI_Session *session)
Checks whether the session identified by HAPI_Session::id is a valid session opened in the implementa...
HAPI_DECL HAPI_GetAttributeStringArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute string data. Each entry in an array attribute can have varying array lengths...
HAPI_DECL HAPI_SetParmFloatValues(const HAPI_Session *session, HAPI_NodeId node_id, const float *values_array, int start, int length)
Set (push) an array of parameter float values.
HAPI_DECL HAPI_GetFirstVolumeTile(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_VolumeTileInfo *tile)
Iterate through a volume based on 8x8x8 sections of the volume Start iterating through the value of t...
HAPI_DECL HAPI_GetServerEnvString(const HAPI_Session *session, const char *variable_name, HAPI_StringHandle *value)
Get environment variable from the server process as a string.
HAPI_DECL HAPI_GetFaceCounts(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int *face_counts_array, int start, int length)
Get the array of faces where the nth integer in the array is the number of vertices the nth face has...
HAPI_DECL HAPI_CreateThriftSharedMemorySession(HAPI_Session *session, const char *shared_mem_name, const HAPI_SessionInfo *session_info)
Creates a Thrift RPC session using a shared memory buffer as the transport mechanism.
HAPI_DECL HAPI_SetVertexList(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const int *vertex_list_array, int start, int length)
Set array containing the vertex-point associations where the ith element in the array is the point in...
HAPI_DECL HAPI_GetNumWorkItems(const HAPI_Session *session, HAPI_NodeId node_id, int *num)
Gets the number of work items that are available on the given node. Should be used with HAPI_GetWorkI...
HAPI_DECL HAPI_SetVolumeTileFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const HAPI_VolumeTileInfo *tile, const float *values_array, int length)
Set the values of a float tile: this is an 8x8x8 subsection of the volume.
HAPI_DECL HAPI_GetGeoSize(const HAPI_Session *session, HAPI_NodeId node_id, const char *format, int *size)
Cache the current state of the geo to memory, given the format, and return the size. Use this size with your call to HAPI_SaveGeoToMemory() to copy the cached geo to your buffer. It is guaranteed that the size will not change between your call to HAPI_GetGeoSize() and HAPI_SaveGeoToMemory().
HAPI_DECL HAPI_SetAttributeUInt8Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_array, int start, int length)
Set unsigned 8-bit attribute integer data.
HAPI_DECL HAPI_GetParmFloatValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, float *value)
Get single parm float value by name.
HAPI_DECL HAPI_SetAttributeFloatArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set float array attribute data asynchronously.
HAPI_DECL HAPI_GetImagePlaneCount(const HAPI_Session *session, HAPI_NodeId material_node_id, int *image_plane_count)
Get the number of image planes for the just rendered image.
HAPI_DECL HAPI_CreateHeightFieldInput(const HAPI_Session *session, HAPI_NodeId parent_node_id, const char *name, int xsize, int ysize, float voxelsize, HAPI_HeightFieldSampling sampling, HAPI_NodeId *heightfield_node_id, HAPI_NodeId *height_node_id, HAPI_NodeId *mask_node_id, HAPI_NodeId *merge_node_id)
Creates the required node hierarchy needed for heightfield inputs.
HAPI_DECL HAPI_GetVertexList(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int *vertex_list_array, int start, int length)
Get array containing the vertex-point associations where the ith element in the array is the point in...
HAPI_DECL HAPI_GetVolumeVisualInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_VolumeVisualInfo *visual_info)
Retrieve the visualization meta-data of the volume.
HAPI_DECL HAPI_SetCompositorOptions(const HAPI_Session *session, const HAPI_CompositorOptions *compositor_options)
Sets the global compositor options.
HAPI_DECL HAPI_SetAttributeStringUniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute string data to the same unique value asynchronously.
HAPI_DECL HAPI_GetStringBufLength(const HAPI_Session *session, HAPI_StringHandle string_handle, int *buffer_length)
Gives back the string length of the string with the given handle.
HAPI_DECL HAPI_GetComposedChildNodeList(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_NodeId *child_node_ids_array, int count)
Get the composed list of child node ids from the previous call to HAPI_ComposeChildNodeList().
HAPI_DECL HAPI_GetStatusStringBufLength(const HAPI_Session *session, HAPI_StatusType status_type, HAPI_StatusVerbosity verbosity, int *buffer_length)
Return length of string buffer storing status string message.
HAPI_DECL HAPI_CreateWorkItem(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId *work_item_id, const char *name, int index)
Creates a new pending work item for the given node. The work item will not be submitted to the graph ...
HAPI_DECL HAPI_GetSupportedImageFileFormats(const HAPI_Session *session, HAPI_ImageFileFormat *formats_array, int file_format_count)
Get a list of support image file formats - their names, descriptions and a list of recognized extensi...
HAPI_DECL HAPI_SetAttributeFloat64ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set 64-bit float array attribute data.
HAPI_GetNumWorkitems(const HAPI_Session *session, HAPI_NodeId node_id, int *num)
Gets the number of workitems that are available on the given node. Should be used with HAPI_GetWorkit...
HAPI_DECL HAPI_StartThriftNamedPipeServer(const HAPI_ThriftServerOptions *options, const char *pipe_name, HAPI_ProcessId *process_id, const char *log_file)
Starts a Thrift RPC server process on the local host serving clients on a Windows named pipe or a Uni...
HAPI_DECL HAPI_GetParmNodeValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, HAPI_NodeId *value)
Get a single node id parm value of an Op Path parameter. This is how you see which node is connected ...
HAPI_DECL HAPI_SetCustomString(const HAPI_Session *session, const char *string_value, HAPI_StringHandle *handle_value)
Adds the given string to the string table and returns the handle. It is the responsibility of the cal...
HAPI_DECL HAPI_SetParmNodeValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, HAPI_NodeId value)
Set a node id parm value of an Op Path parameter. For example, This is how you connect the geometry o...
HAPI_DECL HAPI_RevertParmToDefault(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index)
Revert single parm by name to default.
HAPI_DECL HAPI_GetPDGState(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id, int *pdg_state)
Gets the state of a PDG graph.
HAPI_DECL HAPI_SetAttributeIntDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_array, int start, int length, int *job_id)
Set attribute integer data asynchronously.
HAPI_DECL HAPI_SetAttributeIntUniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute int data to the same unique value.
HAPI_DECL HAPI_GetBoxInfo(const HAPI_Session *session, HAPI_NodeId geo_node_id, HAPI_PartId part_id, HAPI_BoxInfo *box_info)
Get the box info on a geo part (if the part is a box).
HAPI_GetWorkitemFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, float *data_array, int length)
Gets float data from a work item member.
HAPI_DECL HAPI_GetMessageNodeCount(const HAPI_Session *session, HAPI_NodeId node_id, int *count)
Get the number of message nodes set in "Type Properties".
HAPI_DECL HAPI_ExtractImageToFile(const HAPI_Session *session, HAPI_NodeId material_node_id, const char *image_file_format_name, const char *image_planes, const char *destination_folder_path, const char *destination_file_name, int *destination_file_path)
Extract a rendered image to a file.
HAPI_DECL HAPI_SetVolumeTileIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const HAPI_VolumeTileInfo *tile, const int *values_array, int length)
Set the values of an int tile: this is an 8x8x8 subsection of the volume.
HAPI_DECL HAPI_GetHandleBindingInfo(const HAPI_Session *session, HAPI_NodeId node_id, int handle_index, HAPI_HandleBindingInfo *handle_binding_infos_array, int start, int length)
Fill an array of HAPI_HandleBindingInfo structs with information about the binding of a particular ha...
HAPI_DECL HAPI_GetAttributeInt16Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int16 *data_array, int start, int length)
Get attribute 16-bit integer data.
HAPI_DECL HAPI_Shutdown(const HAPI_Session *session)
When using an in-process session, this method must be called in order for the host process to shutdow...
HAPI_DECL HAPI_QueryNodeOutputConnectedCount(const HAPI_Session *session, HAPI_NodeId node_id, int output_idx, HAPI_Bool into_subnets, HAPI_Bool through_dots, int *connected_count)
Get the number of nodes currently connected to the given node at the output index.
Info for a PDG work item.
HAPI_CreateWorkitem(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId *workitem_id, const char *name, int index)
Creates a new pending workitem for the given node. The workitem will not be submitted to the graph un...
HAPI_DECL HAPI_SetAttributeInt8ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set 8-bit integer array attribute data asynchronously.
HAPI_DECL HAPI_SetAttributeInt64DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_array, int start, int length, int *job_id)
Set 64-bit attribute integer data asynchronously.
HAPI_DECL HAPI_GetImageInfo(const HAPI_Session *session, HAPI_NodeId material_node_id, HAPI_ImageInfo *image_info)
Get information about the image that was just rendered, like resolution and default file format...
HAPI_DECL HAPI_GetImagePlanes(const HAPI_Session *session, HAPI_NodeId material_node_id, HAPI_StringHandle *image_planes_array, int image_plane_count)
Get the names of the image planes of the just rendered image.
HAPI_DECL HAPI_SetTimelineOptions(const HAPI_Session *session, const HAPI_TimelineOptions *timeline_options)
Sets the global timeline options.
HAPI_DECL HAPI_SetAttributeIntArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set integer array attribute data.
HAPI_DECL HAPI_SetAttributeStringData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_array, int start, int length)
Set attribute string data.
HAPI_DECL HAPI_GetObjectInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ObjectInfo *object_info)
Get the object info on an OBJ node.
HAPI_DECL HAPI_GetAttributeIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, int *data_array, int start, int length)
Get attribute integer data.
HAPI_DECL HAPI_GetParmIntValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, int *value)
Get single parm int value by name.
HAPI_DECL HAPI_SetViewport(const HAPI_Session *session, const HAPI_Viewport *viewport)
Set the HAPI_Viewport info for synchronizing viewport in SessionSync. When SessionSync is running...
HAPI_DECL HAPI_GetCookingTotalCount(const HAPI_Session *session, int *count)
Get total number of nodes that need to cook in the current session.
HAPI_DECL HAPI_GetNodePath(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_NodeId relative_to_node_id, HAPI_StringHandle *path)
Get the node absolute path in the Houdini node network or a relative path any other node...
HAPI_DECL HAPI_GetOutputGeoInfos(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_GeoInfo *geo_infos_array, int count)
Gets the geometry info structs (HAPI_GeoInfo) for a node's main geometry outputs. This method can onl...
HAPI_DECL HAPI_GetAttributeInt8Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int8 *data_array, int start, int length)
Get attribute 8-bit integer data.
HAPI_DECL HAPI_GetAttributeFloat64ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, double *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute 64-bit float data. Each entry in an array attribute can have varying array length...
HAPI_DECL HAPI_ConvertMatrixToQuat(const HAPI_Session *session, const float *matrix, HAPI_RSTOrder rst_order, HAPI_Transform *transform_out)
Converts a 4x4 matrix into its TRS form.
HAPI_GetWorkitemDataLength(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, int *length)
Gets the length of the workitem data member. It is the length of the array of data.
HAPI_DECL HAPI_GetParmTagName(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, int tag_index, HAPI_StringHandle *tag_name)
Get the tag name on a parameter given an index.
Meta-data about an HDA, returned by HAPI_GetAssetInfo()
HAPI_DECL HAPI_SetAttributeInt16Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_array, int start, int length)
Set 16-bit attribute integer data.
HAPI_DECL HAPI_DeleteAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info)
Delete an attribute from an input geo.
HAPI_DECL HAPI_ResetSimulation(const HAPI_Session *session, HAPI_NodeId node_id)
Resets the simulation cache of the asset. This is very useful for assets that use dynamics...
HAPI_DECL HAPI_GetAttributeIntDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, int *data_array, int start, int length, int *job_id)
Get attribute integer data asynchronously.
HAPI_DECL HAPI_GetAssetDefinitionParmCounts(const HAPI_Session *session, HAPI_AssetLibraryId library_id, const char *asset_name, int *parm_count, int *int_value_count, int *float_value_count, int *string_value_count, int *choice_value_count)
Get the number of asset parameters contained in an asset library, as well as the number of parameter ...
HAPI_DECL HAPI_GetInstancerPartTransforms(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_RSTOrder rst_order, HAPI_Transform *transforms_array, int start, int length)
Get the instancer part's list of transforms on which to instance the instanced parts you got from HAP...
HAPI_DECL HAPI_CloseSession(const HAPI_Session *session)
Closes a session. If the session has been established using RPC, then the RPC connection is closed...
HAPI_DECL HAPI_GetOutputGeoCount(const HAPI_Session *session, HAPI_NodeId node_id, int *count)
A helper method that gets the number of main geometry outputs inside an Object node or SOP node...
HAPI_DECL HAPI_GetTimelineOptions(const HAPI_Session *session, HAPI_TimelineOptions *timeline_options)
Gets the current global timeline options.
HAPI_DECL HAPI_ComposeChildNodeList(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_NodeTypeBits node_type_filter, HAPI_NodeFlagsBits node_flags_filter, HAPI_Bool recursive, int *count)
Compose a list of child nodes based on given filters.
HAPI_DECL HAPI_SetAttributeInt8UniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute 8-bit int data to the same unique value.
HAPI_DECL HAPI_GetImageMemoryBuffer(const HAPI_Session *session, HAPI_NodeId material_node_id, char *buffer, int length)
Fill your allocated buffer with the just extracted image buffer.
HAPI_DECL HAPI_SetAttributeDictionaryArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set attribute dictionary array data. The dictionary data should be provided as JSON-encoded strings...
HAPI_DECL HAPI_StartPerformanceMonitorProfile(const HAPI_Session *session, const char *title, int *profile_id)
Start a Houdini Performance Monitor profile. A profile records time and memory statistics from events...
HAPI_DECL HAPI_GetAttributeFloatArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, float *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute float data asynchronously. Each entry in an array attribute can have varying arra...
HAPI_DECL HAPI_GetComposedObjectTransforms(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_RSTOrder rst_order, HAPI_Transform *transform_array, int start, int length)
Fill an array of HAPI_Transform structs.
HAPI_DECL HAPI_SetAttributeDictionaryDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_array, int start, int length, int *job_id)
Set attribute dictionary data asynchronously. The dictionary data should be provided as JSON-encoded ...
HAPI_DECL HAPI_PythonThreadInterpreterLock(const HAPI_Session *session, HAPI_Bool locked)
Acquires or releases the Python interpreter lock. This is needed if HAPI is called from Python and HA...
Meta-data for an OBJ Node.
HAPI_DECL HAPI_GetAttributeInt8ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_Int8 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute 8-bit integer data. Each entry in an array attribute can have varying array lengt...
HAPI_DECL HAPI_GetAttributeFloatArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, float *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute float data. Each entry in an array attribute can have varying array lengths...
HAPI_DECL HAPI_ComposeObjectList(const HAPI_Session *session, HAPI_NodeId parent_node_id, const char *categories, int *object_count)
Compose a list of child object nodes given a parent node id.
HAPI_DECL HAPI_GetAttributeFloat64Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, double *data_array, int start, int length)
Get 64-bit attribute float data.
HAPI_DECL HAPI_GetAttributeUInt8DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_UInt8 *data_array, int start, int length, int *job_id)
Get attribute unsigned 8-bit integer data asynchronously.
HAPI_DECL HAPI_GetVolumeVoxelFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int x_index, int y_index, int z_index, float *values_array, int value_count)
Retrieve floating point values of the voxel at a specific index. Note that you must call HAPI_GetVolu...
HAPI_DECL HAPI_DeleteGroup(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, const char *group_name)
Remove a group from the input geo with the given type and name.
HAPI_DECL HAPI_SetWorkItemFloatAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, const float *values_array, int length)
Adds float data to a pending PDG work item attribute for the given node.
HAPI_DECL HAPI_RenameNode(const HAPI_Session *session, HAPI_NodeId node_id, const char *new_name)
Rename a node that you created. Only nodes with their HAPI_NodeInfo::createdPostAssetLoad set to true...
HAPI_DECL HAPI_GetVolumeInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_VolumeInfo *volume_info)
Retrieve any meta-data about the volume primitive, including its transform, location, scale, taper, resolution.
HAPI_DECL HAPI_SetCurveKnots(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const float *knots_array, int start, int length)
Set the knots of the curves in this part.
HAPI_DECL HAPI_DisconnectNodeOutputsAt(const HAPI_Session *session, HAPI_NodeId node_id, int output_index)
Disconnect all of the node's output connections at the output index.
HAPI_DECL HAPI_GetAttributeDictionaryData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_array, int start, int length)
Get attribute dictionary data.
HAPI_DECL HAPI_RenderTextureToImage(const HAPI_Session *session, HAPI_NodeId material_node_id, HAPI_ParmId parm_id)
Render only a single texture to an image for later extraction. An example use of this method might be...
Options to configure a Thrift server being started from HARC.
HAPI_DECL HAPI_CreateThriftNamedPipeSession(HAPI_Session *session, const char *pipe_name, const HAPI_SessionInfo *session_info)
Creates a Thrift RPC session using a Windows named pipe or a Unix domain socket as transport...
HAPI_DECL HAPI_SetAttributeIntUniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute int data to the same unique value asynchronously.
HAPI_DECL HAPI_SetCurveInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const HAPI_CurveInfo *info)
Set meta-data for the curve mesh, including the curve type, order, and periodicity.
HAPI_DECL HAPI_GetGroupNamesOnPackedInstancePart(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, HAPI_StringHandle *group_names_array, int group_count)
Get the group names for a packed instance part This functions allows you to get the group name for a ...
HAPI_GetWorkitemResultInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, HAPI_PDG_WorkItemOutputFile *resultinfo_array, int resultinfo_count)
Gets the info for workitem results. The number of workitem results is found on the HAPI_PDG_WorkItemI...
HAPI_DECL HAPI_SetAttributeInt8Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_array, int start, int length)
Set 8-bit attribute integer data.
HAPI_DECL HAPI_SetVolumeVoxelFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int x_index, int y_index, int z_index, const float *values_array, int value_count)
Set the values of a float voxel in the volume.
HAPI_DECL HAPI_GetVolumeBounds(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, float *x_min, float *y_min, float *z_min, float *x_max, float *y_max, float *z_max, float *x_center, float *y_center, float *z_center)
Get the bounding values of a volume.
HAPI_DECL HAPI_GetPreset(const HAPI_Session *session, HAPI_NodeId node_id, char *buffer, int buffer_length)
Generates a preset for the given asset.
Data associated with a PDG Event.
HAPI_DECL HAPI_GetSessionSyncInfo(const HAPI_Session *session, HAPI_SessionSyncInfo *session_sync_info)
Get the HAPI_SessionSyncInfo for synchronizing SessionSync state between Houdini and Houdini Engine i...
HAPI_DECL HAPI_SetAttributeUInt8DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_array, int start, int length, int *job_id)
Set unsigned 8-bit attribute integer data asynchronously.
HAPI_DECL HAPI_GetAttributeFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, float *data_array, int start, int length)
Get attribute float data.
HAPI_DECL HAPI_GetString(const HAPI_Session *session, HAPI_StringHandle string_handle, char *string_value, int length)
Gives back the string value of the string with the given handle.
HAPI_DECL HAPI_GetCurveInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_CurveInfo *info)
Retrieve any meta-data about the curves, including the curve's type, order, and periodicity.
HAPI_DECL HAPI_SetParmStringValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *value, HAPI_ParmId parm_id, int index)
Set (push) a string value. We can only set a single value at a time because we want to avoid fixed si...
HAPI_DECL HAPI_MergeHIPFile(const HAPI_Session *session, const char *file_name, HAPI_Bool cook_on_load, HAPI_HIPFileId *file_id)
Loads a .hip file into the main Houdini scene.
HAPI_DECL HAPI_SetSessionSync(const HAPI_Session *session, HAPI_Bool enable)
Enable or disable SessionSync mode.
Meta-data describing a Geo Part.
HAPI_DECL HAPI_CommitGeo(const HAPI_Session *session, HAPI_NodeId node_id)
Commit the current input geometry to the cook engine. Nodes that use this geometry node will re-cook ...
#define HAPI_DECL_DEPRECATED_REPLACE(hapi_ver, houdini_ver, replacement)
HAPI_DECL HAPI_SetAttributeUInt8ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set unsigned 8-bit integer array attribute data asynchronously.
HAPI_DECL HAPI_SaveGeoToMemory(const HAPI_Session *session, HAPI_NodeId node_id, char *buffer, int length)
Saves the cached geometry to your buffer in memory, whose format and required size is identified by t...
HAPI_DECL HAPI_QueryNodeInput(const HAPI_Session *session, HAPI_NodeId node_to_query, int input_index, HAPI_NodeId *connected_node_id)
Query which node is connected to another node's input.
HAPI_DECL HAPI_RemoveMultiparmInstance(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, int instance_position)
Remove the instance of a multiparm given by instance_position.
HAPI_DECL HAPI_GetPDGEvents(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id, HAPI_PDG_EventInfo *event_array, int length, int *event_count, int *remaining_events)
Returns PDG events that have been collected. Calling this function will remove those events from the ...
HAPI_DECL HAPI_ParmHasTag(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, const char *tag_name, HAPI_Bool *has_tag)
See if a parameter has a specific tag.
HAPI_DECL HAPI_GetParmChoiceLists(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmChoiceInfo *parm_choices_array, int start, int length)
Fill an array of HAPI_ParmChoiceInfo structs with parameter choice list information from the asset in...
HAPI_DECL HAPI_LoadHIPFile(const HAPI_Session *session, const char *file_name, HAPI_Bool cook_on_load)
Loads a .hip file into the main Houdini scene.
HAPI_DECL HAPI_GetAssetLibraryIds(const HAPI_Session *session, HAPI_AssetLibraryId *asset_library_ids_array, int start, int length)
Gets the HAPI_AssetLibraryId's for HDAs that are loaded in Houdini.
HAPI_DECL HAPI_GetJobStatus(const HAPI_Session *session, int job_id, HAPI_JobStatus *job_status)
Get status of a job.
Meta-data for a Houdini Node.
HAPI_DECL HAPI_GetWorkItemIntAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, int *data_array, int length)
Gets int data from a work item attribute.
HAPI_DECL HAPI_SetAttributeInt16UniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute 16-bit int data to the same unique value.
HAPI_DECL HAPI_SetWorkItemIntAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, const int *values_array, int length)
Adds integer data to a pending PDG work item attribute for the given node.
HAPI_DECL HAPI_GetOutputNodeId(const HAPI_Session *session, HAPI_NodeId node_id, int output, HAPI_NodeId *output_node_id)
Gets the node id of an output node in a SOP network.
HAPI_DECL HAPI_GetAttributeStringDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_array, int start, int length, int *job_id)
Get attribute string data asynchronously.
HAPI_DECL HAPI_GetHeightFieldData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, float *values_array, int start, int length)
Get the height field data for a terrain volume as a flattened 2D array of float heights. Should call HAPI_GetVolumeInfo() first to make sure the volume info is initialized.
HAPI_SetWorkitemStringData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, int data_index, const char *value)
Adds integer data to a pending PDG workitem data member for the given node.
HAPI_DECL HAPI_SetAttributeStringDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_array, int start, int length, int *job_id)
Set attribute string data asynchronously.
Configuration options for Houdini's compositing context.
HAPI_DECL HAPI_GetAttributeDictionaryArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute dictionary data. Each entry in an array attribute can have varying array lengths...
HAPI_DECL HAPI_GetParmExpression(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, HAPI_StringHandle *value)
Get single integer or float parm expression by name or Null string if no expression is present...
HAPI_GetWorkitemIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, int *data_array, int length)
Gets int data from a work item member.
HAPI_DECL HAPI_GetWorkItemOutputFiles(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, HAPI_PDG_WorkItemOutputFile *resultinfo_array, int resultinfo_count)
Gets the info for work item output files. The number of work item results is found on the HAPI_PDG_Wo...
HAPI_DECL HAPI_GetAttributeInt64DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int64 *data_array, int start, int length, int *job_id)
Get attribute 64-bit integer data asynchronously.
HAPI_DECL HAPI_SetGroupMembership(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, const char *group_name, const int *membership_array, int start, int length)
Set group membership.
HAPI_DECL HAPI_GetParmStringValues(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_Bool evaluate, HAPI_StringHandle *values_array, int start, int length)
Fill an array of parameter string handles. These handles must be used in conjunction with HAPI_GetStr...
HAPI_DECL HAPI_SetServerEnvString(const HAPI_Session *session, const char *variable_name, const char *value)
Set environment variable for the server process as a string.
HAPI_DECL HAPI_SetPartInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const HAPI_PartInfo *part_info)
Set the main part info struct (HAPI_PartInfo).
HAPI_DECL HAPI_SetAttributeInt16UniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute 16-bit int data to the same unique value asynchronously.
HAPI_DECL HAPI_CreateHeightfieldInputVolumeNode(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_NodeId *new_node_id, const char *name, int xsize, int ysize, float voxelsize)
Creates a volume input node that can be used with Heightfields.
HAPI_DECL HAPI_SetParmFloatValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, float value)
Set single parm float value by name.
HAPI_DECL HAPI_CancelPDGCook(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id)
Cancel the PDG cooking operation.
HAPI_DECL HAPI_ComposeNodeCookResult(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_StatusVerbosity verbosity, int *buffer_length)
Compose the cook result string (errors and warnings) of a specific node.
HAPI_DECL HAPI_CheckForSpecificErrors(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ErrorCodeBits errors_to_look_for, HAPI_ErrorCodeBits *errors_found)
Recursively check for specific errors by error code on a node.
HAPI_DECL HAPI_GetManagerNodeId(const HAPI_Session *session, HAPI_NodeType node_type, HAPI_NodeId *node_id)
Get the root node of a particular network type (ie. OBJ).
HAPI_DECL HAPI_SetAttributeDictionaryArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set attribute dictionary array data asynchronously. The dictionary should be provided as JSON-encoded...
HAPI_HeightFieldSampling
Type of sampling for heightfield.
HAPI_DECL HAPI_SetVolumeVoxelIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int x_index, int y_index, int z_index, const int *values_array, int value_count)
Set the values of a integer voxel in the volume.
HAPI_DECL HAPI_SetServerEnvInt(const HAPI_Session *session, const char *variable_name, int value)
Set environment variable for the server process as an integer.
HAPI_DECL HAPI_GetAttributeIntArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length)
Get array attribute integer data. Each entry in an array attribute can have varying array lengths...
HAPI_DECL HAPI_SetAttributeInt16DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_array, int start, int length, int *job_id)
Set 16-bit attribute integer data asynchronously.
HAPI_DECL HAPI_GetAttributeDictionaryArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_StringHandle *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute dictionary data asynchronously. Each entry in an array attribute can have varying...
HAPI_DECL HAPI_CreateThriftSocketSession(HAPI_Session *session, const char *host_name, int port, const HAPI_SessionInfo *session_info)
Creates a Thrift RPC session using a TCP socket as transport.
HAPI_DECL HAPI_GetNodeInputName(const HAPI_Session *session, HAPI_NodeId node_id, int input_idx, HAPI_StringHandle *name)
Get the name of an node's input. This function will return a string handle for the name which will be...
HAPI_DECL HAPI_SetSessionSyncInfo(const HAPI_Session *session, const HAPI_SessionSyncInfo *session_sync_info)
Set the HAPI_SessionSyncInfo for synchronizing SessionSync state between Houdini and Houdini Engine i...
HAPI_DECL HAPI_GetMaterialInfo(const HAPI_Session *session, HAPI_NodeId material_node_id, HAPI_MaterialInfo *material_info)
Get the material info.
Configurations for sessions.
HAPI_DECL HAPI_CreateCustomSession(HAPI_SessionType session_type, void *session_info, HAPI_Session *session)
Creates a new session using a custom implementation. Note that the implementation DLL must already ha...
Options which affect how nodes are cooked.
HAPI_DECL HAPI_SetHeightFieldData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const float *values_array, int start, int length)
Set the height field data for a terrain volume with the values from a flattened 2D array of float...
HAPI_DECL HAPI_SetAttributeStringArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set string array attribute data asynchronously.
HAPI_DECL HAPI_GetStatus(const HAPI_Session *session, HAPI_StatusType status_type, int *status)
Gives back the status code for a specific status type.
HAPI_DECL HAPI_GetConnectionError(char *string_value, int length, HAPI_Bool clear)
Return the connection error message.
HAPI_DECL HAPI_SetAttributeUInt8UniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute unsigned 8-bit int data to the same unique value.
HAPI_DECL HAPI_GetCurveOrders(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int *orders_array, int start, int length)
Retrieve the orders for each curve in the part if the curve has varying order.
HAPI_DECL HAPI_GetCurveKnots(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, float *knots_array, int start, int length)
Retrieve the knots of the curves in this part.
HAPI_DECL HAPI_GetAttributeInt64ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_Int64 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute 64-bit integer data asynchronously. Each entry in an array attribute can have var...
HAPI_DECL HAPI_GetAttributeInt64Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int64 *data_array, int start, int length)
Get attribute 64-bit integer data.
HAPI_DECL HAPI_SetAttributeFloat64ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set 64-bit float array attribute data asynchronously.
HAPI_DECL HAPI_GetParmWithTag(const HAPI_Session *session, HAPI_NodeId node_id, const char *tag_name, HAPI_ParmId *parm_id)
Get the first parm with a specific, ideally unique, tag on it. This is particularly useful for gettin...
HAPI_SetWorkitemIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId workitem_id, const char *data_name, const int *values_array, int length)
Adds integer data to a pending PDG workitem data member for the given node.
HAPI_DECL HAPI_SetAttributeStringArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set string array attribute data.
HAPI_DECL HAPI_SetObjectTransform(const HAPI_Session *session, HAPI_NodeId node_id, const HAPI_TransformEuler *trans)
Set the transform of an individual object. Note that the object nodes have to either be editable or h...
HAPI_DECL HAPI_GetPDGGraphContextsCount(const HAPI_Session *session, int *num_contexts)
Return the total number of PDG graph contexts found.
HAPI_DECL HAPI_ConvertMatrixToEuler(const HAPI_Session *session, const float *matrix, HAPI_RSTOrder rst_order, HAPI_XYZOrder rot_order, HAPI_TransformEuler *transform_out)
Converts a 4x4 matrix into its TRS form.
HAPI_DECL HAPI_GetAvailableAssets(const HAPI_Session *session, HAPI_AssetLibraryId library_id, HAPI_StringHandle *asset_names_array, int asset_count)
Get the names of the assets contained in an asset library.
HAPI_DECL HAPI_RemoveCustomString(const HAPI_Session *session, const HAPI_StringHandle string_handle)
Removes the specified string from the server and invalidates the handle.
HAPI_DECL HAPI_GetAttributeInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeOwner owner, HAPI_AttributeInfo *attr_info)
Get the attribute info struct for the attribute specified by name.
HAPI_DECL HAPI_GetAssetDefinitionParmInfos(const HAPI_Session *session, HAPI_AssetLibraryId library_id, const char *asset_name, HAPI_ParmInfo *parm_infos_array, int start, int length)
Fill an array of HAPI_ParmInfo structs with parameter information for the specified asset in the spec...
HAPI_DECL HAPI_StartThriftSocketServer(const HAPI_ThriftServerOptions *options, int port, HAPI_ProcessId *process_id, const char *log_file)
Starts a Thrift RPC server process on the local host serving clients on a TCP socket and waits for it...
HAPI_DECL HAPI_RemoveParmExpression(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, int index)
Remove the expression string, leaving the value of the parm at the current value of the expression...
HAPI_DECL HAPI_SetAttributeIndexedStringDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **string_array, int string_count, const int *indices_array, int indices_start, int indices_length, int *job_id)
Set attribute string data by index asynchronously.
HAPI_DECL HAPI_InsertMultiparmInstance(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, int instance_position)
Insert an instance of a multiparm before instance_position.
HAPI_DECL HAPI_GetAssetDefinitionParmTagName(const HAPI_Session *session, HAPI_AssetLibraryId library_id, const char *asset_name, HAPI_ParmId parm_id, int tag_index, HAPI_StringHandle *tag_name)
HAPI_DECL HAPI_Initialize(const HAPI_Session *session, const HAPI_CookOptions *cook_options, HAPI_Bool use_cooking_thread, int cooking_thread_stack_size, const char *houdini_environment_files, const char *otl_search_path, const char *dso_search_path, const char *image_dso_search_path, const char *audio_dso_search_path)
Create the asset manager, set up environment variables, and initialize the main Houdini scene...
HAPI_DECL HAPI_GetHIPFileNodeCount(const HAPI_Session *session, HAPI_HIPFileId id, int *count)
Gets the number of nodes that were created as a result of loading a .hip file.
HAPI_DECL HAPI_GetWorkItemInfo(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id, HAPI_PDG_WorkItemId work_item_id, HAPI_PDG_WorkItemInfo *work_item_info)
Retrieves the info of a given work item by id.
HAPI_DECL HAPI_CookNode(const HAPI_Session *session, HAPI_NodeId node_id, const HAPI_CookOptions *cook_options)
Initiate a cook on this node. Note that this may trigger cooks on other nodes if they are connected...
HAPI_DECL HAPI_GetAttributeNames(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_AttributeOwner owner, HAPI_StringHandle *attribute_names_array, int count)
Get list of attribute names by attribute owner. Note that the name string handles are only valid unti...
HAPI_DECL HAPI_SetPreset(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PresetType preset_type, const char *preset_name, const char *buffer, int buffer_length)
Sets a particular asset to a given preset.
Meta-data for a SOP Node.
HAPI_DECL HAPI_GetAssetDefinitionParmValues(const HAPI_Session *session, HAPI_AssetLibraryId library_id, const char *asset_name, int *int_values_array, int int_start, int int_length, float *float_values_array, int float_start, int float_length, HAPI_Bool string_evaluate, HAPI_StringHandle *string_values_array, int string_start, int string_length, HAPI_ParmChoiceInfo *choice_values_array, int choice_start, int choice_length)
Fill arrays of parameter int values, float values, string values, and choice values for parameters in...
HAPI_DECL HAPI_SetAttributeFloat64Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_array, int start, int length)
Set 64-bit attribute float data.
HAPI_DECL HAPI_ExtractImageToMemory(const HAPI_Session *session, HAPI_NodeId material_node_id, const char *image_file_format_name, const char *image_planes, int *buffer_size)
Extract a rendered image to memory.
HAPI_DECL HAPI_GetMaterialNodeIdsOnFaces(const HAPI_Session *session, HAPI_NodeId geometry_node_id, HAPI_PartId part_id, HAPI_Bool *are_all_the_same, HAPI_NodeId *material_ids_array, int start, int length)
Get material ids by face/primitive. The material ids returned will be valid as long as the asset is a...
HAPI_DECL HAPI_GetParmFile(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, const char *destination_directory, const char *destination_file_name)
Extract a file specified by path on a parameter. This will copy the file to the destination directory...
HAPI_DECL HAPI_GetTotalCookCount(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_NodeTypeBits node_type_filter, HAPI_NodeFlagsBits node_flags_filter, HAPI_Bool recursive, int *count)
Get the specified node's total cook count, including its children, if specified.
HAPI_DECL HAPI_SetAttributeInt16ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Set 16-bit integer array attribute data asynchronously.
HAPI_DECL HAPI_QueryNodeOutputConnectedNodes(const HAPI_Session *session, HAPI_NodeId node_id, int output_idx, HAPI_Bool into_subnets, HAPI_Bool through_dots, HAPI_NodeId *connected_node_ids_array, int start, int length)
Get the ids of nodes currently connected to the given node at the output index.
HAPI_DECL HAPI_GetWorkItemAttributeSize(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, int *length)
Gets the size of the work item attribute. It is the length of the array of data.
HAPI_DECL HAPI_CreateInProcessSession(HAPI_Session *session, const HAPI_SessionInfo *session_info)
Creates a new in-process session. There can only be one such session per host process.
HAPI_DECL HAPI_GetViewport(const HAPI_Session *session, HAPI_Viewport *viewport)
Get the HAPI_Viewport info for synchronizing viewport in SessionSync. When SessionSync is running thi...
HAPI_DECL HAPI_GetGroupMembershipOnPackedInstancePart(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_GroupType group_type, const char *group_name, HAPI_Bool *membership_array_all_equal, int *membership_array, int start, int length)
Get group membership for a packed instance part This functions allows you to get the group membership...
Data for global timeline, used with HAPI_SetTimelineOptions()
HAPI_DECL HAPI_GetVolumeVoxelIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int x_index, int y_index, int z_index, int *values_array, int value_count)
Retrieve integer point values of the voxel at a specific index. Note that you must call HAPI_GetVolum...
HAPI_DECL HAPI_SetAttributeInt64ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set 64-bit integer array attribute data.
HAPI_DECL HAPI_GetInstanceTransformsOnPart(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_RSTOrder rst_order, HAPI_Transform *transforms_array, int start, int length)
Fill an array of HAPI_Transform structs with the transforms of each instance of this instancer object...
HAPI_DECL HAPI_SetTime(const HAPI_Session *session, float time)
Sets the global time of the scene. All API calls will deal with this time to cook.
HAPI_DECL HAPI_CookPDGAllOutputs(const HAPI_Session *session, HAPI_NodeId cook_node_id, int generate_only, int blocking)
Starts a PDG cooking operation. This can be asynchronous. Progress can be checked with HAPI_GetPDGSta...
HAPI_DECL HAPI_GetComposedObjectList(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_ObjectInfo *object_infos_array, int start, int length)
Fill an array of HAPI_ObjectInfo structs.
HAPI_DECL HAPI_DirtyPDGNode(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_Bool clean_results)
Dirties the given node. Cancels the cook if necessary and then deletes all workitems on the node...
HAPI_DECL HAPI_SetWorkItemStringAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, int data_index, const char *value)
Adds integer data to a pending PDG work item attribute for the given node.
HAPI_DECL HAPI_GetCacheProperty(const HAPI_Session *session, const char *cache_name, HAPI_CacheProperty cache_property, int *property_value)
Lets you inspect specific properties of the different memory caches in the current Houdini context...
HAPI_DECL HAPI_SetCurveOrders(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const int *orders_array, int start, int length)
Set the orders for each curve in the part if the curve has varying order.
HAPI_DECL HAPI_BindCustomImplementation(HAPI_SessionType session_type, const char *dll_path)
Binds a new implementation DLL to one of the custom session slots.
HAPI_DECL HAPI_GetNodeCookResult(const HAPI_Session *session, char *string_value, int length)
Return the cook result string that was composed during a call to HAPI_GetNodeCookResultLength().
HAPI_DECL HAPI_SetAttributeFloat64DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_array, int start, int length, int *job_id)
Set 64-bit attribute float data asynchronously.
HAPI_DECL HAPI_GetAttributeIntArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, int *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute integer data asynchronously. Each entry in an array attribute can have varying ar...
HAPI_GetWorkitems(const HAPI_Session *session, HAPI_NodeId node_id, int *workitem_ids_array, int length)
Gets the list of work item ids for the given node.
HAPI_DECL HAPI_GetCompositorOptions(const HAPI_Session *session, HAPI_CompositorOptions *compositor_options)
Gets the global compositor options.
HAPI_DECL HAPI_SaveHIPFile(const HAPI_Session *session, const char *file_path, HAPI_Bool lock_nodes)
Saves a .hip file of the current Houdini scene.
HAPI_DECL HAPI_GetPresetCount(const HAPI_Session *session, const char *buffer, int buffer_length, int *count)
Gets the number of presets in an IDX file. When this method is called, the names of the presets are s...
HAPI_DECL HAPI_SetFaceCounts(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const int *face_counts_array, int start, int length)
Set the array of faces where the nth integer in the array is the number of vertices the nth face has...
HAPI_DECL HAPI_SetAttributeInt16ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int16 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set 16-bit integer array attribute data.
HAPI_DECL HAPI_CreateInputNode(const HAPI_Session *session, HAPI_NodeId parent_node_id, HAPI_NodeId *node_id, const char *name)
Creates a simple geometry SOP node that can accept geometry input. Inside the specified parent node...
HAPI_DECL HAPI_PausePDGCook(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id)
Pause the PDG cooking operation.
HAPI_DECL HAPI_CreateNode(const HAPI_Session *session, HAPI_NodeId parent_node_id, const char *operator_name, const char *node_label, HAPI_Bool cook_on_creation, HAPI_NodeId *new_node_id)
Create a node inside a node network. Nodes created this way will have their HAPI_NodeInfo::createdPos...
HAPI_DECL HAPI_SetImageInfo(const HAPI_Session *session, HAPI_NodeId material_node_id, const HAPI_ImageInfo *image_info)
Set image information like resolution and file format. This information will be used when extracting ...
HAPI_DECL HAPI_SetAttributeInt64Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_array, int start, int length)
Set 64-bit attribute integer data.
HAPI_DECL HAPI_GetParmInfoFromName(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, HAPI_ParmInfo *parm_info)
Get the parm info of a parameter by name.
HAPI_DECL HAPI_CommitWorkItems(const HAPI_Session *session, HAPI_NodeId node_id)
Commits any pending work items.
HAPI_DECL HAPI_GetAttributeInt16DataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_Int16 *data_array, int start, int length, int *job_id)
Get attribute 16-bit integer data asynchronously.
HAPI_DECL HAPI_GetAttributeUInt8Data(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, HAPI_AttributeInfo *attr_info, int stride, HAPI_UInt8 *data_array, int start, int length)
Get attribute unsigned 8-bit integer data.
HAPI_DECL HAPI_GetActiveCacheCount(const HAPI_Session *session, int *active_cache_count)
Get the number of currently active caches.
HAPI_DECL HAPI_LoadAssetLibraryFromMemory(const HAPI_Session *session, const char *library_buffer, int library_buffer_length, HAPI_Bool allow_overwrite, HAPI_AssetLibraryId *library_id)
Loads a Houdini asset library (OTL) from memory. It does NOT create anything inside the Houdini scene...
HAPI_DECL HAPI_ClearConnectionError()
Clears the connection error. Should be used before starting or creating Thrift server.
HAPI_DECL HAPI_SetAttributeFloat64UniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute 64-bit float data to the same unique value.
HAPI_DECL HAPI_GetServerEnvInt(const HAPI_Session *session, const char *variable_name, int *value)
Get environment variable from the server process as an integer.
HAPI_DECL HAPI_GetNodeInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_NodeInfo *node_info)
Fill an HAPI_NodeInfo struct.
HAPI_DECL HAPI_GetObjectTransform(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_NodeId relative_to_node_id, HAPI_RSTOrder rst_order, HAPI_Transform *transform)
Get the tranform of an OBJ node.
HAPI_DECL HAPI_GetUseHoudiniTime(const HAPI_Session *session, HAPI_Bool *enabled)
Returns whether the Houdini session will use the current time in Houdini when cooking and retrieving ...
HAPI_DECL HAPI_SetAttributeUInt8ArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_UInt8 *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set unsigned 8-bit integer array attribute data.
HAPI_DECL HAPI_SetAttributeFloatData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_array, int start, int length)
Set attribute float data.
HAPI_DECL HAPI_GetVolumeTileIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int fill_value, const HAPI_VolumeTileInfo *tile, int *values_array, int length)
Retrieve integer point values of the voxels pointed to by a tile. Note that a tile may extend beyond ...
HAPI_DECL HAPI_GetAssetDefinitionParmTagValue(const HAPI_Session *session, HAPI_AssetLibraryId library_id, const char *asset_name, HAPI_ParmId parm_id, const char *tag_name, HAPI_StringHandle *tag_value)
HAPI_DECL HAPI_GetSupportedImageFileFormatCount(const HAPI_Session *session, int *file_format_count)
Get the number of supported texture file formats.
HAPI_DECL HAPI_GetParmIntValues(const HAPI_Session *session, HAPI_NodeId node_id, int *values_array, int start, int length)
Fill an array of parameter int values. This is more efficient than calling HAPI_GetParmIntValue() ind...
HAPI_DECL HAPI_IsInitialized(const HAPI_Session *session)
Check whether the runtime has been initialized yet using HAPI_Initialize(). Function will return HAPI...
HAPI_DECL HAPI_Interrupt(const HAPI_Session *session)
Interrupt a cook or load operation.
HAPI_DECL HAPI_GetGeoInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_GeoInfo *geo_info)
Get the geometry info struct (HAPI_GeoInfo) on a SOP node.
HAPI_DECL HAPI_GetHIPFileNodeIds(const HAPI_Session *session, HAPI_HIPFileId id, HAPI_NodeId *node_ids, int length)
Fills an array of HAPI_NodeId of nodes that were created as a result of loading the HIP file specifie...
HAPI_DECL HAPI_GetConnectionErrorLength(int *buffer_length)
Return the length of string buffer storing connection error message.
HAPI_DECL HAPI_GetHandleInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_HandleInfo *handle_infos_array, int start, int length)
Fill an array of HAPI_HandleInfo structs with information about every exposed user manipulation handl...
HAPI_DECL HAPI_GetNextVolumeTile(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_VolumeTileInfo *tile)
Iterate through a volume based on 8x8x8 sections of the volume Continue iterating through the value o...
HAPI_DECL HAPI_GetSessionEnvInt(const HAPI_Session *session, HAPI_SessionEnvIntType int_type, int *value)
Gives back a certain session-specific environment integers like current license type being used...
HAPI_DECL HAPI_GetNodeOutputName(const HAPI_Session *session, HAPI_NodeId node_id, int output_idx, HAPI_StringHandle *name)
Get the name of an node's output. This function will return a string handle for the name which will b...
HAPI_DECL HAPI_RenderCOPToImage(const HAPI_Session *session, HAPI_NodeId cop_node_id)
Render a single texture from a COP to an image for later extraction.
HAPI_DECL HAPI_SetCurveCounts(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const int *counts_array, int start, int length)
Set the number of vertices for each curve in the part.
HAPI_DECL HAPI_GetWorkItemStringAttribute(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PDG_WorkItemId work_item_id, const char *attribute_name, HAPI_StringHandle *data_array, int length)
Gets string ids from a work item attribute.
HAPI_DECL HAPI_GetCookingCurrentCount(const HAPI_Session *session, int *count)
Get current number of nodes that have already cooked in the current session. Note that this is a very...
HAPI_DECL HAPI_GetComposedNodeCookResult(const HAPI_Session *session, char *string_value, int length)
Return cook result string message on a single node.
HAPI_DECL HAPI_SetAttributeFloat64UniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const double *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute 64-bit float data to the same unique asynchronously.
HAPI_DECL HAPI_GetPresetBufLength(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PresetType preset_type, const char *preset_name, int *buffer_length)
Generate a preset blob of the current state of all the parameter values, cache it, and return its size in bytes.
HAPI_DECL HAPI_GetEdgeCountOfEdgeGroup(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *group_name, int *edge_count)
Gets the number of edges that belong to an edge group on a geometry part.
HAPI_DECL HAPI_GetPresetNames(const HAPI_Session *session, const char *buffer, int buffer_length, HAPI_StringHandle *preset_names_array, int preset_names_count)
Gets the names of presets in an IDX file. HAPI_GetPresetCount() must be called before calling this me...
HAPI_DECL HAPI_DisconnectNodeInput(const HAPI_Session *session, HAPI_NodeId node_id, int input_index)
Disconnect a node input.
HAPI_GetWorkitemInfo(const HAPI_Session *session, HAPI_PDG_GraphContextId graph_context_id, HAPI_PDG_WorkItemId workitem_id, HAPI_PDG_WorkItemInfo *workitem_info)
Retrieves the info of a given workitem by id.
HAPI_DECL HAPI_SetAttributeInt8UniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int8 *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute 8-bit int data to the same unique value asynchronously.
HAPI_DECL HAPI_SetTransformAnimCurve(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_TransformComponent trans_comp, const HAPI_Keyframe *curve_keyframes_array, int keyframe_count)
A specialized convenience function to set the T,R,S values on an exposed node.
HAPI_DECL HAPI_GetAttributeInt8ArrayDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *attr_name, HAPI_AttributeInfo *attr_info, HAPI_Int8 *data_fixed_array, int data_fixed_length, int *sizes_fixed_array, int start, int sizes_fixed_length, int *job_id)
Get array attribute 8-bit integer data asynchronously. Each entry in an array attribute can have vary...
HAPI_DECL HAPI_GetPartInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_PartInfo *part_info)
Get a particular part info struct.
HAPI_DECL HAPI_GetLoadedAssetLibraryCount(const HAPI_Session *session, int *count)
Gets the number of HDAs that have been loaded by Houdini.
HAPI_DECL HAPI_GetStatusString(const HAPI_Session *session, HAPI_StatusType status_type, char *string_value, int length)
Return status string message.
HAPI_DECL HAPI_GetServerEnvVarCount(const HAPI_Session *session, int *env_count)
Provides the number of environment variables that are in the server environment's process...
HAPI_DECL HAPI_SetAttributeFloatUniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute float data to the same unique value asynchronously.
int HAPI_NodeId
See Nodes Basics.
HAPI_DECL HAPI_StopPerformanceMonitorProfile(const HAPI_Session *session, int profile_id, const char *file_path)
Stop the Performance Monitor profile that matches the given profile id and save out the profile's sta...
HAPI_CacheProperty
Identifies a memory cache.
HAPI_DECL HAPI_SetAttributeIndexedStringData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char **string_array, int string_count, const int *indices_array, int indices_start, int indices_length)
Set attribute string data by index.
HAPI_DECL HAPI_SetAttributeInt64UniqueDataAsync(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const HAPI_Int64 *data_array, int data_length, int start_index, int num_indices, int *job_id)
Set multiple attribute 64-bit int data to the same unique value asynchronously.
HAPI_DECL HAPI_SetVolumeInfo(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const HAPI_VolumeInfo *volume_info)
Set the volume info of a geo on a geo input.
HAPI_DECL HAPI_SetUseHoudiniTime(const HAPI_Session *session, HAPI_Bool enabled)
Sets whether the Houdini session should use the current time in Houdini when cooking and retrieving d...
Data for a single Key Frame.
HAPI_DECL HAPI_GetGroupCountOnPackedInstancePart(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int *pointGroupCount, int *primitiveGroupCount)
Get group counts for a specific packed instanced part.
HAPI_DECL HAPI_ConnectNodeInput(const HAPI_Session *session, HAPI_NodeId node_id, int input_index, HAPI_NodeId node_id_to_connect, int output_index)
Connect two nodes together.
HAPI_DECL HAPI_CookPDG(const HAPI_Session *session, HAPI_NodeId cook_node_id, int generate_only, int blocking)
Starts a PDG cooking operation. This can be asynchronous. Progress can be checked with HAPI_GetPDGSta...
HAPI_DECL HAPI_GetCurveCounts(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, int *counts_array, int start, int length)
Retrieve the number of vertices for each curve in the part.
HAPI_DECL HAPI_LoadAssetLibraryFromFile(const HAPI_Session *session, const char *file_path, HAPI_Bool allow_overwrite, HAPI_AssetLibraryId *library_id)
Loads a Houdini asset library (OTL) from a .otl file. It does NOT create anything inside the Houdini ...
HAPI_DECL HAPI_LoadGeoFromFile(const HAPI_Session *session, HAPI_NodeId node_id, const char *file_name)
Loads a geometry file and put its contents onto a SOP node.
HAPI_DECL HAPI_SetAttributeFloatArrayData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const float *data_fixed_array, int data_fixed_length, const int *sizes_fixed_array, int start, int sizes_fixed_length)
Set float array attribute data.
HAPI_DECL HAPI_GetAssetLibraryFilePath(const HAPI_Session *session, HAPI_AssetLibraryId asset_library_id, HAPI_StringHandle *file_path_sh)
Gets the HAPI_StringHandle for the file path of a loaded asset library.
HAPI_DECL HAPI_GetParmStringValue(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name, int index, HAPI_Bool evaluate, HAPI_StringHandle *value)
Get single parm string value by name.
HAPI_DECL HAPI_GetEnvInt(HAPI_EnvIntType int_type, int *value)
Gives back a certain environment integers like version number. Note that you do not need a session fo...
HAPI_DECL HAPI_GetInstancedObjectIds(const HAPI_Session *session, HAPI_NodeId object_node_id, HAPI_NodeId *instanced_node_id_array, int start, int length)
Get the node ids for the objects being instanced by an Instance OBJ node.
HAPI_DECL HAPI_IsNodeValid(const HAPI_Session *session, HAPI_NodeId node_id, int unique_node_id, HAPI_Bool *answer)
Determine if your instance of the node actually still exists inside the Houdini scene. This is what can be used to determine when the Houdini scene needs to be re-populated using the host application's instances of the nodes. Note that this function will ALWAYS return HAPI_RESULT_SUCCESS.
HAPI_DECL HAPI_StartThriftSharedMemoryServer(const HAPI_ThriftServerOptions *options, const char *shared_mem_name, HAPI_ProcessId *process_id, const char *log_file)
Starts a Thrift RPC server process on the localhost serving clients by utilizing shared memory to tra...
HAPI_DECL HAPI_GetDisplayGeoInfo(const HAPI_Session *session, HAPI_NodeId object_node_id, HAPI_GeoInfo *geo_info)
Get the display geo (SOP) node inside an Object node. If there there are multiple display SOP nodes...
HAPI_DECL HAPI_RevertParmToDefaults(const HAPI_Session *session, HAPI_NodeId node_id, const char *parm_name)
Revert all instances of the parm by name to defaults.
HAPI_DECL HAPI_SetAttributeStringUniqueData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const char *data_array, int data_length, int start_index, int num_indices)
Set multiple attribute string data to the same unique value.
Meta-data for a combo-box / choice parm.
HAPI_CommitWorkitems(const HAPI_Session *session, HAPI_NodeId node_id)
Commits any pending workitems.
HAPI_DECL HAPI_GetInstancedPartIds(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, HAPI_PartId *instanced_parts_array, int start, int length)
Get the part ids that this instancer part is instancing.
HAPI_DECL HAPI_GetParmTagValue(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_ParmId parm_id, const char *tag_name, HAPI_StringHandle *tag_value)
Get the tag value on a parameter given the tag name.
HAPI_DECL HAPI_GetWorkItems(const HAPI_Session *session, HAPI_NodeId node_id, int *work_item_ids_array, int length)
Gets the list of work item ids for the given node.
HAPI_DECL HAPI_SaveNodeToFile(const HAPI_Session *session, HAPI_NodeId node_id, const char *file_name)
Saves the node and all its contents to file. The saved file can be loaded by calling HAPI_LoadNodeFro...
HAPI_DECL HAPI_SetAttributeIntData(const HAPI_Session *session, HAPI_NodeId node_id, HAPI_PartId part_id, const char *name, const HAPI_AttributeInfo *attr_info, const int *data_array, int start, int length)
Set attribute integer data.