{-# OPTIONS_GHC -Wall #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-orphans #-} {-# Language ForeignFunctionInterface #-} {-# Language FlexibleInstances #-} {-# Language MultiParamTypeClasses #-} module Casadi.Wrappers.Classes.ImplicitFunction ( ImplicitFunction, ImplicitFunctionClass(..), implicitFunction_checkNode, implicitFunction_getF, implicitFunction_getJac, implicitFunction_getLinsol, ) where import Prelude hiding ( Functor ) import Data.Vector ( Vector ) import Foreign.C.Types import Foreign.Ptr ( Ptr ) import Foreign.ForeignPtr ( newForeignPtr ) import System.IO.Unsafe ( unsafePerformIO ) -- for show instances import Casadi.Wrappers.Classes.PrintableObject import Casadi.Wrappers.CToolsInstances ( ) import Casadi.Wrappers.Data import Casadi.Wrappers.Enums import Casadi.MarshalTypes ( CppVec, StdString' ) -- StdOstream' import Casadi.Marshal ( Marshal(..), withMarshal ) import Casadi.WrapReturn ( WrapReturn(..) ) instance Show ImplicitFunction where show = unsafePerformIO . printableObject_getDescription -- direct wrapper foreign import ccall unsafe "CasADi__ImplicitFunction__checkNode" c_CasADi__ImplicitFunction__checkNode :: Ptr ImplicitFunction' -> IO CInt casADi__ImplicitFunction__checkNode :: ImplicitFunction -> IO Bool casADi__ImplicitFunction__checkNode x0 = withMarshal x0 $ \x0' -> c_CasADi__ImplicitFunction__checkNode x0' >>= wrapReturn -- classy wrapper {-| >Check if the node is pointing to the right type of object. -} implicitFunction_checkNode :: ImplicitFunctionClass a => a -> IO Bool implicitFunction_checkNode x = casADi__ImplicitFunction__checkNode (castImplicitFunction x) -- direct wrapper foreign import ccall unsafe "CasADi__ImplicitFunction__getF" c_CasADi__ImplicitFunction__getF :: Ptr ImplicitFunction' -> IO (Ptr Function') casADi__ImplicitFunction__getF :: ImplicitFunction -> IO Function casADi__ImplicitFunction__getF x0 = withMarshal x0 $ \x0' -> c_CasADi__ImplicitFunction__getF x0' >>= wrapReturn -- classy wrapper {-| >Access F. -} implicitFunction_getF :: ImplicitFunctionClass a => a -> IO Function implicitFunction_getF x = casADi__ImplicitFunction__getF (castImplicitFunction x) -- direct wrapper foreign import ccall unsafe "CasADi__ImplicitFunction__getJac" c_CasADi__ImplicitFunction__getJac :: Ptr ImplicitFunction' -> IO (Ptr Function') casADi__ImplicitFunction__getJac :: ImplicitFunction -> IO Function casADi__ImplicitFunction__getJac x0 = withMarshal x0 $ \x0' -> c_CasADi__ImplicitFunction__getJac x0' >>= wrapReturn -- classy wrapper {-| >Access Jacobian. -} implicitFunction_getJac :: ImplicitFunctionClass a => a -> IO Function implicitFunction_getJac x = casADi__ImplicitFunction__getJac (castImplicitFunction x) -- direct wrapper foreign import ccall unsafe "CasADi__ImplicitFunction__getLinsol" c_CasADi__ImplicitFunction__getLinsol :: Ptr ImplicitFunction' -> IO (Ptr LinearSolver') casADi__ImplicitFunction__getLinsol :: ImplicitFunction -> IO LinearSolver casADi__ImplicitFunction__getLinsol x0 = withMarshal x0 $ \x0' -> c_CasADi__ImplicitFunction__getLinsol x0' >>= wrapReturn -- classy wrapper {-| >Access linear solver. -} implicitFunction_getLinsol :: ImplicitFunctionClass a => a -> IO LinearSolver implicitFunction_getLinsol x = casADi__ImplicitFunction__getLinsol (castImplicitFunction x)