{-# LINE 1 "src/Bindings/LibBladeRF/Utils.hsc" #-}

{-# LINE 2 "src/Bindings/LibBladeRF/Utils.hsc" #-}

{-# LINE 3 "src/Bindings/LibBladeRF/Utils.hsc" #-}

{-# OPTIONS_HADDOCK hide #-}

module Bindings.LibBladeRF.Utils where

import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word

{-# LINE 9 "src/Bindings/LibBladeRF/Utils.hsc" #-}
import Bindings.LibBladeRF.Types

foreign import ccall "bladerf_get_serial" c'bladerf_get_serial
  :: Ptr (C'bladerf) -> CString -> IO (CInt)
foreign import ccall "&bladerf_get_serial" p'bladerf_get_serial
  :: FunPtr (Ptr (C'bladerf) -> CString -> IO (CInt))

{-# LINE 12 "src/Bindings/LibBladeRF/Utils.hsc" #-}

foreign import ccall "bladerf_get_vctcxo_trim" c'bladerf_get_vctcxo_trim
  :: Ptr (C'bladerf) -> Ptr (Word16) -> CInt
foreign import ccall "&bladerf_get_vctcxo_trim" p'bladerf_get_vctcxo_trim
  :: FunPtr (Ptr (C'bladerf) -> Ptr (Word16) -> CInt)

{-# LINE 14 "src/Bindings/LibBladeRF/Utils.hsc" #-}


foreign import ccall "bladerf_get_fpga_size" c'bladerf_get_fpga_size
  :: Ptr (C'bladerf) -> Ptr (C'bladerf_fpga_size) -> IO (CInt)
foreign import ccall "&bladerf_get_fpga_size" p'bladerf_get_fpga_size
  :: FunPtr (Ptr (C'bladerf) -> Ptr (C'bladerf_fpga_size) -> IO (CInt))

{-# LINE 17 "src/Bindings/LibBladeRF/Utils.hsc" #-}
foreign import ccall "bladerf_is_fpga_configured" c'bladerf_is_fpga_configured
  :: Ptr (C'bladerf) -> IO (CInt)
foreign import ccall "&bladerf_is_fpga_configured" p'bladerf_is_fpga_configured
  :: FunPtr (Ptr (C'bladerf) -> IO (CInt))

{-# LINE 18 "src/Bindings/LibBladeRF/Utils.hsc" #-}
foreign import ccall "bladerf_fpga_version" c'bladerf_fpga_version
  :: Ptr (C'bladerf) -> Ptr (C'bladerf_version) -> IO (CInt)
foreign import ccall "&bladerf_fpga_version" p'bladerf_fpga_version
  :: FunPtr (Ptr (C'bladerf) -> Ptr (C'bladerf_version) -> IO (CInt))

{-# LINE 19 "src/Bindings/LibBladeRF/Utils.hsc" #-}

foreign import ccall "bladerf_load_fpga" c'bladerf_load_fpga
  :: Ptr (C'bladerf) -> CString -> IO (CInt)
foreign import ccall "&bladerf_load_fpga" p'bladerf_load_fpga
  :: FunPtr (Ptr (C'bladerf) -> CString -> IO (CInt))

{-# LINE 21 "src/Bindings/LibBladeRF/Utils.hsc" #-}


foreign import ccall "bladerf_device_speed" c'bladerf_device_speed
  :: Ptr (C'bladerf) -> IO (C'bladerf_dev_speed)
foreign import ccall "&bladerf_device_speed" p'bladerf_device_speed
  :: FunPtr (Ptr (C'bladerf) -> IO (C'bladerf_dev_speed))

{-# LINE 24 "src/Bindings/LibBladeRF/Utils.hsc" #-}

foreign import ccall "bladerf_fw_version" c'bladerf_fw_version
  :: Ptr (C'bladerf) -> Ptr (C'bladerf_version) -> IO (CInt)
foreign import ccall "&bladerf_fw_version" p'bladerf_fw_version
  :: FunPtr (Ptr (C'bladerf) -> Ptr (C'bladerf_version) -> IO (CInt))

{-# LINE 26 "src/Bindings/LibBladeRF/Utils.hsc" #-}

-- #ccall bladerf_stderr , CInt -> Ptr (CChar)

foreign import ccall "bladerf_version" c'bladerf_version
  :: Ptr (C'bladerf_version) -> IO ()
foreign import ccall "&bladerf_version" p'bladerf_version
  :: FunPtr (Ptr (C'bladerf_version) -> IO ())

{-# LINE 30 "src/Bindings/LibBladeRF/Utils.hsc" #-}

foreign import ccall "bladerf_log_set_verbosity" c'bladerf_log_set_verbosity
  :: C'bladerf_log_level -> IO ()
foreign import ccall "&bladerf_log_set_verbosity" p'bladerf_log_set_verbosity
  :: FunPtr (C'bladerf_log_level -> IO ())

{-# LINE 32 "src/Bindings/LibBladeRF/Utils.hsc" #-}