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

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

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

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

module Bindings.Libcddb.CddbSite where
import Foreign
import Foreign.C
import Bindings.Libcddb.CddbError

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

{-# LINE 12 "src/Bindings/Libcddb/CddbSite.hsc" #-}

data C'cddb_site_t = C'cddb_site_t

{-# LINE 14 "src/Bindings/Libcddb/CddbSite.hsc" #-}

type C'cddb_protocol_t = Word32

{-# LINE 16 "src/Bindings/Libcddb/CddbSite.hsc" #-}

c'PROTO_UNKNOWN = 0
c'PROTO_UNKNOWN :: (Num a) => a

{-# LINE 18 "src/Bindings/Libcddb/CddbSite.hsc" #-}
c'PROTO_CDDBP = 1
c'PROTO_CDDBP :: (Num a) => a

{-# LINE 19 "src/Bindings/Libcddb/CddbSite.hsc" #-}
c'PROTO_HTTP = 2
c'PROTO_HTTP :: (Num a) => a

{-# LINE 20 "src/Bindings/Libcddb/CddbSite.hsc" #-}

foreign import ccall "cddb_site_new" c'cddb_site_new
  :: IO (Ptr C'cddb_site_t)
foreign import ccall "&cddb_site_new" p'cddb_site_new
  :: FunPtr (IO (Ptr C'cddb_site_t))

{-# LINE 22 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_destroy" c'cddb_site_destroy
  :: Ptr C'cddb_site_t -> IO C'cddb_error_t
foreign import ccall "&cddb_site_destroy" p'cddb_site_destroy
  :: FunPtr (Ptr C'cddb_site_t -> IO C'cddb_error_t)

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

{-# LINE 24 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_address" c'cddb_site_get_address
  :: Ptr C'cddb_site_t -> Ptr CString -> Ptr CUInt -> IO C'cddb_error_t
foreign import ccall "&cddb_site_get_address" p'cddb_site_get_address
  :: FunPtr (Ptr C'cddb_site_t -> Ptr CString -> Ptr CUInt -> IO C'cddb_error_t)

{-# LINE 26 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_address" c'cddb_site_set_address
  :: Ptr C'cddb_site_t -> CString -> CUInt -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_address" p'cddb_site_set_address
  :: FunPtr (Ptr C'cddb_site_t -> CString -> CUInt -> IO C'cddb_error_t)

{-# LINE 28 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_protocol" c'cddb_site_get_protocol
  :: Ptr C'cddb_site_t -> IO C'cddb_protocol_t
foreign import ccall "&cddb_site_get_protocol" p'cddb_site_get_protocol
  :: FunPtr (Ptr C'cddb_site_t -> IO C'cddb_protocol_t)

{-# LINE 30 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_protocol" c'cddb_site_set_protocol
  :: Ptr C'cddb_site_t -> C'cddb_protocol_t -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_protocol" p'cddb_site_set_protocol
  :: FunPtr (Ptr C'cddb_site_t -> C'cddb_protocol_t -> IO C'cddb_error_t)

{-# LINE 32 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_query_path" c'cddb_site_get_query_path
  :: Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_get_query_path" p'cddb_site_get_query_path
  :: FunPtr (Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t)

{-# LINE 34 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_query_path" c'cddb_site_set_query_path
  :: Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_query_path" p'cddb_site_set_query_path
  :: FunPtr (Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t)

{-# LINE 36 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_submit_path" c'cddb_site_get_submit_path
  :: Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_get_submit_path" p'cddb_site_get_submit_path
  :: FunPtr (Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t)

{-# LINE 38 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_submit_path" c'cddb_site_set_submit_path
  :: Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_submit_path" p'cddb_site_set_submit_path
  :: FunPtr (Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t)

{-# LINE 40 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_location" c'cddb_site_get_location
  :: Ptr C'cddb_site_t -> Ptr CFloat -> Ptr CFloat -> IO C'cddb_error_t
foreign import ccall "&cddb_site_get_location" p'cddb_site_get_location
  :: FunPtr (Ptr C'cddb_site_t -> Ptr CFloat -> Ptr CFloat -> IO C'cddb_error_t)

{-# LINE 42 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_location" c'cddb_site_set_location
  :: Ptr C'cddb_site_t -> CFloat -> CFloat -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_location" p'cddb_site_set_location
  :: FunPtr (Ptr C'cddb_site_t -> CFloat -> CFloat -> IO C'cddb_error_t)

{-# LINE 44 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_get_description" c'cddb_site_get_description
  :: Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_get_description" p'cddb_site_get_description
  :: FunPtr (Ptr C'cddb_site_t -> Ptr CString -> IO C'cddb_error_t)

{-# LINE 46 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_set_description" c'cddb_site_set_description
  :: Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t
foreign import ccall "&cddb_site_set_description" p'cddb_site_set_description
  :: FunPtr (Ptr C'cddb_site_t -> CString -> IO C'cddb_error_t)

{-# LINE 48 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_parse" c'cddb_site_parse
  :: Ptr C'cddb_site_t -> CString -> IO CInt
foreign import ccall "&cddb_site_parse" p'cddb_site_parse
  :: FunPtr (Ptr C'cddb_site_t -> CString -> IO CInt)

{-# LINE 49 "src/Bindings/Libcddb/CddbSite.hsc" #-}
foreign import ccall "cddb_site_print" c'cddb_site_print
  :: Ptr C'cddb_site_t -> IO C'cddb_error_t
foreign import ccall "&cddb_site_print" p'cddb_site_print
  :: FunPtr (Ptr C'cddb_site_t -> IO C'cddb_error_t)

{-# LINE 50 "src/Bindings/Libcddb/CddbSite.hsc" #-}