module Bindings.Fann.CreationDestructionExecution 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.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Bindings.Fann.DataStructures
foreign import ccall "fann_create_array" c'fann_create_array
:: CFloat -> CFloat -> CUInt -> Ptr CUInt -> IO (Ptr C'fann)
foreign import ccall "&fann_create_array" p'fann_create_array
:: FunPtr (CFloat -> CFloat -> CUInt -> Ptr CUInt -> IO (Ptr C'fann))
foreign import ccall "fann_create_shortcut_array" c'fann_create_shortcut_array
:: CFloat -> CUInt -> Ptr CUInt -> IO (Ptr C'fann)
foreign import ccall "&fann_create_shortcut_array" p'fann_create_shortcut_array
:: FunPtr (CFloat -> CUInt -> Ptr CUInt -> IO (Ptr C'fann))
foreign import ccall "fann_destroy" c'fann_destroy
:: Ptr C'fann -> IO ()
foreign import ccall "&fann_destroy" p'fann_destroy
:: FunPtr (Ptr C'fann -> IO ())
foreign import ccall "fann_run" c'fann_run
:: Ptr C'fann -> Ptr CFloat -> IO (Ptr CFloat)
foreign import ccall "&fann_run" p'fann_run
:: FunPtr (Ptr C'fann -> Ptr CFloat -> IO (Ptr CFloat))
foreign import ccall "fann_randomize_weights" c'fann_randomize_weights
:: Ptr C'fann -> CFloat -> CFloat -> IO ()
foreign import ccall "&fann_randomize_weights" p'fann_randomize_weights
:: FunPtr (Ptr C'fann -> CFloat -> CFloat -> IO ())
foreign import ccall "fann_init_weights" c'fann_init_weights
:: Ptr C'fann -> Ptr C'fann_train_data -> IO ()
foreign import ccall "&fann_init_weights" p'fann_init_weights
:: FunPtr (Ptr C'fann -> Ptr C'fann_train_data -> IO ())
foreign import ccall "fann_print_connections" c'fann_print_connections
:: Ptr C'fann -> IO ()
foreign import ccall "&fann_print_connections" p'fann_print_connections
:: FunPtr (Ptr C'fann -> IO ())