 |
PK_THREAD_set_function_run |
|
PK_ERROR_code_t PK_THREAD_set_function_run
(
--- received arguments ---
int n_functions, --- number of functions
const PK_FUNCTION_t functions[], --- functions
const PK_FUNCTION_run_t run_values[], --- how functions run
const PK_THREAD_set_function_run_o_t *options --- options structure
)
This function sets whether the given PK functions will be run concurrently
or exclusively in this thread.
Specific Errors:
PK_ERROR_bad_value Parasolid cannot change how at least one of the
functions will be run to the new value (MILD)
For each function specified in the 'functions' array, the corresponding value
in the 'run_values' array can be used to change how that function will be run.
These changes will persist until a different value is set or the modeller is
restarted.
The only allowed values for each of the 'functions' are those returned by
PK_FUNCTION_find when given these function names:
"PK_TOPOL_facet"
"PK_TOPOL_facet_2"
"PK_TOPOL_render_facet"
"PK_TOPOL_render_line"
"PK_GEOM_render"
The only allowed values for each of the 'run_values' are
PK_FUNCTION_run_mutable_conc_c and PK_FUNCTION_run_mutable_exc_c.
While a thread has locked partitions, setting values in the 'run_values' array
to PK_FUNCTION_run_mutable_exc_c specifies running the corresponding PK
functions with local exclusivity, meaning they will be run concurrently with
other threads with locked partitions.
If any values in either of the arrays are not allowed then no changes will
be set.
This function can only be called when the modeller is started.