PK_PARTITION_receive_o_t   

struct PK_PARTITION_receive_o_s
    {
    int                       o_t_version;
                                  --- version number
    PK_transmit_format_t      transmit_format;
                                  --- (PK_transmit_format_neutral_c)
    PK_LOGICAL_t              receive_user_fields;
                                  --- (PK_LOGICAL_false)
    PK_PARTITION_rcv_deltas_t receive_deltas;
                                  --- (PK_PARTITION_rcv_deltas_no_c)
    PK_LOGICAL_t              receive_prev_version_deltas;
                                  --- (PK_LOGICAL_false)
    PK_ATTDEF_name_cb_f_t     attdef_callback;
                                  --- (NULL)
    PK_POINTER_t              attdef_context;
                                  --- (NULL)
    PK_ATTDEF_cb_on_t         attdef_callback_on;
                                  --- (PK_ATTDEF_cb_on_mismatch_c)
    const PK_MEMORY_block_t  *deltas_block;
                                  --- (NULL)
    PK_LOGICAL_t              receive_all_attdefs;
                                  --- (PK_LOGICAL_true)
    PK_LOGICAL_t              allow_missing_deltas;
                                  --- (PK_LOGICAL_false)
    PK_receive_compound_t     receive_compound;
                                  --- (PK_receive_compound_split_c)
    PK_receive_using_seek_t   receive_using_seek;
                                  --- (PK_receive_using_seek_no_c)
    PK_receive_mixed_t        receive_mixed;
                                  --- (PK_receive_mixed_fail_c)
    };
typedef struct PK_PARTITION_receive_o_s PK_PARTITION_receive_o_t;



This option structure is supplied to PK_PARTITION_receive.

Used in:

PK_PARTITION_receive
PK_PARTITION_receive_b
PK_PARTITION_receive_u


Description of fields:


'transmit_format'        Format of the 'file'. Permitted values are

                         PK_transmit_format_text_c
                         PK_transmit_format_binary_c
                         PK_transmit_format_typed_binary_c
                         PK_transmit_format_neutral_c
                         PK_transmit_format_applio_c


'receive_user_fields'    PK_LOGICAL_true if user fields are to be received


'receive_deltas'         Whether to receive no deltas, delay receiving deltas
                         until a later call to PK_PARTITION_receive_deltas, or
                         receive deltas with the partition.


'receive_prev_version_deltas'
                         Used to indicate that deltas transmitted from
                         earlier compatible versions of Parasolid may be
                         received. This field is ignored if 'receive_deltas'
                         is set to PK_PARTITION_rcv_deltas_no_c


'attdef_callback'        Applications which intend to use this option should
                         contact Parasolid Technical Support for advice.


'attdef_context'         Context used to pass any application information to
                         'attdef_callback'.


'attdef_callback_on'     This option is ignored unless 'attdef_callback' is
                         non-null.  Applications which intend to use this
                         option should contact Parasolid Technical Support
                         for advice.


'deltas_block'           Memory chain used by PK_PARTITION_receive_b when
                         'receive_deltas' is not PK_PARTITION_rcv_deltas_no_c,
                         otherwise ignored.


'receive_all_attdefs'    Whether to receive all attribute definitions or only
                         those used in the partition and/or its deltas.
                         This field is ignored unless 'receive_deltas' is set
                         to PK_PARTITION_rcv_deltas_later_c.
                         See here for more information.


'allow_missing_deltas'   Whether to receive a partition without its delta file
                         instead of failing with PK_ERROR_deltas_not_available.
                         This field is ignored unless 'receive_deltas' is set
                         to PK_PARTITION_rcv_deltas_yes_c.
                         See here for more information.


'receive_compound'       Controls receiving partition and delta files
                         containing compound bodies. Allowed values are:

                         PK_receive_compound_split_c:
                         Compound bodies in the partition are split into
                         individual bodies. This only has effect if
                         'receive_deltas' is set to
                         PK_PARTITION_rcv_deltas_no_c - otherwise the behaviour
                         is the same as with PK_receive_compound_fail_c.

                         PK_receive_compound_keep_c:
                         Receive compound bodies as they are.

                         PK_receive_compound_fail_c:
                         Fail with PK_ERROR_compound_body if the file
                         contains compound bodies.

                         If any compound bodies have been split then a
                         report will be returned via the Parasolid Report
                         mechanism containing a record of 'type'
                         PK_REPORT_record_type_3_c.
                         This record will have a 'status' of
                         PK_REPORT_3_compound_split_c and will contain
                         information on the compound bodies that were
                         split when the file was received:
                         - 'n_int_arrays' and 'n_item_arrays'
                            the number of bodies received from the partition
                            file.
                         - 'int_arrays'
                            for each body received from the partition file,
                            an array of child body identifiers if the body
                            was a compound body, otherwise an empty array.
                         - 'item_arrays'
                            for each body received from the partition file,
                            an array of split bodies if the body was a
                            compound body, otherwise an array containing
                            just that body.


'receive_using_seek'     How any lazily received model data in the partition
                         are handled if they are not immediately needed.

                         If this option is PK_receive_using_seek_no_c then
                         lazily received model data in the file will all be
                         read sequentially in the same Parasolid call.

                         If this option is PK_receive_using_seek_yes_c then
                         only data needed for individual pieces of the model
                         will be received, which will be faster in many
                         scenarios and avoids unneeded model data taking up
                         internal memory.

                         To support PK_receive_using_seek_yes_c for mesh
                         data, the partition file must have been transmitted
                         with the option 'transmit_meshes' set to
                         PK_transmit_meshes_embedded_c and the Frustrum
                         seek function 'ffskxt' must be registered using
                         PK_SESSION_register_fru_2. If the partition file
                         was transmitted with PK_transmit_meshes_separate_c
                         then this option is ignored for mesh data.

                         This option is ignored for PK_PARTITION_receive_b.


'receive_mixed'          Controls receiving transmitted files that contain
                         parts with both facet and classic geometry.

                         If this option is set to the default
                         PK_receive_mixed_fail_c and the file contains mixed
                         parts, then receive will fail with
                         PK_ERROR_mixed_geometry.

                         To allow receiving mixed parts, this option should
                         be set to PK_receive_mixed_allow_c.

                         PK_receive_mixed_make_facet_c is for future
                         enhancement and will return
                         PK_ERROR_not_implemented.