casadi-bindings-1.8.0.0: Casadi/Wrappers/Classes/IOScheme.hs
{-# OPTIONS_GHC -Wall #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-orphans #-}
{-# Language ForeignFunctionInterface #-}
{-# Language FlexibleInstances #-}
{-# Language MultiParamTypeClasses #-}
module Casadi.Wrappers.Classes.IOScheme
(
IOScheme,
IOSchemeClass(..),
ioScheme,
ioScheme',
ioScheme'',
ioScheme_checkNode,
ioScheme_compatibleSize,
ioScheme_describe,
ioScheme_describeInput,
ioScheme_describeOutput,
ioScheme_entry,
ioScheme_entryEnum,
ioScheme_entryLabel,
ioScheme_entryNames,
ioScheme_index,
ioScheme_known,
ioScheme_name,
ioScheme_size,
) 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.ForeignToolsInstances ( )
import Casadi.Wrappers.Deleters
import Casadi.Wrappers.Data
import Casadi.Wrappers.Enums
import Casadi.MarshalTypes ( CppVec, CppVecVec, CppVecVecVec,
StdString', CppBool' ) -- StdOstream'
import Casadi.Marshal ( CornerCase(..), Marshal(..) )
import Casadi.WrapReturn ( WrapReturn(..) )
instance Show IOScheme where
show = unsafePerformIO . printableObject_getDescription
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__checkNode" c_CasADi__IOScheme__checkNode
:: Ptr IOScheme' -> IO (Ptr CppBool')
casADi__IOScheme__checkNode
:: IOScheme -> IO Bool
casADi__IOScheme__checkNode x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__checkNode x0' >>= (newForeignPtr c_delete_bool) >>= wrapReturn
-- classy wrapper
{-|
>Check if the node is pointing to the right type of object.
-}
ioScheme_checkNode :: IOSchemeClass a => a -> IO Bool
ioScheme_checkNode x = casADi__IOScheme__checkNode (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__name" c_CasADi__IOScheme__name
:: Ptr IOScheme' -> IO (Ptr StdString')
casADi__IOScheme__name
:: IOScheme -> IO String
casADi__IOScheme__name x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__name x0' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Name of the scheme.
-}
ioScheme_name :: IOSchemeClass a => a -> IO String
ioScheme_name x = casADi__IOScheme__name (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__entryNames" c_CasADi__IOScheme__entryNames
:: Ptr IOScheme' -> IO (Ptr StdString')
casADi__IOScheme__entryNames
:: IOScheme -> IO String
casADi__IOScheme__entryNames x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__entryNames x0' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>List available entries.
-}
ioScheme_entryNames :: IOSchemeClass a => a -> IO String
ioScheme_entryNames x = casADi__IOScheme__entryNames (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__index" c_CasADi__IOScheme__index
:: Ptr IOScheme' -> Ptr StdString' -> IO CInt
casADi__IOScheme__index
:: IOScheme -> String -> IO Int
casADi__IOScheme__index x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__index x0' x1' >>= wrapReturn
-- classy wrapper
{-|
>Get index by entry name.
-}
ioScheme_index :: IOSchemeClass a => a -> String -> IO Int
ioScheme_index x = casADi__IOScheme__index (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__size" c_CasADi__IOScheme__size
:: Ptr IOScheme' -> IO CInt
casADi__IOScheme__size
:: IOScheme -> IO Int
casADi__IOScheme__size x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__size x0' >>= wrapReturn
-- classy wrapper
{-|
>Number of entries.
-}
ioScheme_size :: IOSchemeClass a => a -> IO Int
ioScheme_size x = casADi__IOScheme__size (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__entry" c_CasADi__IOScheme__entry
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__entry
:: IOScheme -> Int -> IO String
casADi__IOScheme__entry x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__entry x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Get the entry name by index.
-}
ioScheme_entry :: IOSchemeClass a => a -> Int -> IO String
ioScheme_entry x = casADi__IOScheme__entry (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__entryLabel" c_CasADi__IOScheme__entryLabel
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__entryLabel
:: IOScheme -> Int -> IO String
casADi__IOScheme__entryLabel x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__entryLabel x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Get the entry label by index If scheme is unknown, returns the index as a
>string.
-}
ioScheme_entryLabel :: IOSchemeClass a => a -> Int -> IO String
ioScheme_entryLabel x = casADi__IOScheme__entryLabel (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__entryEnum" c_CasADi__IOScheme__entryEnum
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__entryEnum
:: IOScheme -> Int -> IO String
casADi__IOScheme__entryEnum x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__entryEnum x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Get the entry enum name by index.
-}
ioScheme_entryEnum :: IOSchemeClass a => a -> Int -> IO String
ioScheme_entryEnum x = casADi__IOScheme__entryEnum (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__describeInput" c_CasADi__IOScheme__describeInput
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__describeInput
:: IOScheme -> Int -> IO String
casADi__IOScheme__describeInput x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__describeInput x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Describe the index as an input.
-}
ioScheme_describeInput :: IOSchemeClass a => a -> Int -> IO String
ioScheme_describeInput x = casADi__IOScheme__describeInput (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__describeOutput" c_CasADi__IOScheme__describeOutput
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__describeOutput
:: IOScheme -> Int -> IO String
casADi__IOScheme__describeOutput x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__describeOutput x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Describe the index as an output.
-}
ioScheme_describeOutput :: IOSchemeClass a => a -> Int -> IO String
ioScheme_describeOutput x = casADi__IOScheme__describeOutput (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__describe" c_CasADi__IOScheme__describe
:: Ptr IOScheme' -> CInt -> IO (Ptr StdString')
casADi__IOScheme__describe
:: IOScheme -> Int -> IO String
casADi__IOScheme__describe x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__describe x0' x1' >>= (newForeignPtr c_delete_std__string) >>= wrapReturn
-- classy wrapper
{-|
>Describe the index.
-}
ioScheme_describe :: IOSchemeClass a => a -> Int -> IO String
ioScheme_describe x = casADi__IOScheme__describe (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__known" c_CasADi__IOScheme__known
:: Ptr IOScheme' -> IO (Ptr CppBool')
casADi__IOScheme__known
:: IOScheme -> IO Bool
casADi__IOScheme__known x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__known x0' >>= (newForeignPtr c_delete_bool) >>= wrapReturn
-- classy wrapper
{-|
>Check wether the scheme is known.
-}
ioScheme_known :: IOSchemeClass a => a -> IO Bool
ioScheme_known x = casADi__IOScheme__known (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__compatibleSize" c_CasADi__IOScheme__compatibleSize
:: Ptr IOScheme' -> CInt -> IO CInt
casADi__IOScheme__compatibleSize
:: IOScheme -> Int -> IO Int
casADi__IOScheme__compatibleSize x0 x1 =
withMarshal x0 $ \x0' ->
withMarshal x1 $ \x1' ->
c_CasADi__IOScheme__compatibleSize x0' x1' >>= wrapReturn
-- classy wrapper
{-|
>Check wether this scheme is compatible with the given size.
-}
ioScheme_compatibleSize :: IOSchemeClass a => a -> Int -> IO Int
ioScheme_compatibleSize x = casADi__IOScheme__compatibleSize (castIOScheme x)
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__IOScheme" c_CasADi__IOScheme__IOScheme
:: IO (Ptr IOScheme')
casADi__IOScheme__IOScheme
:: IO IOScheme
casADi__IOScheme__IOScheme =
c_CasADi__IOScheme__IOScheme >>= (newForeignPtr c_delete_CasADi__IOScheme) >>= wrapReturn
-- classy wrapper
{-|
>> CasADi::IOScheme::IOScheme()
>------------------------------------------------------------------------
>
>Default constructor.
>
>> CasADi::IOScheme::IOScheme(InputOutputScheme scheme)
>------------------------------------------------------------------------
>
>Constructor with enum.
>
>> CasADi::IOScheme::IOScheme(const std::vector< std::string > &entries)
>------------------------------------------------------------------------
>
>Constructor with entry names.
-}
ioScheme :: IO IOScheme
ioScheme = casADi__IOScheme__IOScheme
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__IOScheme_TIC" c_CasADi__IOScheme__IOScheme_TIC
:: CInt -> IO (Ptr IOScheme')
casADi__IOScheme__IOScheme'
:: InputOutputScheme -> IO IOScheme
casADi__IOScheme__IOScheme' x0 =
withMarshal x0 $ \x0' ->
c_CasADi__IOScheme__IOScheme_TIC x0' >>= (newForeignPtr c_delete_CasADi__IOScheme) >>= wrapReturn
-- classy wrapper
ioScheme' :: InputOutputScheme -> IO IOScheme
ioScheme' = casADi__IOScheme__IOScheme'
-- direct wrapper
foreign import ccall unsafe "CasADi__IOScheme__IOScheme_TIC_TIC" c_CasADi__IOScheme__IOScheme_TIC_TIC
:: Ptr (CppVec (Ptr StdString')) -> IO (Ptr IOScheme')
casADi__IOScheme__IOScheme''
:: Vector String -> IO IOScheme
casADi__IOScheme__IOScheme'' x0 =
withMarshal (CornerCase x0) $ \x0' ->
c_CasADi__IOScheme__IOScheme_TIC_TIC x0' >>= (newForeignPtr c_delete_CasADi__IOScheme) >>= wrapReturn
-- classy wrapper
ioScheme'' :: Vector String -> IO IOScheme
ioScheme'' = casADi__IOScheme__IOScheme''