PK_PMARK_goto   


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.