--** Interface to foreign library [@text occSDLsound].
-- Generated automatically using SWIG 1.3.31.
-- @module occSDLsound

-- ----------------------------------------------------------------------------
-- This file was automatically generated by SWIG (http://www.swig.org).
-- Version 1.3.31
--
-- Do not make changes to this file unless you know what you are doing--modify
-- the SWIG interface file instead.
-- ----------------------------------------------------------------------------- 

#IF NOT DEFINED (WRAPPERS.occSDLsound.INC)
#DEFINE WRAPPERS.occSDLsound.INC
--* Foreign [@text int] constant [@text SOUND_VER_MAJOR].
VAL INT SOUND.VER.MAJOR IS 1:
--* Foreign [@text int] constant [@text SOUND_VER_MINOR].
VAL INT SOUND.VER.MINOR IS 0:
--* Foreign [@text int] constant [@text SOUND_VER_PATCH].
VAL INT SOUND.VER.PATCH IS 1:
DATA TYPE Sound.SampleFlags IS INT:
--*{ Sound.SampleFlags Foreign enumeration [@text Sound_SampleFlags].
VAL INT SOUND.SAMPLEFLAG.NONE IS 0:
VAL INT SOUND.SAMPLEFLAG.CANSEEK IS 1:
VAL INT SOUND.SAMPLEFLAG.EOF IS 1:
VAL INT SOUND.SAMPLEFLAG.ERROR IS 1:
VAL INT SOUND.SAMPLEFLAG.EAGAIN IS 1:
--*}

--* Foreign structure pointer type [@text Sound_AudioInfo].
DATA TYPE Sound.AudioInfo IS INT:

#PRAGMA EXTERNAL "PROC C.create.Sound.AudioInfo (RESULT Sound.AudioInfo ptr) = 0"
--* Allocate foreign structure [@text Sound.AudioInfo].
-- @param ptr Pointer to newly-allocated structure.
INLINE PROC create.Sound.AudioInfo (RESULT Sound.AudioInfo ptr)
  C.create.Sound.AudioInfo (ptr)
:
#PRAGMA EXTERNAL "PROC C.delete.Sound.AudioInfo (Sound.AudioInfo ptr) = 0"
--* Free foreign structure [@text Sound.AudioInfo].
-- @param ptr Pointer to structure to free.
INLINE PROC delete.Sound.AudioInfo (Sound.AudioInfo ptr)
  C.delete.Sound.AudioInfo (ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.AudioInfo.format (RESULT INT16 value, VAL Sound.AudioInfo ptr) = 0"
--* Get value of member [@text format] of foreign structure [@text Sound.AudioInfo].
-- @param value Contents of the member [@text format].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC get.Sound.AudioInfo.format (RESULT INT16 value, VAL Sound.AudioInfo ptr)
  C.get.Sound.AudioInfo.format (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.AudioInfo.format (VAL INT16 value, VAL Sound.AudioInfo ptr) = 0"
--* Set value of member [@text format] of foreign structure [@text Sound.AudioInfo].
-- @param value New contents of the member [@text format].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC set.Sound.AudioInfo.format (VAL INT16 value, VAL Sound.AudioInfo ptr)
  C.set.Sound.AudioInfo.format (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.AudioInfo.channels (RESULT BYTE value, VAL Sound.AudioInfo ptr) = 0"
--* Get value of member [@text channels] of foreign structure [@text Sound.AudioInfo].
-- @param value Contents of the member [@text channels].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC get.Sound.AudioInfo.channels (RESULT BYTE value, VAL Sound.AudioInfo ptr)
  C.get.Sound.AudioInfo.channels (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.AudioInfo.channels (VAL BYTE value, VAL Sound.AudioInfo ptr) = 0"
--* Set value of member [@text channels] of foreign structure [@text Sound.AudioInfo].
-- @param value New contents of the member [@text channels].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC set.Sound.AudioInfo.channels (VAL BYTE value, VAL Sound.AudioInfo ptr)
  C.set.Sound.AudioInfo.channels (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.AudioInfo.rate (RESULT INT value, VAL Sound.AudioInfo ptr) = 0"
--* Get value of member [@text rate] of foreign structure [@text Sound.AudioInfo].
-- @param value Contents of the member [@text rate].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC get.Sound.AudioInfo.rate (RESULT INT value, VAL Sound.AudioInfo ptr)
  C.get.Sound.AudioInfo.rate (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.AudioInfo.rate (VAL INT value, VAL Sound.AudioInfo ptr) = 0"
--* Set value of member [@text rate] of foreign structure [@text Sound.AudioInfo].
-- @param value New contents of the member [@text rate].
-- @param ptr Pointer to foreign structure [@text Sound.AudioInfo].
INLINE PROC set.Sound.AudioInfo.rate (VAL INT value, VAL Sound.AudioInfo ptr)
  C.set.Sound.AudioInfo.rate (value, ptr)
:
-- End of structure pointer Sound.AudioInfo
--* Foreign structure pointer type [@text Sound_DecoderInfo].
DATA TYPE Sound.DecoderInfo IS INT:

#PRAGMA EXTERNAL "PROC C.create.Sound.DecoderInfo (RESULT Sound.DecoderInfo ptr) = 0"
--* Allocate foreign structure [@text Sound.DecoderInfo].
-- @param ptr Pointer to newly-allocated structure.
INLINE PROC create.Sound.DecoderInfo (RESULT Sound.DecoderInfo ptr)
  C.create.Sound.DecoderInfo (ptr)
:
#PRAGMA EXTERNAL "PROC C.delete.Sound.DecoderInfo (Sound.DecoderInfo ptr) = 0"
--* Free foreign structure [@text Sound.DecoderInfo].
-- @param ptr Pointer to structure to free.
INLINE PROC delete.Sound.DecoderInfo (Sound.DecoderInfo ptr)
  C.delete.Sound.DecoderInfo (ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.DecoderInfo.extensions (RESULT BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Get value of member [@text extensions] of foreign structure [@text Sound.DecoderInfo].
-- @param value Contents of the member [@text extensions].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC get.Sound.DecoderInfo.extensions (RESULT BYTE value, VAL Sound.DecoderInfo ptr)
  C.get.Sound.DecoderInfo.extensions (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.DecoderInfo.extensions (VAL BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Set value of member [@text extensions] of foreign structure [@text Sound.DecoderInfo].
-- @param value New contents of the member [@text extensions].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC set.Sound.DecoderInfo.extensions (VAL BYTE value, VAL Sound.DecoderInfo ptr)
  C.set.Sound.DecoderInfo.extensions (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.DecoderInfo.description (RESULT BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Get value of member [@text description] of foreign structure [@text Sound.DecoderInfo].
-- @param value Contents of the member [@text description].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC get.Sound.DecoderInfo.description (RESULT BYTE value, VAL Sound.DecoderInfo ptr)
  C.get.Sound.DecoderInfo.description (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.DecoderInfo.description (VAL BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Set value of member [@text description] of foreign structure [@text Sound.DecoderInfo].
-- @param value New contents of the member [@text description].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC set.Sound.DecoderInfo.description (VAL BYTE value, VAL Sound.DecoderInfo ptr)
  C.set.Sound.DecoderInfo.description (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.DecoderInfo.author (RESULT BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Get value of member [@text author] of foreign structure [@text Sound.DecoderInfo].
-- @param value Contents of the member [@text author].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC get.Sound.DecoderInfo.author (RESULT BYTE value, VAL Sound.DecoderInfo ptr)
  C.get.Sound.DecoderInfo.author (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.DecoderInfo.author (VAL BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Set value of member [@text author] of foreign structure [@text Sound.DecoderInfo].
-- @param value New contents of the member [@text author].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC set.Sound.DecoderInfo.author (VAL BYTE value, VAL Sound.DecoderInfo ptr)
  C.set.Sound.DecoderInfo.author (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.DecoderInfo.url (RESULT BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Get value of member [@text url] of foreign structure [@text Sound.DecoderInfo].
-- @param value Contents of the member [@text url].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC get.Sound.DecoderInfo.url (RESULT BYTE value, VAL Sound.DecoderInfo ptr)
  C.get.Sound.DecoderInfo.url (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.DecoderInfo.url (VAL BYTE value, VAL Sound.DecoderInfo ptr) = 0"
--* Set value of member [@text url] of foreign structure [@text Sound.DecoderInfo].
-- @param value New contents of the member [@text url].
-- @param ptr Pointer to foreign structure [@text Sound.DecoderInfo].
INLINE PROC set.Sound.DecoderInfo.url (VAL BYTE value, VAL Sound.DecoderInfo ptr)
  C.set.Sound.DecoderInfo.url (value, ptr)
:
-- End of structure pointer Sound.DecoderInfo
--* Foreign structure pointer type [@text Sound_Sample].
DATA TYPE Sound.Sample IS INT:

#PRAGMA EXTERNAL "PROC C.create.Sound.Sample (RESULT Sound.Sample ptr) = 0"
--* Allocate foreign structure [@text Sound.Sample].
-- @param ptr Pointer to newly-allocated structure.
INLINE PROC create.Sound.Sample (RESULT Sound.Sample ptr)
  C.create.Sound.Sample (ptr)
:
#PRAGMA EXTERNAL "PROC C.delete.Sound.Sample (Sound.Sample ptr) = 0"
--* Free foreign structure [@text Sound.Sample].
-- @param ptr Pointer to structure to free.
INLINE PROC delete.Sound.Sample (Sound.Sample ptr)
  C.delete.Sound.Sample (ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.decoder (RESULT Sound.DecoderInfo value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text decoder] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text decoder].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.decoder (RESULT Sound.DecoderInfo value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.decoder (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.desired (RESULT Sound.AudioInfo value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text desired] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text desired].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.desired (RESULT Sound.AudioInfo value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.desired (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.actual (RESULT Sound.AudioInfo value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text actual] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text actual].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.actual (RESULT Sound.AudioInfo value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.actual (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.buffer (RESULT INT value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text buffer] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text buffer].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.buffer (RESULT INT value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.buffer (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.Sample.buffer (VAL INT value, VAL Sound.Sample ptr) = 0"
--* Set value of member [@text buffer] of foreign structure [@text Sound.Sample].
-- @param value New contents of the member [@text buffer].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC set.Sound.Sample.buffer (VAL INT value, VAL Sound.Sample ptr)
  C.set.Sound.Sample.buffer (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.buffer.size (RESULT INT value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text buffer.size] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text buffer.size].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.buffer.size (RESULT INT value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.buffer.size (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.Sample.buffer.size (VAL INT value, VAL Sound.Sample ptr) = 0"
--* Set value of member [@text buffer.size] of foreign structure [@text Sound.Sample].
-- @param value New contents of the member [@text buffer.size].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC set.Sound.Sample.buffer.size (VAL INT value, VAL Sound.Sample ptr)
  C.set.Sound.Sample.buffer.size (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Sample.flags (RESULT Sound.SampleFlags value, VAL Sound.Sample ptr) = 0"
--* Get value of member [@text flags] of foreign structure [@text Sound.Sample].
-- @param value Contents of the member [@text flags].
-- @param ptr Pointer to foreign structure [@text Sound.Sample].
INLINE PROC get.Sound.Sample.flags (RESULT Sound.SampleFlags value, VAL Sound.Sample ptr)
  C.get.Sound.Sample.flags (value, ptr)
:
-- End of structure pointer Sound.Sample
--* Foreign structure pointer type [@text Sound_Version].
DATA TYPE Sound.Version IS INT:

#PRAGMA EXTERNAL "PROC C.create.Sound.Version (RESULT Sound.Version ptr) = 0"
--* Allocate foreign structure [@text Sound.Version].
-- @param ptr Pointer to newly-allocated structure.
INLINE PROC create.Sound.Version (RESULT Sound.Version ptr)
  C.create.Sound.Version (ptr)
:
#PRAGMA EXTERNAL "PROC C.delete.Sound.Version (Sound.Version ptr) = 0"
--* Free foreign structure [@text Sound.Version].
-- @param ptr Pointer to structure to free.
INLINE PROC delete.Sound.Version (Sound.Version ptr)
  C.delete.Sound.Version (ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Version.major (RESULT INT value, VAL Sound.Version ptr) = 0"
--* Get value of member [@text major] of foreign structure [@text Sound.Version].
-- @param value Contents of the member [@text major].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC get.Sound.Version.major (RESULT INT value, VAL Sound.Version ptr)
  C.get.Sound.Version.major (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.Version.major (VAL INT value, VAL Sound.Version ptr) = 0"
--* Set value of member [@text major] of foreign structure [@text Sound.Version].
-- @param value New contents of the member [@text major].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC set.Sound.Version.major (VAL INT value, VAL Sound.Version ptr)
  C.set.Sound.Version.major (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Version.minor (RESULT INT value, VAL Sound.Version ptr) = 0"
--* Get value of member [@text minor] of foreign structure [@text Sound.Version].
-- @param value Contents of the member [@text minor].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC get.Sound.Version.minor (RESULT INT value, VAL Sound.Version ptr)
  C.get.Sound.Version.minor (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.Version.minor (VAL INT value, VAL Sound.Version ptr) = 0"
--* Set value of member [@text minor] of foreign structure [@text Sound.Version].
-- @param value New contents of the member [@text minor].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC set.Sound.Version.minor (VAL INT value, VAL Sound.Version ptr)
  C.set.Sound.Version.minor (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.get.Sound.Version.patch (RESULT INT value, VAL Sound.Version ptr) = 0"
--* Get value of member [@text patch] of foreign structure [@text Sound.Version].
-- @param value Contents of the member [@text patch].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC get.Sound.Version.patch (RESULT INT value, VAL Sound.Version ptr)
  C.get.Sound.Version.patch (value, ptr)
:
#PRAGMA EXTERNAL "PROC C.set.Sound.Version.patch (VAL INT value, VAL Sound.Version ptr) = 0"
--* Set value of member [@text patch] of foreign structure [@text Sound.Version].
-- @param value New contents of the member [@text patch].
-- @param ptr Pointer to foreign structure [@text Sound.Version].
INLINE PROC set.Sound.Version.patch (VAL INT value, VAL Sound.Version ptr)
  C.set.Sound.Version.patch (value, ptr)
:
-- End of structure pointer Sound.Version
#PRAGMA EXTERNAL "PROC C.Sound.GetLinkedVersion (Sound.Version ver) = 0"

--* Foreign function [@text Sound_GetLinkedVersion].
-- @param ver Argument with type [@text Sound_Version *].
INLINE PROC Sound.GetLinkedVersion (Sound.Version ver)
  C.Sound.GetLinkedVersion (ver)
:

#PRAGMA EXTERNAL "PROC C.Sound.Init (RESULT INT return.value) = 0"

--* Foreign function [@text Sound_Init].
-- @param return.value Function return value with type [@text int].
INLINE PROC Sound.Init (RESULT INT return.value)
  C.Sound.Init (return.value)
:

#PRAGMA EXTERNAL "PROC C.Sound.Quit (RESULT INT return.value) = 0"

--* Foreign function [@text Sound_Quit].
-- @param return.value Function return value with type [@text int].
INLINE PROC Sound.Quit (RESULT INT return.value)
  C.Sound.Quit (return.value)
:

#PRAGMA EXTERNAL "PROC C.Sound.AvailableDecoders (Sound.DecoderInfo   return.value) = 0"

--* Foreign function [@text Sound_AvailableDecoders].
-- @param return.value Function return value with type [@text Sound_DecoderInfo const **].
INLINE PROC Sound.AvailableDecoders (Sound.DecoderInfo   return.value)
  C.Sound.AvailableDecoders (return.value)
:

#PRAGMA EXTERNAL "PROC C.occ.Sound.GetError ([]BYTE err.str, VAL INT err.str.len, INT str.len) = 0"

--* Foreign function [@text occ_Sound_GetError].
-- @param err.str Array pointer argument with element type [@text char].
-- @param err.str.len Argument with type [@text int].
-- @param str.len Argument with type [@text int *].
INLINE PROC occ.Sound.GetError ([]BYTE err.str, VAL INT err.str.len, INT str.len)
  C.occ.Sound.GetError (err.str, err.str.len, str.len)
:

#PRAGMA EXTERNAL "PROC C.Sound.ClearError () = 0"

--* Foreign function [@text Sound_ClearError].
INLINE PROC Sound.ClearError ()
  C.Sound.ClearError ()
:

#PRAGMA EXTERNAL "PROC C.Sound.NewSampleFromFile (Sound.Sample  return.value, VAL []BYTE fname, Sound.AudioInfo desired, VAL INT bufferSize) = 0"

--* Foreign function [@text Sound_NewSampleFromFile].
-- @param return.value Function return value with type [@text Sound_Sample *].
-- @param fname Array pointer argument with element type [@text char const].
-- @param desired Argument with type [@text Sound_AudioInfo *].
-- @param bufferSize Argument with type [@text Uint32].
INLINE PROC Sound.NewSampleFromFile (Sound.Sample  return.value, VAL []BYTE fname, Sound.AudioInfo desired, VAL INT bufferSize)
  C.Sound.NewSampleFromFile (return.value, fname, desired, bufferSize)
:

#PRAGMA EXTERNAL "PROC C.Sound.FreeSample (Sound.Sample sample) = 0"

--* Foreign function [@text Sound_FreeSample].
-- @param sample Argument with type [@text Sound_Sample *].
INLINE PROC Sound.FreeSample (Sound.Sample sample)
  C.Sound.FreeSample (sample)
:

#PRAGMA EXTERNAL "PROC C.Sound.SetBufferSize (RESULT INT return.value, Sound.Sample sample, VAL INT new.size) = 0"

--* Foreign function [@text Sound_SetBufferSize].
-- @param return.value Function return value with type [@text int].
-- @param sample Argument with type [@text Sound_Sample *].
-- @param new.size Argument with type [@text Uint32].
INLINE PROC Sound.SetBufferSize (RESULT INT return.value, Sound.Sample sample, VAL INT new.size)
  C.Sound.SetBufferSize (return.value, sample, new.size)
:

#PRAGMA EXTERNAL "PROC C.Sound.Decode (RESULT INT return.value, Sound.Sample sample) = 0"

--* Foreign function [@text Sound_Decode].
-- @param return.value Function return value with type [@text Uint32].
-- @param sample Argument with type [@text Sound_Sample *].
INLINE PROC Sound.Decode (RESULT INT return.value, Sound.Sample sample)
  C.Sound.Decode (return.value, sample)
:

#PRAGMA EXTERNAL "PROC C.Sound.DecodeAll (RESULT INT return.value, Sound.Sample sample) = 0"

--* Foreign function [@text Sound_DecodeAll].
-- @param return.value Function return value with type [@text Uint32].
-- @param sample Argument with type [@text Sound_Sample *].
INLINE PROC Sound.DecodeAll (RESULT INT return.value, Sound.Sample sample)
  C.Sound.DecodeAll (return.value, sample)
:

#PRAGMA EXTERNAL "PROC C.Sound.Rewind (RESULT INT return.value, Sound.Sample sample) = 0"

--* Foreign function [@text Sound_Rewind].
-- @param return.value Function return value with type [@text int].
-- @param sample Argument with type [@text Sound_Sample *].
INLINE PROC Sound.Rewind (RESULT INT return.value, Sound.Sample sample)
  C.Sound.Rewind (return.value, sample)
:

#PRAGMA EXTERNAL "PROC C.Sound.Seek (RESULT INT return.value, Sound.Sample sample, VAL INT ms) = 0"

--* Foreign function [@text Sound_Seek].
-- @param return.value Function return value with type [@text int].
-- @param sample Argument with type [@text Sound_Sample *].
-- @param ms Argument with type [@text Uint32].
INLINE PROC Sound.Seek (RESULT INT return.value, Sound.Sample sample, VAL INT ms)
  C.Sound.Seek (return.value, sample, ms)
:

#PRAGMA EXTERNAL "PROC C.get.audio.callback.ptr (RESULT INT return.value) = 0"

--* Foreign function [@text get_audio_callback_ptr].
-- @param return.value Function return value with type [@text int].
INLINE PROC get.audio.callback.ptr (RESULT INT return.value)
  C.get.audio.callback.ptr (return.value)
:

#PRAGMA EXTERNAL "PROC C.check.if.done.playing (RESULT INT return.value) = 0"

--* Foreign function [@text check_if_done_playing].
-- @param return.value Function return value with type [@text int].
INLINE PROC check.if.done.playing (RESULT INT return.value)
  C.check.if.done.playing (return.value)
:

#ENDIF
