{-# INCLUDE <cddb/cddb.h> #-}
{-# INCLUDE <bindings.macros.h> #-}
{-# LINE 1 "src/Bindings/Libcddb/CddbTrack.hsc" #-}

{-# LINE 2 "src/Bindings/Libcddb/CddbTrack.hsc" #-}

{-# LINE 3 "src/Bindings/Libcddb/CddbTrack.hsc" #-}

-- | <http://libcddb.sourceforge.net/API/cddb__track_8h.html>

module Bindings.Libcddb.CddbTrack where
import Foreign
import Foreign.C

c'CDDB_TRACK_H = 1
c'CDDB_TRACK_H :: (Num a) => a

{-# LINE 11 "src/Bindings/Libcddb/CddbTrack.hsc" #-}

data C'cddb_track_t = C'cddb_track_t

{-# LINE 13 "src/Bindings/Libcddb/CddbTrack.hsc" #-}

foreign import ccall "cddb_track_new" c'cddb_track_new
  :: IO (Ptr C'cddb_track_t)
foreign import ccall "&cddb_track_new" p'cddb_track_new
  :: FunPtr (IO (Ptr C'cddb_track_t))

{-# LINE 15 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_destroy" c'cddb_track_destroy
  :: Ptr C'cddb_track_t -> IO ()
foreign import ccall "&cddb_track_destroy" p'cddb_track_destroy
  :: FunPtr (Ptr C'cddb_track_t -> IO ())

{-# LINE 16 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_clone" c'cddb_track_clone
  :: Ptr C'cddb_track_t -> IO (Ptr C'cddb_track_t)
foreign import ccall "&cddb_track_clone" p'cddb_track_clone
  :: FunPtr (Ptr C'cddb_track_t -> IO (Ptr C'cddb_track_t))

{-# LINE 17 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_number" c'cddb_track_get_number
  :: Ptr C'cddb_track_t -> IO CInt
foreign import ccall "&cddb_track_get_number" p'cddb_track_get_number
  :: FunPtr (Ptr C'cddb_track_t -> IO CInt)

{-# LINE 18 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_frame_offset" c'cddb_track_get_frame_offset
  :: Ptr C'cddb_track_t -> IO CInt
foreign import ccall "&cddb_track_get_frame_offset" p'cddb_track_get_frame_offset
  :: FunPtr (Ptr C'cddb_track_t -> IO CInt)

{-# LINE 19 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_set_frame_offset" c'cddb_track_set_frame_offset
  :: Ptr C'cddb_track_t -> CInt -> IO ()
foreign import ccall "&cddb_track_set_frame_offset" p'cddb_track_set_frame_offset
  :: FunPtr (Ptr C'cddb_track_t -> CInt -> IO ())

{-# LINE 20 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_length" c'cddb_track_get_length
  :: Ptr C'cddb_track_t -> IO CInt
foreign import ccall "&cddb_track_get_length" p'cddb_track_get_length
  :: FunPtr (Ptr C'cddb_track_t -> IO CInt)

{-# LINE 21 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_set_length" c'cddb_track_set_length
  :: Ptr C'cddb_track_t -> CInt -> IO ()
foreign import ccall "&cddb_track_set_length" p'cddb_track_set_length
  :: FunPtr (Ptr C'cddb_track_t -> CInt -> IO ())

{-# LINE 22 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_title" c'cddb_track_get_title
  :: Ptr C'cddb_track_t -> IO CString
foreign import ccall "&cddb_track_get_title" p'cddb_track_get_title
  :: FunPtr (Ptr C'cddb_track_t -> IO CString)

{-# LINE 23 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_set_title" c'cddb_track_set_title
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_set_title" p'cddb_track_set_title
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 24 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_append_title" c'cddb_track_append_title
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_append_title" p'cddb_track_append_title
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 25 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_artist" c'cddb_track_get_artist
  :: Ptr C'cddb_track_t -> IO CString
foreign import ccall "&cddb_track_get_artist" p'cddb_track_get_artist
  :: FunPtr (Ptr C'cddb_track_t -> IO CString)

{-# LINE 26 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_set_artist" c'cddb_track_set_artist
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_set_artist" p'cddb_track_set_artist
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 27 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_append_artist" c'cddb_track_append_artist
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_append_artist" p'cddb_track_append_artist
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 28 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_get_ext_data" c'cddb_track_get_ext_data
  :: Ptr C'cddb_track_t -> IO CString
foreign import ccall "&cddb_track_get_ext_data" p'cddb_track_get_ext_data
  :: FunPtr (Ptr C'cddb_track_t -> IO CString)

{-# LINE 29 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_set_ext_data" c'cddb_track_set_ext_data
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_set_ext_data" p'cddb_track_set_ext_data
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 30 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_append_ext_data" c'cddb_track_append_ext_data
  :: Ptr C'cddb_track_t -> CString -> IO ()
foreign import ccall "&cddb_track_append_ext_data" p'cddb_track_append_ext_data
  :: FunPtr (Ptr C'cddb_track_t -> CString -> IO ())

{-# LINE 31 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_copy" c'cddb_track_copy
  :: Ptr C'cddb_track_t -> Ptr C'cddb_track_t -> IO ()
foreign import ccall "&cddb_track_copy" p'cddb_track_copy
  :: FunPtr (Ptr C'cddb_track_t -> Ptr C'cddb_track_t -> IO ())

{-# LINE 32 "src/Bindings/Libcddb/CddbTrack.hsc" #-}
foreign import ccall "cddb_track_print" c'cddb_track_print
  :: Ptr C'cddb_track_t -> IO ()
foreign import ccall "&cddb_track_print" p'cddb_track_print
  :: FunPtr (Ptr C'cddb_track_t -> IO ())

{-# LINE 33 "src/Bindings/Libcddb/CddbTrack.hsc" #-}