NWSMSetMediaHeaderInfo

Formats media header information into an SIDF compliant media header.

Syntax

  #include <smsutapi.h> 
   
  CCODE NWSMSetMediaHeaderInfo ( 
     NWSM_MEDIA_INFO  *mediaInfo, 
     BUFFERPTR            buffer, 
     UINT32               bufferSize, 
     UINT32                 *headerSize);
  

Parameters

mediaInfo

(IN) Points to the media header information to format.

buffer

(OUT) Points to the buffer to receive the formatted media header information.

bufferSize

(IN) Specifies the size of buffer.

headerSize

(OUT) Points to the size (in bytes) of the formatted media header.

Return Values

The following table lists the return values associated with the function.

0x00000000

Successful

0xFFFBFFF0

NWSMUT_BUFFER_UNDERFLOW: The buffer is out of space.

0xFFFBFFFA

NWSMUT_BUFFER_OVERFLOW

0xFFFBFFFD

NWSMUT_INVALID_PARAMETER: One or more of the parameters were set to an invalid value.

See Also

NWSMGetMediaHeaderInfo

Example

  /* Some functions and structures are defined by SMS DI. 
  #include <smssdapi.h> 
  #include <smsdefns.h> 
  #define MY_BUFFER_SIZE 1024 /* arbitrary buffer size */ 
   
  CCODE ccode; 
  NWSM_MEDIA_INFO mediaInfo; 
  NWSMSD_HEADER_BUFFER *mediaHeader; 
  UINT32 dataFormatType, mediumCreatedDateTime, setCreatedDateTime, mediaNumber = 0; 
  NWSMSD_MEDIA_HANDLE mediaHandle; 
   
  /* Get date and time of the media set's creation date and time */  
  setCreatedDateTime = NWSMGetCurrentDateAndTime(); 
   
  /* Setup the media header buffer information. */ 
  mediaHeader = (NWSMSD_HEADER_BUFFER *) malloc(sizeof(NWSMSD_HEADER_BUFFER) + MY_BUFFER_SIZE); 
  mediaHeader->bufferSize = MY_BUFFER_SIZE + 1; 
  mediaHeader->overflowSize = 0; 
   
  /* Create the media header information */ 
  mediumCreatedDateTime = NWSMGetCurrentDateAndTime(); 
  NWSMDOSTimeToECMA(mediumCreatedDateTime, &(mediaInfo.timeStamp)); 
  strcpy(mediaInfo.label, “The media set label”); 
  mediaInfo.number = ++mediaNumber; 
   
  /* Format the media header information according to SIDF. */ 
  NWSMSetMediaHeaderInfo(&mediaInfo, (BUFFERPTR)mediaHeader->headerBuffer, mediaHeader->bufferSize, 
  &mediaHeader->headerSize); 
   
  /* Label the media. */ 
  dataFormatType = NWSMSD_DFT_SIDF; 
  ccode = NWSMSDMediaLabel(sdiConnection, mediaHandle, dataFormatType, mediaHeader, 0, &completionStatus);