-- Automatically generated by HaskellDirect (ihc.exe), snapshot 061203 -- Created: 12:26 E. Europe Standard Time, Wednesday 24 December, 2003 -- Command line: fpstfmt.idl -fcom -server module FpstfmtProxy ( IPersist , IPersist_ , iidIPersist , mkIPersist_vtbl , IPersistFileFormat , IPersistFileFormat_ , iidIPersistFileFormat , mkIPersistFileFormat_vtbl ) where import Prelude (fromEnum, toEnum) import qualified Prelude import qualified Com (IUnknown, IID, mkIID, CLSID, marshallCLSID, returnHR) import qualified ComPrim (primCopyGUID) import qualified ComServ (ComVTable, createComVTable, getObjState) import qualified Foreign.Ptr (Ptr, castPtr) import qualified Foreign.ForeignPtr (castForeignPtr) import qualified HDirect (writefptr, writeInt32, writePtr, writeWord32) import qualified Int (Int32) import qualified WideString (WideString, unmarshallWideString, marshallWideString) import qualified Word (Word32) import qualified Wtypes (BOOL, DWORD, LPCOLESTR, LPOLESTR) -- -------------------------------------------------- -- -- interface IPersist -- -- -------------------------------------------------- data IPersist_ a = IPersist__ type IPersist a = Com.IUnknown (IPersist_ a) iidIPersist :: Com.IID (IPersist ()) iidIPersist = Com.mkIID "{0000010c-0000-0000-C000-000000000046}" mkIPersist_vtbl :: (objState -> Prelude.IO Com.CLSID) -> Prelude.IO (ComServ.ComVTable (IPersist ()) objState) mkIPersist_vtbl getClassID = do meth_arg0 <- export_getClassID (prim_getClassID getClassID) ComServ.createComVTable [meth_arg0] foreign import stdcall "wrapper" export_getClassID :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr Com.CLSID -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) prim_getClassID :: (objState -> Prelude.IO Com.CLSID) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr Com.CLSID -> Prelude.IO Int.Int32 prim_getClassID getClassID_meth iptr out_pClassID = Com.returnHR (ComServ.getObjState iptr Prelude.>>= \ obj -> getClassID_meth obj Prelude.>>= \ res__pClassID -> Com.marshallCLSID res__pClassID Prelude.>>= \ res__pClassID -> ComPrim.primCopyGUID (Foreign.ForeignPtr.castForeignPtr res__pClassID) (Foreign.Ptr.castPtr out_pClassID)) -- -------------------------------------------------- -- -- interface IPersistFileFormat -- -- -------------------------------------------------- data IPersistFileFormat_ a = IPersistFileFormat__ type IPersistFileFormat a = IPersist (IPersistFileFormat_ a) iidIPersistFileFormat :: Com.IID (IPersistFileFormat ()) iidIPersistFileFormat = Com.mkIID "{3AFAE242-B530-11d0-8199-00A0C91BBEE3}" mkIPersistFileFormat_vtbl :: (objState -> Prelude.IO Com.CLSID) -> (objState -> Prelude.IO Wtypes.BOOL) -> (Wtypes.DWORD -> objState -> Prelude.IO ()) -> (Wtypes.LPCOLESTR -> Wtypes.DWORD -> Wtypes.BOOL -> objState -> Prelude.IO ()) -> (Wtypes.LPCOLESTR -> Wtypes.BOOL -> Wtypes.DWORD -> objState -> Prelude.IO ()) -> (Wtypes.LPCOLESTR -> objState -> Prelude.IO ()) -> (objState -> Prelude.IO (Wtypes.LPOLESTR, Wtypes.DWORD)) -> (objState -> Prelude.IO Wtypes.LPOLESTR) -> Prelude.IO (ComServ.ComVTable (IPersistFileFormat ()) objState) mkIPersistFileFormat_vtbl getClassID isDirty initNew load save saveCompleted getCurFile getFormatList = do meth_arg0 <- export_getClassID (prim_getClassID getClassID) meth_arg1 <- export_isDirty (prim_isDirty isDirty) meth_arg2 <- export_initNew (prim_initNew initNew) meth_arg3 <- export_load (prim_load load) meth_arg4 <- export_save (prim_save save) meth_arg5 <- export_saveCompleted (prim_saveCompleted saveCompleted) meth_arg6 <- export_getCurFile (prim_getCurFile getCurFile) meth_arg7 <- export_getFormatList (prim_getFormatList getFormatList) ComServ.createComVTable [ meth_arg0 , meth_arg1 , meth_arg2 , meth_arg3 , meth_arg4 , meth_arg5 , meth_arg6 , meth_arg7 ] foreign import stdcall "wrapper" export_isDirty :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr Int.Int32 -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_initNew :: (Foreign.Ptr.Ptr a -> Word.Word32 -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_load :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr WideString.WideString -> Word.Word32 -> Int.Int32 -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_save :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr WideString.WideString -> Int.Int32 -> Word.Word32 -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_saveCompleted :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr WideString.WideString -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_getCurFile :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr WideString.WideString) -> Foreign.Ptr.Ptr Word.Word32 -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) foreign import stdcall "wrapper" export_getFormatList :: (Foreign.Ptr.Ptr a -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr WideString.WideString) -> Prelude.IO Int.Int32) -> Prelude.IO (Foreign.Ptr.Ptr ()) prim_isDirty :: (objState -> Prelude.IO Wtypes.BOOL) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr Int.Int32 -> Prelude.IO Int.Int32 prim_isDirty isDirty_meth iptr out_pfIsDirty = Com.returnHR (ComServ.getObjState iptr Prelude.>>= \ obj -> isDirty_meth obj Prelude.>>= \ res__pfIsDirty -> HDirect.writeInt32 out_pfIsDirty res__pfIsDirty) prim_initNew :: (Wtypes.DWORD -> objState -> Prelude.IO ()) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Word.Word32 -> Prelude.IO Int.Int32 prim_initNew initNew_meth iptr nFormatIndex = Com.returnHR (ComServ.getObjState iptr Prelude.>>= \ obj -> initNew_meth nFormatIndex obj) prim_load :: (Wtypes.LPCOLESTR -> Wtypes.DWORD -> Wtypes.BOOL -> objState -> Prelude.IO ()) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr WideString.WideString -> Word.Word32 -> Int.Int32 -> Prelude.IO Int.Int32 prim_load load_meth iptr pszFilename grfMode fReadOnly = Com.returnHR (WideString.unmarshallWideString pszFilename Prelude.>>= \ pszFilename -> ComServ.getObjState iptr Prelude.>>= \ obj -> load_meth pszFilename grfMode fReadOnly obj) prim_save :: (Wtypes.LPCOLESTR -> Wtypes.BOOL -> Wtypes.DWORD -> objState -> Prelude.IO ()) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr WideString.WideString -> Int.Int32 -> Word.Word32 -> Prelude.IO Int.Int32 prim_save save_meth iptr pszFilename fRemember nFormatIndex = Com.returnHR (WideString.unmarshallWideString pszFilename Prelude.>>= \ pszFilename -> ComServ.getObjState iptr Prelude.>>= \ obj -> save_meth pszFilename fRemember nFormatIndex obj) prim_saveCompleted :: (Wtypes.LPCOLESTR -> objState -> Prelude.IO ()) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr WideString.WideString -> Prelude.IO Int.Int32 prim_saveCompleted saveCompleted_meth iptr pszFilename = Com.returnHR (WideString.unmarshallWideString pszFilename Prelude.>>= \ pszFilename -> ComServ.getObjState iptr Prelude.>>= \ obj -> saveCompleted_meth pszFilename obj) prim_getCurFile :: (objState -> Prelude.IO (Wtypes.LPOLESTR, Wtypes.DWORD)) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr WideString.WideString) -> Foreign.Ptr.Ptr Word.Word32 -> Prelude.IO Int.Int32 prim_getCurFile getCurFile_meth iptr out_ppszFilename out_pnFormatIndex = Com.returnHR (ComServ.getObjState iptr Prelude.>>= \ obj -> getCurFile_meth obj Prelude.>>= \ (res__ppszFilename, res__pnFormatIndex) -> WideString.marshallWideString res__ppszFilename Prelude.>>= \ res__ppszFilename -> HDirect.writePtr (Foreign.Ptr.castPtr out_ppszFilename) res__ppszFilename Prelude.>> HDirect.writeWord32 out_pnFormatIndex res__pnFormatIndex) prim_getFormatList :: (objState -> Prelude.IO Wtypes.LPOLESTR) -> Foreign.Ptr.Ptr (Com.IUnknown ()) -> Foreign.Ptr.Ptr (Foreign.Ptr.Ptr WideString.WideString) -> Prelude.IO Int.Int32 prim_getFormatList getFormatList_meth iptr out_ppszFormatList = Com.returnHR (ComServ.getObjState iptr Prelude.>>= \ obj -> getFormatList_meth obj Prelude.>>= \ res__ppszFormatList -> WideString.marshallWideString res__ppszFormatList Prelude.>>= \ res__ppszFormatList -> HDirect.writePtr (Foreign.Ptr.castPtr out_ppszFormatList) res__ppszFormatList)