SEDRIS Reference Manual
APPENDIX A - LEVEL 0 READ and WRITE API
Functions
SE PutPackedDataTable
extern SE_Status_Code
SE_PutPackedDataTable
(
SE_Object data_table, (notes)
SE_Integer_Positive element_count, (notes)
constSE_Integer_Positive table_prop_descript_number[], (notes)
SE_Integer_Unsigned byte_count, (notes)
constchar *data_in_ptr (notes)
);

Definition

Used to create all the cells of the given <Data Table> in a packed format. (To create only a section of the <Data Table>, use SE_PutPackedDataTableSubExtent() instead.)

The transmittal whose object is to be edited must be explicitly opened in UPDATE mode for this operation to succeed.


Returns

SE_STAT_CODE_SUCCESS if valid parameters were passed in and all operations succeeded.
SE_STAT_CODE_NULL_REQUIRED_PARAMETER and data_table is unaffected, if
  1. data_in_ptr was NULL,
  2. element_count is zero,
  3. table_prop_descript_number is NULL, or
  4. byte_count is zero.
SE_STAT_CODE_INVALID_OR_NULL_OBJECT and data_table is unaffected, if data_table is not a handle to a valid, active (i.e., unfreed), saved <Data Table> instance.
SE_STAT_CODE_UNRESOLVED_OBJECT and data_table is unaffected, if data_table is an unresolved object.
SE_STAT_CODE_INVALID_ACCESS_MODE and data_table is unaffected, if data_table belongs to a transmittal that was opened in read-only mode.
SE_STAT_CODE_FAILURE and data_table is unaffected, if any of the following conditions are encountered:
  1. the given table_prop_descript_number don't form a valid signature,
  2. doesn't belong to an open transmittal,
  3. is a with data_present set to SE_FALSE (note that the default value of this field is SE_TRUE, if the user has not yet set the fields of the ),
  4. the byte_count is not correct for the given extents and set of table_prop_descript_number entries, or
  5. the API implementation specified does not provide this function in its shared library, and dynamic binding is specified at compile time.
  6. if the following conditions hold for a cell data value X:
    1. X corresponds to the kth <Table Property Description> of the <Data Table>, where k is between 1 and number of <Table Property Description> components of the <Data Table>, and
    2. X is identified as an EDCS Metadata Code M, but
    3. M does not correspond to a <Property Characteristic> for the kth <Table Property Description> specifying a sentinel value

    That is, M is only valid if it corresponds to a <Property Characteristic> for the kth TPD specifying one of the following EDCS Metadata Codes:
    • EMC_MISSING
    • EMC_VALUE_WITHHELD
    • EMC_NOT_APPLICABLE
    • EMC_UNDESIGNATED
    • EMC_POSITIVE_OVERFLOW
    • EMC_NEGATIVE_OVERFLOW
    • EMC_POSITIVE_UNDERFLOW
    • EMC_NEGATIVE_UNDERFLOW


Parameters Notes


data_table

 the <Data Table> whose cells are being created.

element_count

 the number of elements per cell to create, and the size
    of the table_prop_descript_number array

table_prop_descript_number

 an array of indices into the ordered list of
 <Table Property Descriptions> aggregated by the
 <Data Table>.

byte_count

 the amount of memory that is occupied by the data values of
    the cells to be created. The size (number of bytes) needed for each cell
    is the number of elements (element_count) times the size of a cell value
    (the sizeof(SE_Property_Data_Value)).

data_in_ptr

 a pointer to byte_count bytes of memory, already allocated
    in a store or in the user's memory space, to be written to the
    <Data Table>.


Prev: SE_PutImageData. Next: SE_PutPackedDataTableSubExtent. Up:Index.

Last updated: May 15, 2003 Copyright © 2003 SEDRIS™