PK_ERROR_code_t PK_SESSION_receive ( --- received arguments --- const char *key, --- key string const PK_SESSION_receive_o_t *options --- receive options ) This function receives a session from the give 'file' key. Specific Errors: PK_ERROR_bad_key Frustrum (FFOPRD) returned FR_bad_name PK_ERROR_key_not_found Frustrum (FFOPRD) returned FR_not_found PK_ERROR_cant_open_file Frustrum (FFOPRD) returned FR_open_fail PK_ERROR_file_access_error Error reading or closing the transmit file PK_ERROR_schema_access_error Error opening, closing, or reading the schema file PK_ERROR_schema_corrupt Contents of schema file not as expected PK_ERROR_schema_incompatible Schema contents in newer format PK_ERROR_wrong_format File does not have expected transmit format PK_ERROR_wrong_version File transmitted by incompatible version of modeller PK_ERROR_corrupt_file Invalid transmit file contents PK_ERROR_file_read_corruption Corrupt data read, perhaps an NFS problem PK_ERROR_applio_not_registered Application i/o functions not registered (only relevant if options->transmit_format is PK_transmit_format_applio) PK_ERROR_usfd_mismatch File has incompatible user-field size PK_ERROR_FG_receive_failure Part contains irretrievable foreign geometry The key is passed to the frustrum to identify the 'file' used to receive the session from. The frustrum routine FFOPRD is called with guise FFCSNP ('snapshot' file containing a session). The transmit format option affects the format argument to FFOPRD as follows: transmit format format PK_transmit_format_text_c FFTEXT PK_transmit_format_binary_c FFBNRY PK_transmit_format_neutral_c FFBNRY PK_transmit_format_applio_c (registered function is called, not FFOPRD - see PK_SESSION_register_applio) After the receive, all the partitions in the session will have only an initial pmark. The state of the bulletin board, attribute definitions and interface and modelling parameters will be as saved in the file. There will be no session marks, so it is impossible to roll back to before a successful call to PK_SESSION_receive. If the function fails, it will be possible to roll back, except in the case of PK_ERROR_FG_receive_failure. Received entities will have the same tags as when the session was transmitted. Snapshot files can only be received by the same version of the modeller that transmitted them.