 |
PK_PARTITION_is_clone |
|
PK_ERROR_code_t PK_PARTITION_is_clone
(
--- received arguments ---
PK_PARTITION_t partition, --- partition
PK_PMARK_t original_pmark, --- original pmark
PK_PMARK_t clone_pmark, --- clone pmark
const PK_PARTITION_is_clone_o_t *options, --- options
--- returned arguments ---
PK_clone_state_t *const is_clone, --- whether the same
int *const n_entities, --- number of different
--- entities
PK_ENTITY_t **const entities --- different entities
)
This function detects whether entities in the 'partition', when at
'clone_pmark', are identical to their incarnations when at 'original_pmark'.
Note: You are advised to consult with Parasolid Support before using
cloning.
Specific Errors:
PK_ERROR_rollback_not_started Partitioned rollback is not active (MILD)
PK_ERROR_unsuitable_entity 'partition' not in a suitable state (MILD)
The entities which are examined are determined by the 'options'. If all
entities examined are identical at the two pmarks then 'is_clone' is returned
as PK_clone_state_same_c. If any are different then 'is_clone' is returned as
PK_clone_state_different_c. Optionally the different entities may be returned
in 'n_entities' and 'entities'.
'clone_pmark' must be the 'partition's current pmark. 'original_pmark' must be
a pmark of the 'partition' within a clone span created by
PK_PARTITION_start_cloning.
This function should only be called when partitioned rollback has been started
with PK_DELTA_register_callbacks.