PK_ERROR_code_t PK_PMARK_goto
(
--- received arguments ---
PK_PMARK_t pmark, --- pmark to go to
--- returned arguments ---
int *const n_new,
PK_ENTITY_t **const new_entities, --- entities created by roll operation
int *const n_mod,
PK_ENTITY_t **const mod_entities, --- entities modified by roll operation
int *const n_del,
int **const del_entities --- entities deleted by roll operation
)
This function returns the partition to the state when the given pmark was
created.
Specific Errors:
PK_ERROR_rollback_not_started Partitioned rollback is not active
PK_ERROR_bad_mark The given pmark may not be rolled to
PK_ERROR_bb_not_empty The bulletin board is on and not empty
PK_ERROR_frustrum_failure (potentially FATAL) The frustrum returned
an error
If it is not possible to rollback, the function raises an error. The modeller
state may have changed in that the partition may have been rolled part way to
the given pmark, but if so, it will be 'at' some other pmark. If the failure
is due to a 'disk full' error from the Frustrum, the roll operation may be
retried after making more disk space available.
The current partition may not be rolled back to its initial pmark.
This function may not be called if the bulletin board is switched on and is
not empty.
This function should only be called when partitioned rollback has been started
by calling PK_DELTA_register_callbacks.