typedef struct { NWBOOLEAN isSubRecord; UINT32 headerSize; UINT32 recordSize; NWSM_DATA_SET_NAME_LIST *dataSetName; NWSM_SCAN_INFORMATION *scanInformation; ECMATime archiveDateAndTime; UINT32 *addressOfRecordSize; UINT32 *addressForCRC; BUFFERPTR crcBegin; UINT32 crcLength; UINT32 dataSetInfoRetrieved; UINT32 saveBufferSize; BUFFERPTR saveBuffer; } NWSM_RECORD_HEADER_INFO;
Specifies the total size of the data set header or subheader.
Specifies the size of the data in the record (the data set information and the portion of the data set's data in the record).
Specifies if the record is a subrecord:
Specifies the data set name space type as returned by NWSMTSScanDataSetBegin or NWSMTSScanNextDataSet.
Specifies the data set's scan information as returned by NWSMTSScanDataSetBegin or NWSMTSScanNextDataSet.
Specifies the date and time the data set was added to the buffer.
Specifies the record size value (UINT32) in the SIDF data set header or subheader.
Specifies the address for the data set header CRC value:
Specifies where the CRC will be applied.
Specifies the number of bytes the CRC was applied to (not valid until NWSMUpdateRecordHeader is called).
Is used internally by NWSMGetDataSetInfo and NWSMGetRecordHeaderOnly.
Is used internally by NWSMGetDataSetInfo and NWSMGetRecordHeaderOnly.
Is used internally by NWSMGetDataSetInfo and NWSMGetRecordHeaderOnly.
recordSize is the size of the record minus the amount of data put into scanInformation and dataSetName. It is decremented to reflect the amount of data transferred from the buffer to the recordHeaderInfo parameter.
When the data set data is added to the record, you must update recordSize to reflect the record's new size.
isSubRecord remains TRUE until all of a data set's data is written to the buffer.
The time specified by archiveDateAndTime may not be the same as scanInformation.archiveDateAndTime.
addressForCRC is usually used by NWSMUpdateRecordHeader to update the CRC value after the data is inserted into the transfer buffer.
The CRC for the data set information is calculated and placed into the section automatically if setCRC is CRC_YES or CRC_LATER and no pointer is returned for addressForCRC.
crcBegin is usually used by NWSMUpdateRecordHeader to update the CRC value after the data is inserted into the transfer buffer.
The values that can be set for dataSetInfoRetrieved is listed in the following table.
Set dataSetName and scanInformation to NULL or to a valid structure. The memory used by the data set name or scan information will be resized if there is not enough space.
The following fields in recordHeaderInfo are not used by NWSMGetRecordHeaderOnly:
dataSetName scanInformation addressOfRecordSize addressForCRC crcBegin crcLength saveBufferSize saveBuffer