{-# OPTIONS_GHC -Wall #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} {-# OPTIONS_GHC -fno-warn-orphans #-} {-# Language ForeignFunctionInterface #-} {-# Language FlexibleInstances #-} {-# Language MultiParamTypeClasses #-} module Casadi.Wrappers.Classes.Callback ( Callback, CallbackClass(..), callback, ) 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 Callback where show = unsafePerformIO . printableObject_getDescription -- direct wrapper foreign import ccall unsafe "CasADi__Callback__Callback" c_CasADi__Callback__Callback :: IO (Ptr Callback') casADi__Callback__Callback :: IO Callback casADi__Callback__Callback = c_CasADi__Callback__Callback >>= wrapReturn -- classy wrapper {-| >> CasADi::Callback::Callback() >------------------------------------------------------------------------ > >Default constructor. > >> CasADi::Callback::Callback(CallbackCPtr ptr) >------------------------------------------------------------------------ > >Construct from C pointer. -} callback :: IO Callback callback = casADi__Callback__Callback