

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0366 */
/* at Wed May 20 19:06:45 2009
 */
/* Compiler settings for ..\..\builds\Release_Win32\_CommonData.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef ___CommonData_h__
#define ___CommonData_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IRsScanner_FWD_DEFINED__
#define __IRsScanner_FWD_DEFINED__
typedef interface IRsScanner IRsScanner;
#endif 	/* __IRsScanner_FWD_DEFINED__ */


#ifndef __IRfPreferencesFn_FWD_DEFINED__
#define __IRfPreferencesFn_FWD_DEFINED__
typedef interface IRfPreferencesFn IRfPreferencesFn;
#endif 	/* __IRfPreferencesFn_FWD_DEFINED__ */


#ifndef __IRfProjectFn_FWD_DEFINED__
#define __IRfProjectFn_FWD_DEFINED__
typedef interface IRfProjectFn IRfProjectFn;
#endif 	/* __IRfProjectFn_FWD_DEFINED__ */


#ifndef __IRnProgressReport_FWD_DEFINED__
#define __IRnProgressReport_FWD_DEFINED__
typedef interface IRnProgressReport IRnProgressReport;
#endif 	/* __IRnProgressReport_FWD_DEFINED__ */


#ifndef __IRfProgressReport_FWD_DEFINED__
#define __IRfProgressReport_FWD_DEFINED__
typedef interface IRfProgressReport IRfProgressReport;
#endif 	/* __IRfProgressReport_FWD_DEFINED__ */


#ifndef __IRfBitmapFn_FWD_DEFINED__
#define __IRfBitmapFn_FWD_DEFINED__
typedef interface IRfBitmapFn IRfBitmapFn;
#endif 	/* __IRfBitmapFn_FWD_DEFINED__ */


#ifndef __IRcProjectFile_FWD_DEFINED__
#define __IRcProjectFile_FWD_DEFINED__
typedef interface IRcProjectFile IRcProjectFile;
#endif 	/* __IRcProjectFile_FWD_DEFINED__ */


#ifndef __IRsFileTypeRsProject_FWD_DEFINED__
#define __IRsFileTypeRsProject_FWD_DEFINED__
typedef interface IRsFileTypeRsProject IRsFileTypeRsProject;
#endif 	/* __IRsFileTypeRsProject_FWD_DEFINED__ */


#ifndef __IRsSimpleBuffer_FWD_DEFINED__
#define __IRsSimpleBuffer_FWD_DEFINED__
typedef interface IRsSimpleBuffer IRsSimpleBuffer;
#endif 	/* __IRsSimpleBuffer_FWD_DEFINED__ */


#ifndef __IRdSoundDisp_FWD_DEFINED__
#define __IRdSoundDisp_FWD_DEFINED__
typedef interface IRdSoundDisp IRdSoundDisp;
#endif 	/* __IRdSoundDisp_FWD_DEFINED__ */


#ifndef __IRdSound_FWD_DEFINED__
#define __IRdSound_FWD_DEFINED__
typedef interface IRdSound IRdSound;
#endif 	/* __IRdSound_FWD_DEFINED__ */


#ifndef __IRsManagedBitmapBuffer_FWD_DEFINED__
#define __IRsManagedBitmapBuffer_FWD_DEFINED__
typedef interface IRsManagedBitmapBuffer IRsManagedBitmapBuffer;
#endif 	/* __IRsManagedBitmapBuffer_FWD_DEFINED__ */


#ifndef __IRsBitmapManager_FWD_DEFINED__
#define __IRsBitmapManager_FWD_DEFINED__
typedef interface IRsBitmapManager IRsBitmapManager;
#endif 	/* __IRsBitmapManager_FWD_DEFINED__ */


#ifndef __IRpCommonData_FWD_DEFINED__
#define __IRpCommonData_FWD_DEFINED__
typedef interface IRpCommonData IRpCommonData;
#endif 	/* __IRpCommonData_FWD_DEFINED__ */


#ifndef __IRcPlaySound_FWD_DEFINED__
#define __IRcPlaySound_FWD_DEFINED__
typedef interface IRcPlaySound IRcPlaySound;
#endif 	/* __IRcPlaySound_FWD_DEFINED__ */


#ifndef __IRdBinary_FWD_DEFINED__
#define __IRdBinary_FWD_DEFINED__
typedef interface IRdBinary IRdBinary;
#endif 	/* __IRdBinary_FWD_DEFINED__ */


#ifndef __IRdColorDisp_FWD_DEFINED__
#define __IRdColorDisp_FWD_DEFINED__
typedef interface IRdColorDisp IRdColorDisp;
#endif 	/* __IRdColorDisp_FWD_DEFINED__ */


#ifndef __IRdCubeTexture_FWD_DEFINED__
#define __IRdCubeTexture_FWD_DEFINED__
typedef interface IRdCubeTexture IRdCubeTexture;
#endif 	/* __IRdCubeTexture_FWD_DEFINED__ */


#ifndef __IRdCubeTextureDisp_FWD_DEFINED__
#define __IRdCubeTextureDisp_FWD_DEFINED__
typedef interface IRdCubeTextureDisp IRdCubeTextureDisp;
#endif 	/* __IRdCubeTextureDisp_FWD_DEFINED__ */


#ifndef __IRdPoint_FWD_DEFINED__
#define __IRdPoint_FWD_DEFINED__
typedef interface IRdPoint IRdPoint;
#endif 	/* __IRdPoint_FWD_DEFINED__ */


#ifndef __IRdRectangle_FWD_DEFINED__
#define __IRdRectangle_FWD_DEFINED__
typedef interface IRdRectangle IRdRectangle;
#endif 	/* __IRdRectangle_FWD_DEFINED__ */


#ifndef __IRdStrEnum_FWD_DEFINED__
#define __IRdStrEnum_FWD_DEFINED__
typedef interface IRdStrEnum IRdStrEnum;
#endif 	/* __IRdStrEnum_FWD_DEFINED__ */


#ifndef __IRdUcharArray_FWD_DEFINED__
#define __IRdUcharArray_FWD_DEFINED__
typedef interface IRdUcharArray IRdUcharArray;
#endif 	/* __IRdUcharArray_FWD_DEFINED__ */


#ifndef __IRdVolumeTexture_FWD_DEFINED__
#define __IRdVolumeTexture_FWD_DEFINED__
typedef interface IRdVolumeTexture IRdVolumeTexture;
#endif 	/* __IRdVolumeTexture_FWD_DEFINED__ */


#ifndef __IRdVolumeTextureDisp_FWD_DEFINED__
#define __IRdVolumeTextureDisp_FWD_DEFINED__
typedef interface IRdVolumeTextureDisp IRdVolumeTextureDisp;
#endif 	/* __IRdVolumeTextureDisp_FWD_DEFINED__ */


#ifndef __IRiCommonData_FWD_DEFINED__
#define __IRiCommonData_FWD_DEFINED__
typedef interface IRiCommonData IRiCommonData;
#endif 	/* __IRiCommonData_FWD_DEFINED__ */


#ifndef __IRiProject_FWD_DEFINED__
#define __IRiProject_FWD_DEFINED__
typedef interface IRiProject IRiProject;
#endif 	/* __IRiProject_FWD_DEFINED__ */


#ifndef __IRnImportCubeMap_FWD_DEFINED__
#define __IRnImportCubeMap_FWD_DEFINED__
typedef interface IRnImportCubeMap IRnImportCubeMap;
#endif 	/* __IRnImportCubeMap_FWD_DEFINED__ */


#ifndef __IRnImportVolumeMap_FWD_DEFINED__
#define __IRnImportVolumeMap_FWD_DEFINED__
typedef interface IRnImportVolumeMap IRnImportVolumeMap;
#endif 	/* __IRnImportVolumeMap_FWD_DEFINED__ */


#ifndef __IRnPreferences_FWD_DEFINED__
#define __IRnPreferences_FWD_DEFINED__
typedef interface IRnPreferences IRnPreferences;
#endif 	/* __IRnPreferences_FWD_DEFINED__ */


#ifndef __IRnProject_FWD_DEFINED__
#define __IRnProject_FWD_DEFINED__
typedef interface IRnProject IRnProject;
#endif 	/* __IRnProject_FWD_DEFINED__ */


#ifndef __IRsCommonDataNodeFactory_FWD_DEFINED__
#define __IRsCommonDataNodeFactory_FWD_DEFINED__
typedef interface IRsCommonDataNodeFactory IRsCommonDataNodeFactory;
#endif 	/* __IRsCommonDataNodeFactory_FWD_DEFINED__ */


#ifndef __IRsCommDataCmdFactory_FWD_DEFINED__
#define __IRsCommDataCmdFactory_FWD_DEFINED__
typedef interface IRsCommDataCmdFactory IRsCommDataCmdFactory;
#endif 	/* __IRsCommDataCmdFactory_FWD_DEFINED__ */


#ifndef __IRsCommDataObjFactory_FWD_DEFINED__
#define __IRsCommDataObjFactory_FWD_DEFINED__
typedef interface IRsCommDataObjFactory IRsCommDataObjFactory;
#endif 	/* __IRsCommDataObjFactory_FWD_DEFINED__ */


#ifndef __IRdBitmapDisp_FWD_DEFINED__
#define __IRdBitmapDisp_FWD_DEFINED__
typedef interface IRdBitmapDisp IRdBitmapDisp;
#endif 	/* __IRdBitmapDisp_FWD_DEFINED__ */


#ifndef __IRsGenArray_FWD_DEFINED__
#define __IRsGenArray_FWD_DEFINED__
typedef interface IRsGenArray IRsGenArray;
#endif 	/* __IRsGenArray_FWD_DEFINED__ */


#ifndef __IRdObjArray_FWD_DEFINED__
#define __IRdObjArray_FWD_DEFINED__
typedef interface IRdObjArray IRdObjArray;
#endif 	/* __IRdObjArray_FWD_DEFINED__ */


#ifndef __IRdIntArray_FWD_DEFINED__
#define __IRdIntArray_FWD_DEFINED__
typedef interface IRdIntArray IRdIntArray;
#endif 	/* __IRdIntArray_FWD_DEFINED__ */


#ifndef __IRdNumArray_FWD_DEFINED__
#define __IRdNumArray_FWD_DEFINED__
typedef interface IRdNumArray IRdNumArray;
#endif 	/* __IRdNumArray_FWD_DEFINED__ */


#ifndef __IRdBoolArray_FWD_DEFINED__
#define __IRdBoolArray_FWD_DEFINED__
typedef interface IRdBoolArray IRdBoolArray;
#endif 	/* __IRdBoolArray_FWD_DEFINED__ */


#ifndef __IRdStrArray_FWD_DEFINED__
#define __IRdStrArray_FWD_DEFINED__
typedef interface IRdStrArray IRdStrArray;
#endif 	/* __IRdStrArray_FWD_DEFINED__ */


#ifndef __IRnBitmapsToCubeTex_FWD_DEFINED__
#define __IRnBitmapsToCubeTex_FWD_DEFINED__
typedef interface IRnBitmapsToCubeTex IRnBitmapsToCubeTex;
#endif 	/* __IRnBitmapsToCubeTex_FWD_DEFINED__ */


#ifndef __IRsDadApplicator_FWD_DEFINED__
#define __IRsDadApplicator_FWD_DEFINED__
typedef interface IRsDadApplicator IRsDadApplicator;
#endif 	/* __IRsDadApplicator_FWD_DEFINED__ */


#ifndef __CRdSound_FWD_DEFINED__
#define __CRdSound_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdSound CRdSound;
#else
typedef struct CRdSound CRdSound;
#endif /* __cplusplus */

#endif 	/* __CRdSound_FWD_DEFINED__ */


#ifndef __CRpCommonData_FWD_DEFINED__
#define __CRpCommonData_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRpCommonData CRpCommonData;
#else
typedef struct CRpCommonData CRpCommonData;
#endif /* __cplusplus */

#endif 	/* __CRpCommonData_FWD_DEFINED__ */


#ifndef __CRdColor_FWD_DEFINED__
#define __CRdColor_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdColor CRdColor;
#else
typedef struct CRdColor CRdColor;
#endif /* __cplusplus */

#endif 	/* __CRdColor_FWD_DEFINED__ */


#ifndef __CRdCubeTexture_FWD_DEFINED__
#define __CRdCubeTexture_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdCubeTexture CRdCubeTexture;
#else
typedef struct CRdCubeTexture CRdCubeTexture;
#endif /* __cplusplus */

#endif 	/* __CRdCubeTexture_FWD_DEFINED__ */


#ifndef __CRdStrEnum_FWD_DEFINED__
#define __CRdStrEnum_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdStrEnum CRdStrEnum;
#else
typedef struct CRdStrEnum CRdStrEnum;
#endif /* __cplusplus */

#endif 	/* __CRdStrEnum_FWD_DEFINED__ */


#ifndef __CRdVolumeTexture_FWD_DEFINED__
#define __CRdVolumeTexture_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdVolumeTexture CRdVolumeTexture;
#else
typedef struct CRdVolumeTexture CRdVolumeTexture;
#endif /* __cplusplus */

#endif 	/* __CRdVolumeTexture_FWD_DEFINED__ */


#ifndef __CRiCommonData_FWD_DEFINED__
#define __CRiCommonData_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRiCommonData CRiCommonData;
#else
typedef struct CRiCommonData CRiCommonData;
#endif /* __cplusplus */

#endif 	/* __CRiCommonData_FWD_DEFINED__ */


#ifndef __CRiProject_FWD_DEFINED__
#define __CRiProject_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRiProject CRiProject;
#else
typedef struct CRiProject CRiProject;
#endif /* __cplusplus */

#endif 	/* __CRiProject_FWD_DEFINED__ */


#ifndef __CRdBitmap_FWD_DEFINED__
#define __CRdBitmap_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdBitmap CRdBitmap;
#else
typedef struct CRdBitmap CRdBitmap;
#endif /* __cplusplus */

#endif 	/* __CRdBitmap_FWD_DEFINED__ */


#ifndef __CRdObjArray_FWD_DEFINED__
#define __CRdObjArray_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdObjArray CRdObjArray;
#else
typedef struct CRdObjArray CRdObjArray;
#endif /* __cplusplus */

#endif 	/* __CRdObjArray_FWD_DEFINED__ */


#ifndef __CRdIntArray_FWD_DEFINED__
#define __CRdIntArray_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdIntArray CRdIntArray;
#else
typedef struct CRdIntArray CRdIntArray;
#endif /* __cplusplus */

#endif 	/* __CRdIntArray_FWD_DEFINED__ */


#ifndef __CRdNumArray_FWD_DEFINED__
#define __CRdNumArray_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdNumArray CRdNumArray;
#else
typedef struct CRdNumArray CRdNumArray;
#endif /* __cplusplus */

#endif 	/* __CRdNumArray_FWD_DEFINED__ */


#ifndef __CRdBoolArray_FWD_DEFINED__
#define __CRdBoolArray_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdBoolArray CRdBoolArray;
#else
typedef struct CRdBoolArray CRdBoolArray;
#endif /* __cplusplus */

#endif 	/* __CRdBoolArray_FWD_DEFINED__ */


#ifndef __CRdStrArray_FWD_DEFINED__
#define __CRdStrArray_FWD_DEFINED__

#ifdef __cplusplus
typedef class CRdStrArray CRdStrArray;
#else
typedef struct CRdStrArray CRdStrArray;
#endif /* __cplusplus */

#endif 	/* __CRdStrArray_FWD_DEFINED__ */


/* header files for imported files */
#include "prsht.h"
#include "mshtml.h"
#include "mshtmhst.h"
#include "exdisp.h"
#include "objsafe.h"
#include "_kernel.h"
#include "_fileio.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

#ifndef __IRsScanner_INTERFACE_DEFINED__
#define __IRsScanner_INTERFACE_DEFINED__

/* interface IRsScanner */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsScanner;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("24217254-D08C-484D-BAF0-7F0C9551C06D")
    IRsScanner : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE ScanNode( 
            /* [in] */ IRsNode *pNode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE IsScannig( 
            /* [in] */ IRsNode *pNode,
            /* [retval][out] */ RtBool *pbScan) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetScannedNode( 
            /* [retval][out] */ IRsNode **ppScannedNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsScannerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsScanner * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsScanner * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsScanner * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *ScanNode )( 
            IRsScanner * This,
            /* [in] */ IRsNode *pNode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *IsScannig )( 
            IRsScanner * This,
            /* [in] */ IRsNode *pNode,
            /* [retval][out] */ RtBool *pbScan);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetScannedNode )( 
            IRsScanner * This,
            /* [retval][out] */ IRsNode **ppScannedNode);
        
        END_INTERFACE
    } IRsScannerVtbl;

    interface IRsScanner
    {
        CONST_VTBL struct IRsScannerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsScanner_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsScanner_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsScanner_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsScanner_ScanNode(This,pNode)	\
    (This)->lpVtbl -> ScanNode(This,pNode)

#define IRsScanner_IsScannig(This,pNode,pbScan)	\
    (This)->lpVtbl -> IsScannig(This,pNode,pbScan)

#define IRsScanner_GetScannedNode(This,ppScannedNode)	\
    (This)->lpVtbl -> GetScannedNode(This,ppScannedNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsScanner_ScanNode_Proxy( 
    IRsScanner * This,
    /* [in] */ IRsNode *pNode);


void __RPC_STUB IRsScanner_ScanNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsScanner_IsScannig_Proxy( 
    IRsScanner * This,
    /* [in] */ IRsNode *pNode,
    /* [retval][out] */ RtBool *pbScan);


void __RPC_STUB IRsScanner_IsScannig_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsScanner_GetScannedNode_Proxy( 
    IRsScanner * This,
    /* [retval][out] */ IRsNode **ppScannedNode);


void __RPC_STUB IRsScanner_GetScannedNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsScanner_INTERFACE_DEFINED__ */


#ifndef __IRfPreferencesFn_INTERFACE_DEFINED__
#define __IRfPreferencesFn_INTERFACE_DEFINED__

/* interface IRfPreferencesFn */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfPreferencesFn;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B0C56043-973F-4F47-942E-36B549EB925F")
    IRfPreferencesFn : public IRsObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPreferenceSpace( 
            /* [retval][out] */ IRnEncapsulator **ppPreferenceSpace) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddPrefItem( 
            /* [in] */ IID *pItemClassId,
            /* [out] */ IRsNode **ppItem) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddPrefItemFromPrototype( 
            /* [in] */ BSTR bszFileName,
            /* [out] */ IRsNode **ppItem) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfPreferencesFnVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfPreferencesFn * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfPreferencesFn * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfPreferencesFn * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRfPreferencesFn * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRfPreferencesFn * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPreferenceSpace )( 
            IRfPreferencesFn * This,
            /* [retval][out] */ IRnEncapsulator **ppPreferenceSpace);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddPrefItem )( 
            IRfPreferencesFn * This,
            /* [in] */ IID *pItemClassId,
            /* [out] */ IRsNode **ppItem);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddPrefItemFromPrototype )( 
            IRfPreferencesFn * This,
            /* [in] */ BSTR bszFileName,
            /* [out] */ IRsNode **ppItem);
        
        END_INTERFACE
    } IRfPreferencesFnVtbl;

    interface IRfPreferencesFn
    {
        CONST_VTBL struct IRfPreferencesFnVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfPreferencesFn_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfPreferencesFn_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfPreferencesFn_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfPreferencesFn_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRfPreferencesFn_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRfPreferencesFn_GetPreferenceSpace(This,ppPreferenceSpace)	\
    (This)->lpVtbl -> GetPreferenceSpace(This,ppPreferenceSpace)

#define IRfPreferencesFn_AddPrefItem(This,pItemClassId,ppItem)	\
    (This)->lpVtbl -> AddPrefItem(This,pItemClassId,ppItem)

#define IRfPreferencesFn_AddPrefItemFromPrototype(This,bszFileName,ppItem)	\
    (This)->lpVtbl -> AddPrefItemFromPrototype(This,bszFileName,ppItem)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfPreferencesFn_GetPreferenceSpace_Proxy( 
    IRfPreferencesFn * This,
    /* [retval][out] */ IRnEncapsulator **ppPreferenceSpace);


void __RPC_STUB IRfPreferencesFn_GetPreferenceSpace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfPreferencesFn_AddPrefItem_Proxy( 
    IRfPreferencesFn * This,
    /* [in] */ IID *pItemClassId,
    /* [out] */ IRsNode **ppItem);


void __RPC_STUB IRfPreferencesFn_AddPrefItem_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfPreferencesFn_AddPrefItemFromPrototype_Proxy( 
    IRfPreferencesFn * This,
    /* [in] */ BSTR bszFileName,
    /* [out] */ IRsNode **ppItem);


void __RPC_STUB IRfPreferencesFn_AddPrefItemFromPrototype_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfPreferencesFn_INTERFACE_DEFINED__ */


#ifndef __IRfProjectFn_INTERFACE_DEFINED__
#define __IRfProjectFn_INTERFACE_DEFINED__

/* interface IRfProjectFn */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfProjectFn;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("697FFF51-3737-4D73-A6B0-7AD82785C1CC")
    IRfProjectFn : public IRsObject
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetProjectSpace( 
            /* [retval][out] */ IRnEncapsulator **ppProjectSpace) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ClearProject( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ReplaceProject( 
            /* [in] */ IRnEncapsulator *pNewProjectSpace,
            /* [in] */ RtBOOL bDontReplaceLayout) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveProject( 
            /* [in] */ BSTR bstrFileName,
            /* [in] */ BSTR bstrAuthor,
            /* [in] */ BSTR bstrDescr,
            /* [in] */ IRdBitmap *pThumbnail,
            /* [in] */ RtBool fClearDirty) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadProject( 
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveProjectObject( 
            /* [in] */ IRsFileHandle *pRsFileHandle,
            /* [in] */ IRnEncapsulator *pProjectEnc) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadProjectObject( 
            /* [in] */ IRsFileHandle *pRsFileHandle,
            /* [out] */ IRnEncapsulator **ppProjectEnc,
            /* [out] */ RtBOOL *pOldLayout) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfProjectFnVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfProjectFn * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfProjectFn * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfProjectFn * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRfProjectFn * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRfProjectFn * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetProjectSpace )( 
            IRfProjectFn * This,
            /* [retval][out] */ IRnEncapsulator **ppProjectSpace);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ClearProject )( 
            IRfProjectFn * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ReplaceProject )( 
            IRfProjectFn * This,
            /* [in] */ IRnEncapsulator *pNewProjectSpace,
            /* [in] */ RtBOOL bDontReplaceLayout);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveProject )( 
            IRfProjectFn * This,
            /* [in] */ BSTR bstrFileName,
            /* [in] */ BSTR bstrAuthor,
            /* [in] */ BSTR bstrDescr,
            /* [in] */ IRdBitmap *pThumbnail,
            /* [in] */ RtBool fClearDirty);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadProject )( 
            IRfProjectFn * This,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveProjectObject )( 
            IRfProjectFn * This,
            /* [in] */ IRsFileHandle *pRsFileHandle,
            /* [in] */ IRnEncapsulator *pProjectEnc);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadProjectObject )( 
            IRfProjectFn * This,
            /* [in] */ IRsFileHandle *pRsFileHandle,
            /* [out] */ IRnEncapsulator **ppProjectEnc,
            /* [out] */ RtBOOL *pOldLayout);
        
        END_INTERFACE
    } IRfProjectFnVtbl;

    interface IRfProjectFn
    {
        CONST_VTBL struct IRfProjectFnVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfProjectFn_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfProjectFn_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfProjectFn_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfProjectFn_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRfProjectFn_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRfProjectFn_GetProjectSpace(This,ppProjectSpace)	\
    (This)->lpVtbl -> GetProjectSpace(This,ppProjectSpace)

#define IRfProjectFn_ClearProject(This)	\
    (This)->lpVtbl -> ClearProject(This)

#define IRfProjectFn_ReplaceProject(This,pNewProjectSpace,bDontReplaceLayout)	\
    (This)->lpVtbl -> ReplaceProject(This,pNewProjectSpace,bDontReplaceLayout)

#define IRfProjectFn_SaveProject(This,bstrFileName,bstrAuthor,bstrDescr,pThumbnail,fClearDirty)	\
    (This)->lpVtbl -> SaveProject(This,bstrFileName,bstrAuthor,bstrDescr,pThumbnail,fClearDirty)

#define IRfProjectFn_LoadProject(This,bstrFileName)	\
    (This)->lpVtbl -> LoadProject(This,bstrFileName)

#define IRfProjectFn_SaveProjectObject(This,pRsFileHandle,pProjectEnc)	\
    (This)->lpVtbl -> SaveProjectObject(This,pRsFileHandle,pProjectEnc)

#define IRfProjectFn_LoadProjectObject(This,pRsFileHandle,ppProjectEnc,pOldLayout)	\
    (This)->lpVtbl -> LoadProjectObject(This,pRsFileHandle,ppProjectEnc,pOldLayout)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_GetProjectSpace_Proxy( 
    IRfProjectFn * This,
    /* [retval][out] */ IRnEncapsulator **ppProjectSpace);


void __RPC_STUB IRfProjectFn_GetProjectSpace_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_ClearProject_Proxy( 
    IRfProjectFn * This);


void __RPC_STUB IRfProjectFn_ClearProject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_ReplaceProject_Proxy( 
    IRfProjectFn * This,
    /* [in] */ IRnEncapsulator *pNewProjectSpace,
    /* [in] */ RtBOOL bDontReplaceLayout);


void __RPC_STUB IRfProjectFn_ReplaceProject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_SaveProject_Proxy( 
    IRfProjectFn * This,
    /* [in] */ BSTR bstrFileName,
    /* [in] */ BSTR bstrAuthor,
    /* [in] */ BSTR bstrDescr,
    /* [in] */ IRdBitmap *pThumbnail,
    /* [in] */ RtBool fClearDirty);


void __RPC_STUB IRfProjectFn_SaveProject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_LoadProject_Proxy( 
    IRfProjectFn * This,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRfProjectFn_LoadProject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_SaveProjectObject_Proxy( 
    IRfProjectFn * This,
    /* [in] */ IRsFileHandle *pRsFileHandle,
    /* [in] */ IRnEncapsulator *pProjectEnc);


void __RPC_STUB IRfProjectFn_SaveProjectObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRfProjectFn_LoadProjectObject_Proxy( 
    IRfProjectFn * This,
    /* [in] */ IRsFileHandle *pRsFileHandle,
    /* [out] */ IRnEncapsulator **ppProjectEnc,
    /* [out] */ RtBOOL *pOldLayout);


void __RPC_STUB IRfProjectFn_LoadProjectObject_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfProjectFn_INTERFACE_DEFINED__ */


#ifndef __IRnProgressReport_INTERFACE_DEFINED__
#define __IRnProgressReport_INTERFACE_DEFINED__

/* interface IRnProgressReport */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnProgressReport;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8A1D2151-7A64-4bcf-858C-D02A5630B041")
    IRnProgressReport : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddStatusConnector( 
            /* [in] */ CONID id,
            /* [in] */ BSTR tool) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveStatusConnector( 
            /* [in] */ CONID id) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRnProgressReportVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnProgressReport * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnProgressReport * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnProgressReport * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddStatusConnector )( 
            IRnProgressReport * This,
            /* [in] */ CONID id,
            /* [in] */ BSTR tool);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveStatusConnector )( 
            IRnProgressReport * This,
            /* [in] */ CONID id);
        
        END_INTERFACE
    } IRnProgressReportVtbl;

    interface IRnProgressReport
    {
        CONST_VTBL struct IRnProgressReportVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnProgressReport_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnProgressReport_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnProgressReport_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRnProgressReport_AddStatusConnector(This,id,tool)	\
    (This)->lpVtbl -> AddStatusConnector(This,id,tool)

#define IRnProgressReport_RemoveStatusConnector(This,id)	\
    (This)->lpVtbl -> RemoveStatusConnector(This,id)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRnProgressReport_AddStatusConnector_Proxy( 
    IRnProgressReport * This,
    /* [in] */ CONID id,
    /* [in] */ BSTR tool);


void __RPC_STUB IRnProgressReport_AddStatusConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRnProgressReport_RemoveStatusConnector_Proxy( 
    IRnProgressReport * This,
    /* [in] */ CONID id);


void __RPC_STUB IRnProgressReport_RemoveStatusConnector_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRnProgressReport_INTERFACE_DEFINED__ */


#ifndef __IRfProgressReport_INTERFACE_DEFINED__
#define __IRfProgressReport_INTERFACE_DEFINED__

/* interface IRfProgressReport */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfProgressReport;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D2DEAECC-D8DC-49A1-A42F-EFF8E20B5699")
    IRfProgressReport : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddToolStatus( 
            /* [in] */ BSTR tool,
            /* [retval][out] */ CONID *id) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetToolStatusMessage( 
            /* [in] */ CONID id,
            /* [in] */ BSTR message) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveToolStatus( 
            /* [in] */ CONID id) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetStatusNode( 
            /* [retval][out] */ IRsNode **ppNode) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfProgressReportVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfProgressReport * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfProgressReport * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfProgressReport * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *AddToolStatus )( 
            IRfProgressReport * This,
            /* [in] */ BSTR tool,
            /* [retval][out] */ CONID *id);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetToolStatusMessage )( 
            IRfProgressReport * This,
            /* [in] */ CONID id,
            /* [in] */ BSTR message);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveToolStatus )( 
            IRfProgressReport * This,
            /* [in] */ CONID id);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetStatusNode )( 
            IRfProgressReport * This,
            /* [retval][out] */ IRsNode **ppNode);
        
        END_INTERFACE
    } IRfProgressReportVtbl;

    interface IRfProgressReport
    {
        CONST_VTBL struct IRfProgressReportVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfProgressReport_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfProgressReport_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfProgressReport_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfProgressReport_AddToolStatus(This,tool,id)	\
    (This)->lpVtbl -> AddToolStatus(This,tool,id)

#define IRfProgressReport_SetToolStatusMessage(This,id,message)	\
    (This)->lpVtbl -> SetToolStatusMessage(This,id,message)

#define IRfProgressReport_RemoveToolStatus(This,id)	\
    (This)->lpVtbl -> RemoveToolStatus(This,id)

#define IRfProgressReport_GetStatusNode(This,ppNode)	\
    (This)->lpVtbl -> GetStatusNode(This,ppNode)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfProgressReport_AddToolStatus_Proxy( 
    IRfProgressReport * This,
    /* [in] */ BSTR tool,
    /* [retval][out] */ CONID *id);


void __RPC_STUB IRfProgressReport_AddToolStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfProgressReport_SetToolStatusMessage_Proxy( 
    IRfProgressReport * This,
    /* [in] */ CONID id,
    /* [in] */ BSTR message);


void __RPC_STUB IRfProgressReport_SetToolStatusMessage_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfProgressReport_RemoveToolStatus_Proxy( 
    IRfProgressReport * This,
    /* [in] */ CONID id);


void __RPC_STUB IRfProgressReport_RemoveToolStatus_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfProgressReport_GetStatusNode_Proxy( 
    IRfProgressReport * This,
    /* [retval][out] */ IRsNode **ppNode);


void __RPC_STUB IRfProgressReport_GetStatusNode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfProgressReport_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__CommonData_1130 */
/* [local] */ 

struct RtBitmapFnPixelValue
    {
    RtDWORD a;
    RtDWORD r;
    RtDWORD g;
    RtDWORD b;
    } ;

enum RtBitmapFnBlendMode
    {	BFBM_OneOne	= 0,
	BFBM_SrcADestInvA	= 1,
	BFBM_SrcAInvSrcA	= 2,
	BFBM_FDW	= -1
    } ;


extern RPC_IF_HANDLE __MIDL_itf__CommonData_1130_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__CommonData_1130_v0_0_s_ifspec;

#ifndef __IRfBitmapFn_INTERFACE_DEFINED__
#define __IRfBitmapFn_INTERFACE_DEFINED__

/* interface IRfBitmapFn */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRfBitmapFn;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("958D5248-561F-4E0D-8C7D-B6277BF4583C")
    IRfBitmapFn : public IRsObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Attach( 
            /* [in] */ IRdBitmap *pBitmap) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Detach( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE LockBuffer( 
            /* [in] */ RtBool bWrite) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnlockBuffer( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BilinearFilterDW_COLOR( 
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [retval][out] */ RtDWORD *pColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BilinearFilterFL_GRAY( 
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [retval][out] */ RtFloat *pColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PixelValueDW_COLOR( 
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [retval][out] */ RtDWORD *pColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PixelValueFL_GRAY( 
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [retval][out] */ RtFloat *pColor) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE StretchBlt( 
            /* [in] */ int x,
            /* [in] */ int y,
            /* [in] */ int xsize,
            /* [in] */ int ysize,
            /* [in] */ IRdBitmap *pSource) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPixel( 
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [out] */ struct RtBitmapFnPixelValue *pPixelValue) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PutPixel( 
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [in] */ const struct RtBitmapFnPixelValue *PixelValue) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BlendPixel( 
            /* [in] */ const struct RtBitmapFnPixelValue *p1,
            /* [in] */ const struct RtBitmapFnPixelValue *p2,
            /* [in] */ RtDWORD mode,
            /* [out] */ struct RtBitmapFnPixelValue *pResult) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE BilinearFilter( 
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [out] */ struct RtBitmapFnPixelValue *pResult) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE FillTriangle( 
            /* [in] */ const RtUVcoord *a,
            /* [in] */ const RtUVcoord *b,
            /* [in] */ const RtUVcoord *c,
            /* [in] */ RtDWORD color) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Line( 
            /* [in] */ int x0,
            /* [in] */ int y0,
            /* [in] */ int x1,
            /* [in] */ int y1,
            /* [in] */ RtDWORD color,
            /* [in] */ RtFloat thickness) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE FastLine( 
            /* [in] */ int x0,
            /* [in] */ int y0,
            /* [in] */ int x1,
            /* [in] */ int y1,
            /* [in] */ RtDWORD color) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetBitmap( 
            /* [retval][out] */ IRdBitmap **ppBitmap) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRfBitmapFnVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRfBitmapFn * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRfBitmapFn * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRfBitmapFn * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRfBitmapFn * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRfBitmapFn * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Attach )( 
            IRfBitmapFn * This,
            /* [in] */ IRdBitmap *pBitmap);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Detach )( 
            IRfBitmapFn * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *LockBuffer )( 
            IRfBitmapFn * This,
            /* [in] */ RtBool bWrite);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnlockBuffer )( 
            IRfBitmapFn * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BilinearFilterDW_COLOR )( 
            IRfBitmapFn * This,
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [retval][out] */ RtDWORD *pColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BilinearFilterFL_GRAY )( 
            IRfBitmapFn * This,
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [retval][out] */ RtFloat *pColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PixelValueDW_COLOR )( 
            IRfBitmapFn * This,
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [retval][out] */ RtDWORD *pColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PixelValueFL_GRAY )( 
            IRfBitmapFn * This,
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [retval][out] */ RtFloat *pColor);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *StretchBlt )( 
            IRfBitmapFn * This,
            /* [in] */ int x,
            /* [in] */ int y,
            /* [in] */ int xsize,
            /* [in] */ int ysize,
            /* [in] */ IRdBitmap *pSource);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPixel )( 
            IRfBitmapFn * This,
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [out] */ struct RtBitmapFnPixelValue *pPixelValue);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PutPixel )( 
            IRfBitmapFn * This,
            /* [in] */ RtDWORD x,
            /* [in] */ RtDWORD y,
            /* [in] */ const struct RtBitmapFnPixelValue *PixelValue);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BlendPixel )( 
            IRfBitmapFn * This,
            /* [in] */ const struct RtBitmapFnPixelValue *p1,
            /* [in] */ const struct RtBitmapFnPixelValue *p2,
            /* [in] */ RtDWORD mode,
            /* [out] */ struct RtBitmapFnPixelValue *pResult);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *BilinearFilter )( 
            IRfBitmapFn * This,
            /* [in] */ RtFloat u,
            /* [in] */ RtFloat v,
            /* [in] */ RtBool wrap,
            /* [out] */ struct RtBitmapFnPixelValue *pResult);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *FillTriangle )( 
            IRfBitmapFn * This,
            /* [in] */ const RtUVcoord *a,
            /* [in] */ const RtUVcoord *b,
            /* [in] */ const RtUVcoord *c,
            /* [in] */ RtDWORD color);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Line )( 
            IRfBitmapFn * This,
            /* [in] */ int x0,
            /* [in] */ int y0,
            /* [in] */ int x1,
            /* [in] */ int y1,
            /* [in] */ RtDWORD color,
            /* [in] */ RtFloat thickness);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *FastLine )( 
            IRfBitmapFn * This,
            /* [in] */ int x0,
            /* [in] */ int y0,
            /* [in] */ int x1,
            /* [in] */ int y1,
            /* [in] */ RtDWORD color);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetBitmap )( 
            IRfBitmapFn * This,
            /* [retval][out] */ IRdBitmap **ppBitmap);
        
        END_INTERFACE
    } IRfBitmapFnVtbl;

    interface IRfBitmapFn
    {
        CONST_VTBL struct IRfBitmapFnVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRfBitmapFn_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRfBitmapFn_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRfBitmapFn_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRfBitmapFn_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRfBitmapFn_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRfBitmapFn_Attach(This,pBitmap)	\
    (This)->lpVtbl -> Attach(This,pBitmap)

#define IRfBitmapFn_Detach(This)	\
    (This)->lpVtbl -> Detach(This)

#define IRfBitmapFn_LockBuffer(This,bWrite)	\
    (This)->lpVtbl -> LockBuffer(This,bWrite)

#define IRfBitmapFn_UnlockBuffer(This)	\
    (This)->lpVtbl -> UnlockBuffer(This)

#define IRfBitmapFn_BilinearFilterDW_COLOR(This,u,v,wrap,pColor)	\
    (This)->lpVtbl -> BilinearFilterDW_COLOR(This,u,v,wrap,pColor)

#define IRfBitmapFn_BilinearFilterFL_GRAY(This,u,v,wrap,pColor)	\
    (This)->lpVtbl -> BilinearFilterFL_GRAY(This,u,v,wrap,pColor)

#define IRfBitmapFn_PixelValueDW_COLOR(This,x,y,pColor)	\
    (This)->lpVtbl -> PixelValueDW_COLOR(This,x,y,pColor)

#define IRfBitmapFn_PixelValueFL_GRAY(This,x,y,pColor)	\
    (This)->lpVtbl -> PixelValueFL_GRAY(This,x,y,pColor)

#define IRfBitmapFn_StretchBlt(This,x,y,xsize,ysize,pSource)	\
    (This)->lpVtbl -> StretchBlt(This,x,y,xsize,ysize,pSource)

#define IRfBitmapFn_GetPixel(This,x,y,pPixelValue)	\
    (This)->lpVtbl -> GetPixel(This,x,y,pPixelValue)

#define IRfBitmapFn_PutPixel(This,x,y,PixelValue)	\
    (This)->lpVtbl -> PutPixel(This,x,y,PixelValue)

#define IRfBitmapFn_BlendPixel(This,p1,p2,mode,pResult)	\
    (This)->lpVtbl -> BlendPixel(This,p1,p2,mode,pResult)

#define IRfBitmapFn_BilinearFilter(This,u,v,wrap,pResult)	\
    (This)->lpVtbl -> BilinearFilter(This,u,v,wrap,pResult)

#define IRfBitmapFn_FillTriangle(This,a,b,c,color)	\
    (This)->lpVtbl -> FillTriangle(This,a,b,c,color)

#define IRfBitmapFn_Line(This,x0,y0,x1,y1,color,thickness)	\
    (This)->lpVtbl -> Line(This,x0,y0,x1,y1,color,thickness)

#define IRfBitmapFn_FastLine(This,x0,y0,x1,y1,color)	\
    (This)->lpVtbl -> FastLine(This,x0,y0,x1,y1,color)

#define IRfBitmapFn_GetBitmap(This,ppBitmap)	\
    (This)->lpVtbl -> GetBitmap(This,ppBitmap)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_Attach_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ IRdBitmap *pBitmap);


void __RPC_STUB IRfBitmapFn_Attach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_Detach_Proxy( 
    IRfBitmapFn * This);


void __RPC_STUB IRfBitmapFn_Detach_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_LockBuffer_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtBool bWrite);


void __RPC_STUB IRfBitmapFn_LockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_UnlockBuffer_Proxy( 
    IRfBitmapFn * This);


void __RPC_STUB IRfBitmapFn_UnlockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_BilinearFilterDW_COLOR_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtFloat u,
    /* [in] */ RtFloat v,
    /* [in] */ RtBool wrap,
    /* [retval][out] */ RtDWORD *pColor);


void __RPC_STUB IRfBitmapFn_BilinearFilterDW_COLOR_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_BilinearFilterFL_GRAY_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtFloat u,
    /* [in] */ RtFloat v,
    /* [in] */ RtBool wrap,
    /* [retval][out] */ RtFloat *pColor);


void __RPC_STUB IRfBitmapFn_BilinearFilterFL_GRAY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_PixelValueDW_COLOR_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtDWORD x,
    /* [in] */ RtDWORD y,
    /* [retval][out] */ RtDWORD *pColor);


void __RPC_STUB IRfBitmapFn_PixelValueDW_COLOR_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_PixelValueFL_GRAY_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtDWORD x,
    /* [in] */ RtDWORD y,
    /* [retval][out] */ RtFloat *pColor);


void __RPC_STUB IRfBitmapFn_PixelValueFL_GRAY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_StretchBlt_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ int x,
    /* [in] */ int y,
    /* [in] */ int xsize,
    /* [in] */ int ysize,
    /* [in] */ IRdBitmap *pSource);


void __RPC_STUB IRfBitmapFn_StretchBlt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_GetPixel_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtDWORD x,
    /* [in] */ RtDWORD y,
    /* [out] */ struct RtBitmapFnPixelValue *pPixelValue);


void __RPC_STUB IRfBitmapFn_GetPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_PutPixel_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtDWORD x,
    /* [in] */ RtDWORD y,
    /* [in] */ const struct RtBitmapFnPixelValue *PixelValue);


void __RPC_STUB IRfBitmapFn_PutPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_BlendPixel_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ const struct RtBitmapFnPixelValue *p1,
    /* [in] */ const struct RtBitmapFnPixelValue *p2,
    /* [in] */ RtDWORD mode,
    /* [out] */ struct RtBitmapFnPixelValue *pResult);


void __RPC_STUB IRfBitmapFn_BlendPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_BilinearFilter_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ RtFloat u,
    /* [in] */ RtFloat v,
    /* [in] */ RtBool wrap,
    /* [out] */ struct RtBitmapFnPixelValue *pResult);


void __RPC_STUB IRfBitmapFn_BilinearFilter_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_FillTriangle_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ const RtUVcoord *a,
    /* [in] */ const RtUVcoord *b,
    /* [in] */ const RtUVcoord *c,
    /* [in] */ RtDWORD color);


void __RPC_STUB IRfBitmapFn_FillTriangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_Line_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ int x0,
    /* [in] */ int y0,
    /* [in] */ int x1,
    /* [in] */ int y1,
    /* [in] */ RtDWORD color,
    /* [in] */ RtFloat thickness);


void __RPC_STUB IRfBitmapFn_Line_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_FastLine_Proxy( 
    IRfBitmapFn * This,
    /* [in] */ int x0,
    /* [in] */ int y0,
    /* [in] */ int x1,
    /* [in] */ int y1,
    /* [in] */ RtDWORD color);


void __RPC_STUB IRfBitmapFn_FastLine_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRfBitmapFn_GetBitmap_Proxy( 
    IRfBitmapFn * This,
    /* [retval][out] */ IRdBitmap **ppBitmap);


void __RPC_STUB IRfBitmapFn_GetBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRfBitmapFn_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__CommonData_1131 */
/* [local] */ 


enum RtProjectFile
    {	PROJECT_SAVE	= 0,
	PROJECT_LOAD	= 1
    } ;


extern RPC_IF_HANDLE __MIDL_itf__CommonData_1131_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__CommonData_1131_v0_0_s_ifspec;

#ifndef __IRcProjectFile_INTERFACE_DEFINED__
#define __IRcProjectFile_INTERFACE_DEFINED__

/* interface IRcProjectFile */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcProjectFile;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B2049AF9-FF26-49ED-B732-27922D60C22F")
    IRcProjectFile : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcProjectFileVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcProjectFile * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcProjectFile * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcProjectFile * This);
        
        END_INTERFACE
    } IRcProjectFileVtbl;

    interface IRcProjectFile
    {
        CONST_VTBL struct IRcProjectFileVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcProjectFile_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcProjectFile_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcProjectFile_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcProjectFile_INTERFACE_DEFINED__ */


#ifndef __IRsFileTypeRsProject_INTERFACE_DEFINED__
#define __IRsFileTypeRsProject_INTERFACE_DEFINED__

/* interface IRsFileTypeRsProject */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsFileTypeRsProject;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6A71AE81-FBF0-4b47-A9CF-98C6F522AF16")
    IRsFileTypeRsProject : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsFileTypeRsProjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsFileTypeRsProject * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsFileTypeRsProject * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsFileTypeRsProject * This);
        
        END_INTERFACE
    } IRsFileTypeRsProjectVtbl;

    interface IRsFileTypeRsProject
    {
        CONST_VTBL struct IRsFileTypeRsProjectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsFileTypeRsProject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsFileTypeRsProject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsFileTypeRsProject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsFileTypeRsProject_INTERFACE_DEFINED__ */


#ifndef __IRsSimpleBuffer_INTERFACE_DEFINED__
#define __IRsSimpleBuffer_INTERFACE_DEFINED__

/* interface IRsSimpleBuffer */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsSimpleBuffer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FFBD41A9-D008-4266-B239-BB810D4AAE56")
    IRsSimpleBuffer : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsSimpleBufferVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsSimpleBuffer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsSimpleBuffer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsSimpleBuffer * This);
        
        END_INTERFACE
    } IRsSimpleBufferVtbl;

    interface IRsSimpleBuffer
    {
        CONST_VTBL struct IRsSimpleBufferVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsSimpleBuffer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsSimpleBuffer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsSimpleBuffer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsSimpleBuffer_INTERFACE_DEFINED__ */


#ifndef __IRdSoundDisp_INTERFACE_DEFINED__
#define __IRdSoundDisp_INTERFACE_DEFINED__

/* interface IRdSoundDisp */
/* [object][unique][helpstring][dual][uuid] */ 


EXTERN_C const IID IID_IRdSoundDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("75541D05-9197-4805-965B-64B8CB756D6F")
    IRdSoundDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFileName( 
            /* [retval][out] */ BSTR *pbstrFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToFile( 
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockBuffer( 
            /* [in] */ RtBOOL bWillOwerwrite,
            /* [retval][out] */ BYTE **ppBuffer) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockBuffer( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InitBuffer( 
            /* [in] */ RtDWORD dwVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBufferSize( 
            /* [in] */ RtDWORD *pdwVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdSoundDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdSoundDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdSoundDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdSoundDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdSoundDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdSoundDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdSoundDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdSoundDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdSoundDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdSoundDisp * This,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFileName )( 
            IRdSoundDisp * This,
            /* [retval][out] */ BSTR *pbstrFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToFile )( 
            IRdSoundDisp * This,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockBuffer )( 
            IRdSoundDisp * This,
            /* [in] */ RtBOOL bWillOwerwrite,
            /* [retval][out] */ BYTE **ppBuffer);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockBuffer )( 
            IRdSoundDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InitBuffer )( 
            IRdSoundDisp * This,
            /* [in] */ RtDWORD dwVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetBufferSize )( 
            IRdSoundDisp * This,
            /* [in] */ RtDWORD *pdwVal);
        
        END_INTERFACE
    } IRdSoundDispVtbl;

    interface IRdSoundDisp
    {
        CONST_VTBL struct IRdSoundDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdSoundDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdSoundDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdSoundDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdSoundDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdSoundDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdSoundDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdSoundDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdSoundDisp_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdSoundDisp_LoadFromFile(This,bstrFileName)	\
    (This)->lpVtbl -> LoadFromFile(This,bstrFileName)

#define IRdSoundDisp_GetFileName(This,pbstrFileName)	\
    (This)->lpVtbl -> GetFileName(This,pbstrFileName)

#define IRdSoundDisp_SaveToFile(This,bstrFileName)	\
    (This)->lpVtbl -> SaveToFile(This,bstrFileName)

#define IRdSoundDisp_LockBuffer(This,bWillOwerwrite,ppBuffer)	\
    (This)->lpVtbl -> LockBuffer(This,bWillOwerwrite,ppBuffer)

#define IRdSoundDisp_UnlockBuffer(This)	\
    (This)->lpVtbl -> UnlockBuffer(This)

#define IRdSoundDisp_InitBuffer(This,dwVal)	\
    (This)->lpVtbl -> InitBuffer(This,dwVal)

#define IRdSoundDisp_GetBufferSize(This,pdwVal)	\
    (This)->lpVtbl -> GetBufferSize(This,pdwVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_Clear_Proxy( 
    IRdSoundDisp * This);


void __RPC_STUB IRdSoundDisp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_LoadFromFile_Proxy( 
    IRdSoundDisp * This,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRdSoundDisp_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_GetFileName_Proxy( 
    IRdSoundDisp * This,
    /* [retval][out] */ BSTR *pbstrFileName);


void __RPC_STUB IRdSoundDisp_GetFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_SaveToFile_Proxy( 
    IRdSoundDisp * This,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRdSoundDisp_SaveToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_LockBuffer_Proxy( 
    IRdSoundDisp * This,
    /* [in] */ RtBOOL bWillOwerwrite,
    /* [retval][out] */ BYTE **ppBuffer);


void __RPC_STUB IRdSoundDisp_LockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_UnlockBuffer_Proxy( 
    IRdSoundDisp * This);


void __RPC_STUB IRdSoundDisp_UnlockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_InitBuffer_Proxy( 
    IRdSoundDisp * This,
    /* [in] */ RtDWORD dwVal);


void __RPC_STUB IRdSoundDisp_InitBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdSoundDisp_GetBufferSize_Proxy( 
    IRdSoundDisp * This,
    /* [in] */ RtDWORD *pdwVal);


void __RPC_STUB IRdSoundDisp_GetBufferSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdSoundDisp_INTERFACE_DEFINED__ */


#ifndef __IRdSound_INTERFACE_DEFINED__
#define __IRdSound_INTERFACE_DEFINED__

/* interface IRdSound */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdSound;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A9820439-1102-4af3-9A60-6B0C45E14279")
    IRdSound : public IRsDataObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetFileName( 
            /* [retval][out] */ BSTR *pbstrFileName) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SaveToFile( 
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE InitBuffer( 
            /* [in] */ RtDWORD dwVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetBufferSize( 
            /* [in] */ RtDWORD *pdwVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE LockBuffer( 
            /* [in] */ RtBOOL bWillOwerwrite,
            /* [retval][out] */ BYTE **ppBuffer) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnlockBuffer( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdSoundVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdSound * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdSound * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdSound * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdSound * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdSound * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDefault )( 
            IRdSound * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdSound * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdSound * This,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetFileName )( 
            IRdSound * This,
            /* [retval][out] */ BSTR *pbstrFileName);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SaveToFile )( 
            IRdSound * This,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *InitBuffer )( 
            IRdSound * This,
            /* [in] */ RtDWORD dwVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetBufferSize )( 
            IRdSound * This,
            /* [in] */ RtDWORD *pdwVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *LockBuffer )( 
            IRdSound * This,
            /* [in] */ RtBOOL bWillOwerwrite,
            /* [retval][out] */ BYTE **ppBuffer);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnlockBuffer )( 
            IRdSound * This);
        
        END_INTERFACE
    } IRdSoundVtbl;

    interface IRdSound
    {
        CONST_VTBL struct IRdSoundVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdSound_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdSound_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdSound_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdSound_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdSound_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdSound_SetDefault(This)	\
    (This)->lpVtbl -> SetDefault(This)


#define IRdSound_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdSound_LoadFromFile(This,bstrFileName)	\
    (This)->lpVtbl -> LoadFromFile(This,bstrFileName)

#define IRdSound_GetFileName(This,pbstrFileName)	\
    (This)->lpVtbl -> GetFileName(This,pbstrFileName)

#define IRdSound_SaveToFile(This,bstrFileName)	\
    (This)->lpVtbl -> SaveToFile(This,bstrFileName)

#define IRdSound_InitBuffer(This,dwVal)	\
    (This)->lpVtbl -> InitBuffer(This,dwVal)

#define IRdSound_GetBufferSize(This,pdwVal)	\
    (This)->lpVtbl -> GetBufferSize(This,pdwVal)

#define IRdSound_LockBuffer(This,bWillOwerwrite,ppBuffer)	\
    (This)->lpVtbl -> LockBuffer(This,bWillOwerwrite,ppBuffer)

#define IRdSound_UnlockBuffer(This)	\
    (This)->lpVtbl -> UnlockBuffer(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_Clear_Proxy( 
    IRdSound * This);


void __RPC_STUB IRdSound_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_LoadFromFile_Proxy( 
    IRdSound * This,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRdSound_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_GetFileName_Proxy( 
    IRdSound * This,
    /* [retval][out] */ BSTR *pbstrFileName);


void __RPC_STUB IRdSound_GetFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_SaveToFile_Proxy( 
    IRdSound * This,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRdSound_SaveToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_InitBuffer_Proxy( 
    IRdSound * This,
    /* [in] */ RtDWORD dwVal);


void __RPC_STUB IRdSound_InitBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_GetBufferSize_Proxy( 
    IRdSound * This,
    /* [in] */ RtDWORD *pdwVal);


void __RPC_STUB IRdSound_GetBufferSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_LockBuffer_Proxy( 
    IRdSound * This,
    /* [in] */ RtBOOL bWillOwerwrite,
    /* [retval][out] */ BYTE **ppBuffer);


void __RPC_STUB IRdSound_LockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdSound_UnlockBuffer_Proxy( 
    IRdSound * This);


void __RPC_STUB IRdSound_UnlockBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdSound_INTERFACE_DEFINED__ */


#ifndef __IRsManagedBitmapBuffer_INTERFACE_DEFINED__
#define __IRsManagedBitmapBuffer_INTERFACE_DEFINED__

/* interface IRsManagedBitmapBuffer */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsManagedBitmapBuffer;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("B92C53D9-3E6C-4d0c-BE36-7D933A4CF8C5")
    IRsManagedBitmapBuffer : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsManagedBitmapBufferVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsManagedBitmapBuffer * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsManagedBitmapBuffer * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsManagedBitmapBuffer * This);
        
        END_INTERFACE
    } IRsManagedBitmapBufferVtbl;

    interface IRsManagedBitmapBuffer
    {
        CONST_VTBL struct IRsManagedBitmapBufferVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsManagedBitmapBuffer_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsManagedBitmapBuffer_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsManagedBitmapBuffer_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsManagedBitmapBuffer_INTERFACE_DEFINED__ */


#ifndef __IRsBitmapManager_INTERFACE_DEFINED__
#define __IRsBitmapManager_INTERFACE_DEFINED__

/* interface IRsBitmapManager */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsBitmapManager;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3952CB53-0F96-43ee-A844-E12E19DD34DF")
    IRsBitmapManager : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsBitmapManagerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsBitmapManager * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsBitmapManager * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsBitmapManager * This);
        
        END_INTERFACE
    } IRsBitmapManagerVtbl;

    interface IRsBitmapManager
    {
        CONST_VTBL struct IRsBitmapManagerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsBitmapManager_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsBitmapManager_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsBitmapManager_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsBitmapManager_INTERFACE_DEFINED__ */


#ifndef __IRpCommonData_INTERFACE_DEFINED__
#define __IRpCommonData_INTERFACE_DEFINED__

/* interface IRpCommonData */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRpCommonData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("377F079D-E906-4960-A1F7-4229210D3FD9")
    IRpCommonData : public IRsObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreatePreferencesFn( 
            /* [retval][out] */ IRfPreferencesFn **ppPrefFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateProjectFn( 
            /* [retval][out] */ IRfProjectFn **ppProjectFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateScanner( 
            /* [in] */ IUnknown *pOuter,
            /* [retval][out] */ IUnknown **ppScanner) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateProgressReportFn( 
            /* [retval][out] */ IRfProgressReport **ppProgressFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE CreateBitmapFn( 
            /* [retval][out] */ IRfBitmapFn **ppBitmapFn) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetBitmapManager( 
            /* [retval][out] */ IRsBitmapManager **ppBitmapMgr) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRpCommonDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRpCommonData * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRpCommonData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRpCommonData * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRpCommonData * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRpCommonData * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreatePreferencesFn )( 
            IRpCommonData * This,
            /* [retval][out] */ IRfPreferencesFn **ppPrefFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateProjectFn )( 
            IRpCommonData * This,
            /* [retval][out] */ IRfProjectFn **ppProjectFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateScanner )( 
            IRpCommonData * This,
            /* [in] */ IUnknown *pOuter,
            /* [retval][out] */ IUnknown **ppScanner);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateProgressReportFn )( 
            IRpCommonData * This,
            /* [retval][out] */ IRfProgressReport **ppProgressFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *CreateBitmapFn )( 
            IRpCommonData * This,
            /* [retval][out] */ IRfBitmapFn **ppBitmapFn);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetBitmapManager )( 
            IRpCommonData * This,
            /* [retval][out] */ IRsBitmapManager **ppBitmapMgr);
        
        END_INTERFACE
    } IRpCommonDataVtbl;

    interface IRpCommonData
    {
        CONST_VTBL struct IRpCommonDataVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRpCommonData_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRpCommonData_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRpCommonData_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRpCommonData_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRpCommonData_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRpCommonData_CreatePreferencesFn(This,ppPrefFn)	\
    (This)->lpVtbl -> CreatePreferencesFn(This,ppPrefFn)

#define IRpCommonData_CreateProjectFn(This,ppProjectFn)	\
    (This)->lpVtbl -> CreateProjectFn(This,ppProjectFn)

#define IRpCommonData_CreateScanner(This,pOuter,ppScanner)	\
    (This)->lpVtbl -> CreateScanner(This,pOuter,ppScanner)

#define IRpCommonData_CreateProgressReportFn(This,ppProgressFn)	\
    (This)->lpVtbl -> CreateProgressReportFn(This,ppProgressFn)

#define IRpCommonData_CreateBitmapFn(This,ppBitmapFn)	\
    (This)->lpVtbl -> CreateBitmapFn(This,ppBitmapFn)

#define IRpCommonData_GetBitmapManager(This,ppBitmapMgr)	\
    (This)->lpVtbl -> GetBitmapManager(This,ppBitmapMgr)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_CreatePreferencesFn_Proxy( 
    IRpCommonData * This,
    /* [retval][out] */ IRfPreferencesFn **ppPrefFn);


void __RPC_STUB IRpCommonData_CreatePreferencesFn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_CreateProjectFn_Proxy( 
    IRpCommonData * This,
    /* [retval][out] */ IRfProjectFn **ppProjectFn);


void __RPC_STUB IRpCommonData_CreateProjectFn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_CreateScanner_Proxy( 
    IRpCommonData * This,
    /* [in] */ IUnknown *pOuter,
    /* [retval][out] */ IUnknown **ppScanner);


void __RPC_STUB IRpCommonData_CreateScanner_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_CreateProgressReportFn_Proxy( 
    IRpCommonData * This,
    /* [retval][out] */ IRfProgressReport **ppProgressFn);


void __RPC_STUB IRpCommonData_CreateProgressReportFn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_CreateBitmapFn_Proxy( 
    IRpCommonData * This,
    /* [retval][out] */ IRfBitmapFn **ppBitmapFn);


void __RPC_STUB IRpCommonData_CreateBitmapFn_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRpCommonData_GetBitmapManager_Proxy( 
    IRpCommonData * This,
    /* [retval][out] */ IRsBitmapManager **ppBitmapMgr);


void __RPC_STUB IRpCommonData_GetBitmapManager_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRpCommonData_INTERFACE_DEFINED__ */


#ifndef __IRcPlaySound_INTERFACE_DEFINED__
#define __IRcPlaySound_INTERFACE_DEFINED__

/* interface IRcPlaySound */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRcPlaySound;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C4622AC6-CF0A-4199-868F-884AA3DE2CDF")
    IRcPlaySound : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRcPlaySoundVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRcPlaySound * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRcPlaySound * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRcPlaySound * This);
        
        END_INTERFACE
    } IRcPlaySoundVtbl;

    interface IRcPlaySound
    {
        CONST_VTBL struct IRcPlaySoundVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRcPlaySound_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRcPlaySound_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRcPlaySound_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRcPlaySound_INTERFACE_DEFINED__ */


#ifndef __IRdBinary_INTERFACE_DEFINED__
#define __IRdBinary_INTERFACE_DEFINED__

/* interface IRdBinary */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdBinary;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("FDCD4695-6E6C-4b66-8832-E6DE1AFB2173")
    IRdBinary : public IRsDataObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PutData( 
            /* [in] */ RtUlong iSize,
            /* [size_is][in] */ RtBYTE *pVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetData( 
            /* [out] */ RtUlong *pSize,
            /* [size_is][size_is][out] */ RtBYTE **pRetVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDataSize( 
            /* [out] */ RtUlong *pSize) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE PutStorageType( 
            /* [in] */ RtShort iType) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdBinaryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdBinary * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdBinary * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdBinary * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdBinary * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdBinary * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDefault )( 
            IRdBinary * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PutData )( 
            IRdBinary * This,
            /* [in] */ RtUlong iSize,
            /* [size_is][in] */ RtBYTE *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetData )( 
            IRdBinary * This,
            /* [out] */ RtUlong *pSize,
            /* [size_is][size_is][out] */ RtBYTE **pRetVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDataSize )( 
            IRdBinary * This,
            /* [out] */ RtUlong *pSize);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *PutStorageType )( 
            IRdBinary * This,
            /* [in] */ RtShort iType);
        
        END_INTERFACE
    } IRdBinaryVtbl;

    interface IRdBinary
    {
        CONST_VTBL struct IRdBinaryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdBinary_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdBinary_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdBinary_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdBinary_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdBinary_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdBinary_SetDefault(This)	\
    (This)->lpVtbl -> SetDefault(This)


#define IRdBinary_PutData(This,iSize,pVal)	\
    (This)->lpVtbl -> PutData(This,iSize,pVal)

#define IRdBinary_GetData(This,pSize,pRetVal)	\
    (This)->lpVtbl -> GetData(This,pSize,pRetVal)

#define IRdBinary_GetDataSize(This,pSize)	\
    (This)->lpVtbl -> GetDataSize(This,pSize)

#define IRdBinary_PutStorageType(This,iType)	\
    (This)->lpVtbl -> PutStorageType(This,iType)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdBinary_PutData_Proxy( 
    IRdBinary * This,
    /* [in] */ RtUlong iSize,
    /* [size_is][in] */ RtBYTE *pVal);


void __RPC_STUB IRdBinary_PutData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdBinary_GetData_Proxy( 
    IRdBinary * This,
    /* [out] */ RtUlong *pSize,
    /* [size_is][size_is][out] */ RtBYTE **pRetVal);


void __RPC_STUB IRdBinary_GetData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdBinary_GetDataSize_Proxy( 
    IRdBinary * This,
    /* [out] */ RtUlong *pSize);


void __RPC_STUB IRdBinary_GetDataSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdBinary_PutStorageType_Proxy( 
    IRdBinary * This,
    /* [in] */ RtShort iType);


void __RPC_STUB IRdBinary_PutStorageType_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdBinary_INTERFACE_DEFINED__ */


#ifndef __IRdColorDisp_INTERFACE_DEFINED__
#define __IRdColorDisp_INTERFACE_DEFINED__

/* interface IRdColorDisp */
/* [object][unique][helpstring][dual][uuid] */ 


EXTERN_C const IID IID_IRdColorDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E7671910-4C3E-45a4-886E-1DCD4B7C6E6F")
    IRdColorDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRed( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetRed( 
            /* [in] */ float newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGreen( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGreen( 
            /* [in] */ float newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBlue( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBlue( 
            /* [in] */ float newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAlpha( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAlpha( 
            /* [in] */ float newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetRed8( 
            /* [retval][out] */ RtBYTE *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetRed8( 
            /* [in] */ RtBYTE newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetGreen8( 
            /* [retval][out] */ RtBYTE *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetGreen8( 
            /* [in] */ RtBYTE newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetBlue8( 
            /* [retval][out] */ RtBYTE *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetBlue8( 
            /* [in] */ RtBYTE newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAlpha8( 
            /* [retval][out] */ RtBYTE *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAlpha8( 
            /* [in] */ RtBYTE newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColor( 
            /* [in] */ float fRed,
            /* [in] */ float fGreen,
            /* [in] */ float fBlue,
            /* [in] */ float fAlpha) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetColor( 
            /* [out] */ float *fRed,
            /* [out] */ float *fGreen,
            /* [out] */ float *fBlue,
            /* [out] */ float *fAlpha) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColor32( 
            /* [in] */ ULONG dwColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetColor32( 
            /* [retval][out] */ ULONG *pdwColor) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColorRGBA8( 
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue,
            /* [in] */ RtBYTE nAlpha) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColorARGB8( 
            /* [in] */ RtBYTE nAlpha,
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetColorRGBA8( 
            /* [out] */ RtBYTE *nRed,
            /* [out] */ RtBYTE *nGreen,
            /* [out] */ RtBYTE *nBlue,
            /* [out] */ RtBYTE *nAlpha) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColorRGB8( 
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColorArray( 
            /* [in] */ FLOAT *pfColors) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetColorArray( 
            /* [retval][out] */ FLOAT *pfColors) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetCOLORREF( 
            /* [in] */ COLORREF dwNewValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetCOLORREF( 
            /* [out] */ COLORREF *dwValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetColorHSL( 
            /* [in] */ float fHue,
            /* [in] */ float fSat,
            /* [in] */ float fLum) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetColorHSL( 
            /* [out] */ float *fHue,
            /* [out] */ float *fSat,
            /* [out] */ float *fLum) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHue( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSat( 
            /* [retval][out] */ float *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetLum( 
            /* [retval][out] */ float *pVal) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdColorDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdColorDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdColorDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdColorDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdColorDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdColorDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdColorDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdColorDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdColorDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRed )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetRed )( 
            IRdColorDisp * This,
            /* [in] */ float newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetGreen )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetGreen )( 
            IRdColorDisp * This,
            /* [in] */ float newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlue )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlue )( 
            IRdColorDisp * This,
            /* [in] */ float newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAlpha )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAlpha )( 
            IRdColorDisp * This,
            /* [in] */ float newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetRed8 )( 
            IRdColorDisp * This,
            /* [retval][out] */ RtBYTE *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetRed8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetGreen8 )( 
            IRdColorDisp * This,
            /* [retval][out] */ RtBYTE *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetGreen8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetBlue8 )( 
            IRdColorDisp * This,
            /* [retval][out] */ RtBYTE *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetBlue8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAlpha8 )( 
            IRdColorDisp * This,
            /* [retval][out] */ RtBYTE *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAlpha8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColor )( 
            IRdColorDisp * This,
            /* [in] */ float fRed,
            /* [in] */ float fGreen,
            /* [in] */ float fBlue,
            /* [in] */ float fAlpha);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetColor )( 
            IRdColorDisp * This,
            /* [out] */ float *fRed,
            /* [out] */ float *fGreen,
            /* [out] */ float *fBlue,
            /* [out] */ float *fAlpha);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColor32 )( 
            IRdColorDisp * This,
            /* [in] */ ULONG dwColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetColor32 )( 
            IRdColorDisp * This,
            /* [retval][out] */ ULONG *pdwColor);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorRGBA8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue,
            /* [in] */ RtBYTE nAlpha);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorARGB8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE nAlpha,
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetColorRGBA8 )( 
            IRdColorDisp * This,
            /* [out] */ RtBYTE *nRed,
            /* [out] */ RtBYTE *nGreen,
            /* [out] */ RtBYTE *nBlue,
            /* [out] */ RtBYTE *nAlpha);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorRGB8 )( 
            IRdColorDisp * This,
            /* [in] */ RtBYTE nRed,
            /* [in] */ RtBYTE nGreen,
            /* [in] */ RtBYTE nBlue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorArray )( 
            IRdColorDisp * This,
            /* [in] */ FLOAT *pfColors);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetColorArray )( 
            IRdColorDisp * This,
            /* [retval][out] */ FLOAT *pfColors);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetCOLORREF )( 
            IRdColorDisp * This,
            /* [in] */ COLORREF dwNewValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetCOLORREF )( 
            IRdColorDisp * This,
            /* [out] */ COLORREF *dwValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetColorHSL )( 
            IRdColorDisp * This,
            /* [in] */ float fHue,
            /* [in] */ float fSat,
            /* [in] */ float fLum);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetColorHSL )( 
            IRdColorDisp * This,
            /* [out] */ float *fHue,
            /* [out] */ float *fSat,
            /* [out] */ float *fLum);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetHue )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSat )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetLum )( 
            IRdColorDisp * This,
            /* [retval][out] */ float *pVal);
        
        END_INTERFACE
    } IRdColorDispVtbl;

    interface IRdColorDisp
    {
        CONST_VTBL struct IRdColorDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdColorDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdColorDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdColorDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdColorDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdColorDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdColorDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdColorDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdColorDisp_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdColorDisp_GetRed(This,pVal)	\
    (This)->lpVtbl -> GetRed(This,pVal)

#define IRdColorDisp_SetRed(This,newVal)	\
    (This)->lpVtbl -> SetRed(This,newVal)

#define IRdColorDisp_GetGreen(This,pVal)	\
    (This)->lpVtbl -> GetGreen(This,pVal)

#define IRdColorDisp_SetGreen(This,newVal)	\
    (This)->lpVtbl -> SetGreen(This,newVal)

#define IRdColorDisp_GetBlue(This,pVal)	\
    (This)->lpVtbl -> GetBlue(This,pVal)

#define IRdColorDisp_SetBlue(This,newVal)	\
    (This)->lpVtbl -> SetBlue(This,newVal)

#define IRdColorDisp_GetAlpha(This,pVal)	\
    (This)->lpVtbl -> GetAlpha(This,pVal)

#define IRdColorDisp_SetAlpha(This,newVal)	\
    (This)->lpVtbl -> SetAlpha(This,newVal)

#define IRdColorDisp_GetRed8(This,pVal)	\
    (This)->lpVtbl -> GetRed8(This,pVal)

#define IRdColorDisp_SetRed8(This,newVal)	\
    (This)->lpVtbl -> SetRed8(This,newVal)

#define IRdColorDisp_GetGreen8(This,pVal)	\
    (This)->lpVtbl -> GetGreen8(This,pVal)

#define IRdColorDisp_SetGreen8(This,newVal)	\
    (This)->lpVtbl -> SetGreen8(This,newVal)

#define IRdColorDisp_GetBlue8(This,pVal)	\
    (This)->lpVtbl -> GetBlue8(This,pVal)

#define IRdColorDisp_SetBlue8(This,newVal)	\
    (This)->lpVtbl -> SetBlue8(This,newVal)

#define IRdColorDisp_GetAlpha8(This,pVal)	\
    (This)->lpVtbl -> GetAlpha8(This,pVal)

#define IRdColorDisp_SetAlpha8(This,newVal)	\
    (This)->lpVtbl -> SetAlpha8(This,newVal)

#define IRdColorDisp_SetColor(This,fRed,fGreen,fBlue,fAlpha)	\
    (This)->lpVtbl -> SetColor(This,fRed,fGreen,fBlue,fAlpha)

#define IRdColorDisp_GetColor(This,fRed,fGreen,fBlue,fAlpha)	\
    (This)->lpVtbl -> GetColor(This,fRed,fGreen,fBlue,fAlpha)

#define IRdColorDisp_SetColor32(This,dwColor)	\
    (This)->lpVtbl -> SetColor32(This,dwColor)

#define IRdColorDisp_GetColor32(This,pdwColor)	\
    (This)->lpVtbl -> GetColor32(This,pdwColor)

#define IRdColorDisp_SetColorRGBA8(This,nRed,nGreen,nBlue,nAlpha)	\
    (This)->lpVtbl -> SetColorRGBA8(This,nRed,nGreen,nBlue,nAlpha)

#define IRdColorDisp_SetColorARGB8(This,nAlpha,nRed,nGreen,nBlue)	\
    (This)->lpVtbl -> SetColorARGB8(This,nAlpha,nRed,nGreen,nBlue)

#define IRdColorDisp_GetColorRGBA8(This,nRed,nGreen,nBlue,nAlpha)	\
    (This)->lpVtbl -> GetColorRGBA8(This,nRed,nGreen,nBlue,nAlpha)

#define IRdColorDisp_SetColorRGB8(This,nRed,nGreen,nBlue)	\
    (This)->lpVtbl -> SetColorRGB8(This,nRed,nGreen,nBlue)

#define IRdColorDisp_SetColorArray(This,pfColors)	\
    (This)->lpVtbl -> SetColorArray(This,pfColors)

#define IRdColorDisp_GetColorArray(This,pfColors)	\
    (This)->lpVtbl -> GetColorArray(This,pfColors)

#define IRdColorDisp_SetCOLORREF(This,dwNewValue)	\
    (This)->lpVtbl -> SetCOLORREF(This,dwNewValue)

#define IRdColorDisp_GetCOLORREF(This,dwValue)	\
    (This)->lpVtbl -> GetCOLORREF(This,dwValue)

#define IRdColorDisp_SetColorHSL(This,fHue,fSat,fLum)	\
    (This)->lpVtbl -> SetColorHSL(This,fHue,fSat,fLum)

#define IRdColorDisp_GetColorHSL(This,fHue,fSat,fLum)	\
    (This)->lpVtbl -> GetColorHSL(This,fHue,fSat,fLum)

#define IRdColorDisp_GetHue(This,pVal)	\
    (This)->lpVtbl -> GetHue(This,pVal)

#define IRdColorDisp_GetSat(This,pVal)	\
    (This)->lpVtbl -> GetSat(This,pVal)

#define IRdColorDisp_GetLum(This,pVal)	\
    (This)->lpVtbl -> GetLum(This,pVal)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_Clear_Proxy( 
    IRdColorDisp * This);


void __RPC_STUB IRdColorDisp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetRed_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetRed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetRed_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float newVal);


void __RPC_STUB IRdColorDisp_SetRed_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetGreen_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetGreen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetGreen_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float newVal);


void __RPC_STUB IRdColorDisp_SetGreen_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetBlue_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetBlue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetBlue_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float newVal);


void __RPC_STUB IRdColorDisp_SetBlue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetAlpha_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetAlpha_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetAlpha_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float newVal);


void __RPC_STUB IRdColorDisp_SetAlpha_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetRed8_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ RtBYTE *pVal);


void __RPC_STUB IRdColorDisp_GetRed8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetRed8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE newVal);


void __RPC_STUB IRdColorDisp_SetRed8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetGreen8_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ RtBYTE *pVal);


void __RPC_STUB IRdColorDisp_GetGreen8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetGreen8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE newVal);


void __RPC_STUB IRdColorDisp_SetGreen8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetBlue8_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ RtBYTE *pVal);


void __RPC_STUB IRdColorDisp_GetBlue8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetBlue8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE newVal);


void __RPC_STUB IRdColorDisp_SetBlue8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetAlpha8_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ RtBYTE *pVal);


void __RPC_STUB IRdColorDisp_GetAlpha8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetAlpha8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE newVal);


void __RPC_STUB IRdColorDisp_SetAlpha8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColor_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float fRed,
    /* [in] */ float fGreen,
    /* [in] */ float fBlue,
    /* [in] */ float fAlpha);


void __RPC_STUB IRdColorDisp_SetColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetColor_Proxy( 
    IRdColorDisp * This,
    /* [out] */ float *fRed,
    /* [out] */ float *fGreen,
    /* [out] */ float *fBlue,
    /* [out] */ float *fAlpha);


void __RPC_STUB IRdColorDisp_GetColor_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColor32_Proxy( 
    IRdColorDisp * This,
    /* [in] */ ULONG dwColor);


void __RPC_STUB IRdColorDisp_SetColor32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetColor32_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ ULONG *pdwColor);


void __RPC_STUB IRdColorDisp_GetColor32_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColorRGBA8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE nRed,
    /* [in] */ RtBYTE nGreen,
    /* [in] */ RtBYTE nBlue,
    /* [in] */ RtBYTE nAlpha);


void __RPC_STUB IRdColorDisp_SetColorRGBA8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColorARGB8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE nAlpha,
    /* [in] */ RtBYTE nRed,
    /* [in] */ RtBYTE nGreen,
    /* [in] */ RtBYTE nBlue);


void __RPC_STUB IRdColorDisp_SetColorARGB8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetColorRGBA8_Proxy( 
    IRdColorDisp * This,
    /* [out] */ RtBYTE *nRed,
    /* [out] */ RtBYTE *nGreen,
    /* [out] */ RtBYTE *nBlue,
    /* [out] */ RtBYTE *nAlpha);


void __RPC_STUB IRdColorDisp_GetColorRGBA8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColorRGB8_Proxy( 
    IRdColorDisp * This,
    /* [in] */ RtBYTE nRed,
    /* [in] */ RtBYTE nGreen,
    /* [in] */ RtBYTE nBlue);


void __RPC_STUB IRdColorDisp_SetColorRGB8_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColorArray_Proxy( 
    IRdColorDisp * This,
    /* [in] */ FLOAT *pfColors);


void __RPC_STUB IRdColorDisp_SetColorArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetColorArray_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ FLOAT *pfColors);


void __RPC_STUB IRdColorDisp_GetColorArray_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetCOLORREF_Proxy( 
    IRdColorDisp * This,
    /* [in] */ COLORREF dwNewValue);


void __RPC_STUB IRdColorDisp_SetCOLORREF_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetCOLORREF_Proxy( 
    IRdColorDisp * This,
    /* [out] */ COLORREF *dwValue);


void __RPC_STUB IRdColorDisp_GetCOLORREF_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_SetColorHSL_Proxy( 
    IRdColorDisp * This,
    /* [in] */ float fHue,
    /* [in] */ float fSat,
    /* [in] */ float fLum);


void __RPC_STUB IRdColorDisp_SetColorHSL_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetColorHSL_Proxy( 
    IRdColorDisp * This,
    /* [out] */ float *fHue,
    /* [out] */ float *fSat,
    /* [out] */ float *fLum);


void __RPC_STUB IRdColorDisp_GetColorHSL_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetHue_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetHue_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetSat_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetSat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdColorDisp_GetLum_Proxy( 
    IRdColorDisp * This,
    /* [retval][out] */ float *pVal);


void __RPC_STUB IRdColorDisp_GetLum_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdColorDisp_INTERFACE_DEFINED__ */


#ifndef __IRdCubeTexture_INTERFACE_DEFINED__
#define __IRdCubeTexture_INTERFACE_DEFINED__

/* interface IRdCubeTexture */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdCubeTexture;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8D5CE5E8-F711-4F9B-A5D4-C058E3E5769E")
    IRdCubeTexture : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSideBitmap( 
            /* [in] */ RtUlong ulSide,
            /* [retval][out] */ IRdBitmap **ppBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideBitmap( 
            /* [in] */ RtUlong ulSide,
            /* [in] */ IRdBitmap *pBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideBitmapFromFile( 
            /* [in] */ RtUlong ulSide,
            /* [in] */ BSTR bsFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR FileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockTexture( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdCubeTextureVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdCubeTexture * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdCubeTexture * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdCubeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdCubeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSideBitmap )( 
            IRdCubeTexture * This,
            /* [in] */ RtUlong ulSide,
            /* [retval][out] */ IRdBitmap **ppBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSideBitmap )( 
            IRdCubeTexture * This,
            /* [in] */ RtUlong ulSide,
            /* [in] */ IRdBitmap *pBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSideBitmapFromFile )( 
            IRdCubeTexture * This,
            /* [in] */ RtUlong ulSide,
            /* [in] */ BSTR bsFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdCubeTexture * This,
            /* [in] */ BSTR FileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockTexture )( 
            IRdCubeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockTexture )( 
            IRdCubeTexture * This);
        
        END_INTERFACE
    } IRdCubeTextureVtbl;

    interface IRdCubeTexture
    {
        CONST_VTBL struct IRdCubeTextureVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdCubeTexture_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdCubeTexture_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdCubeTexture_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdCubeTexture_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdCubeTexture_GetSideBitmap(This,ulSide,ppBitmap)	\
    (This)->lpVtbl -> GetSideBitmap(This,ulSide,ppBitmap)

#define IRdCubeTexture_SetSideBitmap(This,ulSide,pBitmap)	\
    (This)->lpVtbl -> SetSideBitmap(This,ulSide,pBitmap)

#define IRdCubeTexture_SetSideBitmapFromFile(This,ulSide,bsFileName)	\
    (This)->lpVtbl -> SetSideBitmapFromFile(This,ulSide,bsFileName)

#define IRdCubeTexture_LoadFromFile(This,FileName)	\
    (This)->lpVtbl -> LoadFromFile(This,FileName)

#define IRdCubeTexture_LockTexture(This)	\
    (This)->lpVtbl -> LockTexture(This)

#define IRdCubeTexture_UnlockTexture(This)	\
    (This)->lpVtbl -> UnlockTexture(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_Clear_Proxy( 
    IRdCubeTexture * This);


void __RPC_STUB IRdCubeTexture_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_GetSideBitmap_Proxy( 
    IRdCubeTexture * This,
    /* [in] */ RtUlong ulSide,
    /* [retval][out] */ IRdBitmap **ppBitmap);


void __RPC_STUB IRdCubeTexture_GetSideBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_SetSideBitmap_Proxy( 
    IRdCubeTexture * This,
    /* [in] */ RtUlong ulSide,
    /* [in] */ IRdBitmap *pBitmap);


void __RPC_STUB IRdCubeTexture_SetSideBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_SetSideBitmapFromFile_Proxy( 
    IRdCubeTexture * This,
    /* [in] */ RtUlong ulSide,
    /* [in] */ BSTR bsFileName);


void __RPC_STUB IRdCubeTexture_SetSideBitmapFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_LoadFromFile_Proxy( 
    IRdCubeTexture * This,
    /* [in] */ BSTR FileName);


void __RPC_STUB IRdCubeTexture_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_LockTexture_Proxy( 
    IRdCubeTexture * This);


void __RPC_STUB IRdCubeTexture_LockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTexture_UnlockTexture_Proxy( 
    IRdCubeTexture * This);


void __RPC_STUB IRdCubeTexture_UnlockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdCubeTexture_INTERFACE_DEFINED__ */


#ifndef __IRdCubeTextureDisp_INTERFACE_DEFINED__
#define __IRdCubeTextureDisp_INTERFACE_DEFINED__

/* interface IRdCubeTextureDisp */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdCubeTextureDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("47aea3a7-eb13-4429-a9ca-a343f23c1824")
    IRdCubeTextureDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSideBitmap( 
            /* [in] */ RtUlong ulSide,
            /* [retval][out] */ IDispatch **ppBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideBitmap( 
            /* [in] */ RtUlong ulSide,
            /* [in] */ IDispatch *pBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSideBitmapFromFile( 
            /* [in] */ RtUlong ulSide,
            /* [in] */ BSTR bsFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR FileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockTexture( void) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdCubeTextureDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdCubeTextureDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdCubeTextureDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdCubeTextureDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdCubeTextureDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdCubeTextureDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdCubeTextureDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdCubeTextureDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdCubeTextureDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSideBitmap )( 
            IRdCubeTextureDisp * This,
            /* [in] */ RtUlong ulSide,
            /* [retval][out] */ IDispatch **ppBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSideBitmap )( 
            IRdCubeTextureDisp * This,
            /* [in] */ RtUlong ulSide,
            /* [in] */ IDispatch *pBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSideBitmapFromFile )( 
            IRdCubeTextureDisp * This,
            /* [in] */ RtUlong ulSide,
            /* [in] */ BSTR bsFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdCubeTextureDisp * This,
            /* [in] */ BSTR FileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockTexture )( 
            IRdCubeTextureDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockTexture )( 
            IRdCubeTextureDisp * This);
        
        END_INTERFACE
    } IRdCubeTextureDispVtbl;

    interface IRdCubeTextureDisp
    {
        CONST_VTBL struct IRdCubeTextureDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdCubeTextureDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdCubeTextureDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdCubeTextureDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdCubeTextureDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdCubeTextureDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdCubeTextureDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdCubeTextureDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdCubeTextureDisp_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdCubeTextureDisp_GetSideBitmap(This,ulSide,ppBitmap)	\
    (This)->lpVtbl -> GetSideBitmap(This,ulSide,ppBitmap)

#define IRdCubeTextureDisp_SetSideBitmap(This,ulSide,pBitmap)	\
    (This)->lpVtbl -> SetSideBitmap(This,ulSide,pBitmap)

#define IRdCubeTextureDisp_SetSideBitmapFromFile(This,ulSide,bsFileName)	\
    (This)->lpVtbl -> SetSideBitmapFromFile(This,ulSide,bsFileName)

#define IRdCubeTextureDisp_LoadFromFile(This,FileName)	\
    (This)->lpVtbl -> LoadFromFile(This,FileName)

#define IRdCubeTextureDisp_LockTexture(This)	\
    (This)->lpVtbl -> LockTexture(This)

#define IRdCubeTextureDisp_UnlockTexture(This)	\
    (This)->lpVtbl -> UnlockTexture(This)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_Clear_Proxy( 
    IRdCubeTextureDisp * This);


void __RPC_STUB IRdCubeTextureDisp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_GetSideBitmap_Proxy( 
    IRdCubeTextureDisp * This,
    /* [in] */ RtUlong ulSide,
    /* [retval][out] */ IDispatch **ppBitmap);


void __RPC_STUB IRdCubeTextureDisp_GetSideBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_SetSideBitmap_Proxy( 
    IRdCubeTextureDisp * This,
    /* [in] */ RtUlong ulSide,
    /* [in] */ IDispatch *pBitmap);


void __RPC_STUB IRdCubeTextureDisp_SetSideBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_SetSideBitmapFromFile_Proxy( 
    IRdCubeTextureDisp * This,
    /* [in] */ RtUlong ulSide,
    /* [in] */ BSTR bsFileName);


void __RPC_STUB IRdCubeTextureDisp_SetSideBitmapFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_LoadFromFile_Proxy( 
    IRdCubeTextureDisp * This,
    /* [in] */ BSTR FileName);


void __RPC_STUB IRdCubeTextureDisp_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_LockTexture_Proxy( 
    IRdCubeTextureDisp * This);


void __RPC_STUB IRdCubeTextureDisp_LockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdCubeTextureDisp_UnlockTexture_Proxy( 
    IRdCubeTextureDisp * This);


void __RPC_STUB IRdCubeTextureDisp_UnlockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdCubeTextureDisp_INTERFACE_DEFINED__ */


#ifndef __IRdPoint_INTERFACE_DEFINED__
#define __IRdPoint_INTERFACE_DEFINED__

/* interface IRdPoint */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdPoint;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E2997A6D-4F21-4891-B3ED-0F771AE563EB")
    IRdPoint : public IRsDataObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetPoint( 
            /* [out] */ POINT *pPoint) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetPoint( 
            /* [in] */ POINT *pPoint) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdPointVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdPoint * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdPoint * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdPoint * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdPoint * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdPoint * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDefault )( 
            IRdPoint * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetPoint )( 
            IRdPoint * This,
            /* [out] */ POINT *pPoint);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetPoint )( 
            IRdPoint * This,
            /* [in] */ POINT *pPoint);
        
        END_INTERFACE
    } IRdPointVtbl;

    interface IRdPoint
    {
        CONST_VTBL struct IRdPointVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdPoint_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdPoint_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdPoint_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdPoint_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdPoint_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdPoint_SetDefault(This)	\
    (This)->lpVtbl -> SetDefault(This)


#define IRdPoint_GetPoint(This,pPoint)	\
    (This)->lpVtbl -> GetPoint(This,pPoint)

#define IRdPoint_SetPoint(This,pPoint)	\
    (This)->lpVtbl -> SetPoint(This,pPoint)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdPoint_GetPoint_Proxy( 
    IRdPoint * This,
    /* [out] */ POINT *pPoint);


void __RPC_STUB IRdPoint_GetPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdPoint_SetPoint_Proxy( 
    IRdPoint * This,
    /* [in] */ POINT *pPoint);


void __RPC_STUB IRdPoint_SetPoint_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdPoint_INTERFACE_DEFINED__ */


#ifndef __IRdRectangle_INTERFACE_DEFINED__
#define __IRdRectangle_INTERFACE_DEFINED__

/* interface IRdRectangle */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdRectangle;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("48541EBF-896A-4636-B40C-3283A683732A")
    IRdRectangle : public IRsDataObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetRectangle( 
            /* [out] */ RECT *pRectangle) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetRectangle( 
            /* [in] */ RECT *pRectangle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdRectangleVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdRectangle * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdRectangle * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdRectangle * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdRectangle * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdRectangle * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDefault )( 
            IRdRectangle * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetRectangle )( 
            IRdRectangle * This,
            /* [out] */ RECT *pRectangle);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetRectangle )( 
            IRdRectangle * This,
            /* [in] */ RECT *pRectangle);
        
        END_INTERFACE
    } IRdRectangleVtbl;

    interface IRdRectangle
    {
        CONST_VTBL struct IRdRectangleVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdRectangle_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdRectangle_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdRectangle_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdRectangle_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdRectangle_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdRectangle_SetDefault(This)	\
    (This)->lpVtbl -> SetDefault(This)


#define IRdRectangle_GetRectangle(This,pRectangle)	\
    (This)->lpVtbl -> GetRectangle(This,pRectangle)

#define IRdRectangle_SetRectangle(This,pRectangle)	\
    (This)->lpVtbl -> SetRectangle(This,pRectangle)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdRectangle_GetRectangle_Proxy( 
    IRdRectangle * This,
    /* [out] */ RECT *pRectangle);


void __RPC_STUB IRdRectangle_GetRectangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdRectangle_SetRectangle_Proxy( 
    IRdRectangle * This,
    /* [in] */ RECT *pRectangle);


void __RPC_STUB IRdRectangle_SetRectangle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdRectangle_INTERFACE_DEFINED__ */


#ifndef __IRdStrEnum_INTERFACE_DEFINED__
#define __IRdStrEnum_INTERFACE_DEFINED__

/* interface IRdStrEnum */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdStrEnum;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3A1A06F6-B29E-4b82-8EFC-726253788AF0")
    IRdStrEnum : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ RtUlong ulSize) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetStringAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ BSTR bsStr) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetStringAt( 
            /* [in] */ RtUlong ulIndex,
            /* [retval][out] */ BSTR *pbsStr) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSelectedString( 
            /* [in] */ BSTR bsStr) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSelectedString( 
            /* [retval][out] */ BSTR *pbsStr) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetComboCtrlStyle( 
            /* [in] */ RtDWORD dwStyle) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetComboCtrlStyle( 
            /* [retval][out] */ RtDWORD *pdwStyle) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdStrEnumVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdStrEnum * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdStrEnum * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdStrEnum * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdStrEnum * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdStrEnum * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdStrEnum * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdStrEnum * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdStrEnum * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdStrEnum * This,
            /* [in] */ RtUlong ulSize);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdStrEnum * This,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetStringAt )( 
            IRdStrEnum * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ BSTR bsStr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetStringAt )( 
            IRdStrEnum * This,
            /* [in] */ RtUlong ulIndex,
            /* [retval][out] */ BSTR *pbsStr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSelectedString )( 
            IRdStrEnum * This,
            /* [in] */ BSTR bsStr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSelectedString )( 
            IRdStrEnum * This,
            /* [retval][out] */ BSTR *pbsStr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetComboCtrlStyle )( 
            IRdStrEnum * This,
            /* [in] */ RtDWORD dwStyle);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetComboCtrlStyle )( 
            IRdStrEnum * This,
            /* [retval][out] */ RtDWORD *pdwStyle);
        
        END_INTERFACE
    } IRdStrEnumVtbl;

    interface IRdStrEnum
    {
        CONST_VTBL struct IRdStrEnumVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdStrEnum_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdStrEnum_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdStrEnum_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdStrEnum_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdStrEnum_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdStrEnum_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdStrEnum_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdStrEnum_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdStrEnum_SetSize(This,ulSize)	\
    (This)->lpVtbl -> SetSize(This,ulSize)

#define IRdStrEnum_GetSize(This,pulSize)	\
    (This)->lpVtbl -> GetSize(This,pulSize)

#define IRdStrEnum_SetStringAt(This,ulIndex,bsStr)	\
    (This)->lpVtbl -> SetStringAt(This,ulIndex,bsStr)

#define IRdStrEnum_GetStringAt(This,ulIndex,pbsStr)	\
    (This)->lpVtbl -> GetStringAt(This,ulIndex,pbsStr)

#define IRdStrEnum_SetSelectedString(This,bsStr)	\
    (This)->lpVtbl -> SetSelectedString(This,bsStr)

#define IRdStrEnum_GetSelectedString(This,pbsStr)	\
    (This)->lpVtbl -> GetSelectedString(This,pbsStr)

#define IRdStrEnum_SetComboCtrlStyle(This,dwStyle)	\
    (This)->lpVtbl -> SetComboCtrlStyle(This,dwStyle)

#define IRdStrEnum_GetComboCtrlStyle(This,pdwStyle)	\
    (This)->lpVtbl -> GetComboCtrlStyle(This,pdwStyle)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_Clear_Proxy( 
    IRdStrEnum * This);


void __RPC_STUB IRdStrEnum_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_SetSize_Proxy( 
    IRdStrEnum * This,
    /* [in] */ RtUlong ulSize);


void __RPC_STUB IRdStrEnum_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_GetSize_Proxy( 
    IRdStrEnum * This,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdStrEnum_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_SetStringAt_Proxy( 
    IRdStrEnum * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ BSTR bsStr);


void __RPC_STUB IRdStrEnum_SetStringAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_GetStringAt_Proxy( 
    IRdStrEnum * This,
    /* [in] */ RtUlong ulIndex,
    /* [retval][out] */ BSTR *pbsStr);


void __RPC_STUB IRdStrEnum_GetStringAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_SetSelectedString_Proxy( 
    IRdStrEnum * This,
    /* [in] */ BSTR bsStr);


void __RPC_STUB IRdStrEnum_SetSelectedString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_GetSelectedString_Proxy( 
    IRdStrEnum * This,
    /* [retval][out] */ BSTR *pbsStr);


void __RPC_STUB IRdStrEnum_GetSelectedString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_SetComboCtrlStyle_Proxy( 
    IRdStrEnum * This,
    /* [in] */ RtDWORD dwStyle);


void __RPC_STUB IRdStrEnum_SetComboCtrlStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrEnum_GetComboCtrlStyle_Proxy( 
    IRdStrEnum * This,
    /* [retval][out] */ RtDWORD *pdwStyle);


void __RPC_STUB IRdStrEnum_GetComboCtrlStyle_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdStrEnum_INTERFACE_DEFINED__ */


#ifndef __IRdUcharArray_INTERFACE_DEFINED__
#define __IRdUcharArray_INTERFACE_DEFINED__

/* interface IRdUcharArray */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdUcharArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5CA37FDE-25EF-4f43-BDDC-BA2DEAEB42B4")
    IRdUcharArray : public IRsObject
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE LockData( 
            /* [retval][out] */ RtUchar **ppfData) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE UnLockData( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDesc( 
            /* [out] */ RtNumArrayDesc *pDesc) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ RtUlong cNewSize) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE FreeExtra( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ RtUlong index,
            /* [out] */ RtUchar *pValue) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ RtUlong index,
            /* [in] */ RtUchar value) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [retval][out] */ RtUlong *pSize) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ RtUchar newVal,
            /* [retval][out] */ RtUlong *index) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdUcharArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdUcharArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdUcharArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdUcharArray * This);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassId )( 
            IRdUcharArray * This,
            /* [retval][out] */ GUID *pVal);
        
        /* [helpstring][propget] */ HRESULT ( STDMETHODCALLTYPE *get_ClassName )( 
            IRdUcharArray * This,
            /* [retval][out] */ BSTR *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *LockData )( 
            IRdUcharArray * This,
            /* [retval][out] */ RtUchar **ppfData);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *UnLockData )( 
            IRdUcharArray * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDesc )( 
            IRdUcharArray * This,
            /* [out] */ RtNumArrayDesc *pDesc);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdUcharArray * This,
            /* [in] */ RtUlong cNewSize);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *FreeExtra )( 
            IRdUcharArray * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdUcharArray * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdUcharArray * This,
            /* [in] */ RtUlong index,
            /* [out] */ RtUchar *pValue);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdUcharArray * This,
            /* [in] */ RtUlong index,
            /* [in] */ RtUchar value);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdUcharArray * This,
            /* [retval][out] */ RtUlong *pSize);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdUcharArray * This,
            /* [in] */ RtUchar newVal,
            /* [retval][out] */ RtUlong *index);
        
        END_INTERFACE
    } IRdUcharArrayVtbl;

    interface IRdUcharArray
    {
        CONST_VTBL struct IRdUcharArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdUcharArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdUcharArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdUcharArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdUcharArray_get_ClassId(This,pVal)	\
    (This)->lpVtbl -> get_ClassId(This,pVal)

#define IRdUcharArray_get_ClassName(This,pVal)	\
    (This)->lpVtbl -> get_ClassName(This,pVal)


#define IRdUcharArray_LockData(This,ppfData)	\
    (This)->lpVtbl -> LockData(This,ppfData)

#define IRdUcharArray_UnLockData(This)	\
    (This)->lpVtbl -> UnLockData(This)

#define IRdUcharArray_GetDesc(This,pDesc)	\
    (This)->lpVtbl -> GetDesc(This,pDesc)

#define IRdUcharArray_SetSize(This,cNewSize)	\
    (This)->lpVtbl -> SetSize(This,cNewSize)

#define IRdUcharArray_FreeExtra(This)	\
    (This)->lpVtbl -> FreeExtra(This)

#define IRdUcharArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdUcharArray_GetAt(This,index,pValue)	\
    (This)->lpVtbl -> GetAt(This,index,pValue)

#define IRdUcharArray_SetAt(This,index,value)	\
    (This)->lpVtbl -> SetAt(This,index,value)

#define IRdUcharArray_GetSize(This,pSize)	\
    (This)->lpVtbl -> GetSize(This,pSize)

#define IRdUcharArray_Add(This,newVal,index)	\
    (This)->lpVtbl -> Add(This,newVal,index)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_LockData_Proxy( 
    IRdUcharArray * This,
    /* [retval][out] */ RtUchar **ppfData);


void __RPC_STUB IRdUcharArray_LockData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_UnLockData_Proxy( 
    IRdUcharArray * This);


void __RPC_STUB IRdUcharArray_UnLockData_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_GetDesc_Proxy( 
    IRdUcharArray * This,
    /* [out] */ RtNumArrayDesc *pDesc);


void __RPC_STUB IRdUcharArray_GetDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_SetSize_Proxy( 
    IRdUcharArray * This,
    /* [in] */ RtUlong cNewSize);


void __RPC_STUB IRdUcharArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_FreeExtra_Proxy( 
    IRdUcharArray * This);


void __RPC_STUB IRdUcharArray_FreeExtra_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_Clear_Proxy( 
    IRdUcharArray * This);


void __RPC_STUB IRdUcharArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_GetAt_Proxy( 
    IRdUcharArray * This,
    /* [in] */ RtUlong index,
    /* [out] */ RtUchar *pValue);


void __RPC_STUB IRdUcharArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_SetAt_Proxy( 
    IRdUcharArray * This,
    /* [in] */ RtUlong index,
    /* [in] */ RtUchar value);


void __RPC_STUB IRdUcharArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_GetSize_Proxy( 
    IRdUcharArray * This,
    /* [retval][out] */ RtUlong *pSize);


void __RPC_STUB IRdUcharArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRdUcharArray_Add_Proxy( 
    IRdUcharArray * This,
    /* [in] */ RtUchar newVal,
    /* [retval][out] */ RtUlong *index);


void __RPC_STUB IRdUcharArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdUcharArray_INTERFACE_DEFINED__ */


#ifndef __IRdVolumeTexture_INTERFACE_DEFINED__
#define __IRdVolumeTexture_INTERFACE_DEFINED__

/* interface IRdVolumeTexture */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRdVolumeTexture;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4E7B59A7-5127-4d19-91EF-D7D77476A137")
    IRdVolumeTexture : public IUnknown
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Create( 
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ RtDWORD nDepth,
            /* [in] */ enum RtPixelFormat PixelFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ConvertFormat( 
            /* [in] */ enum RtPixelFormat pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHeader( 
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ RtDWORD *pdwDepth,
            /* [out] */ enum RtPixelFormat *pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFormatDesc( 
            /* [out] */ struct RtPixelFormatDesc *pDesc) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVoxel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdColor *pOutValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetVoxel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdColor *pInValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVoxelCOLORREF( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ COLORREF *pOutValue) = 0;
        
        virtual /* [helpstring][id][local] */ HRESULT STDMETHODCALLTYPE GetVoxelBuffer( 
            /* [in] */ void **pBuffer) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR bsFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSlice( 
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdBitmap **ppBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSlice( 
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdBitmap *pBitmap) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdVolumeTextureVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdVolumeTexture * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdVolumeTexture * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdVolumeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdVolumeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Create )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ RtDWORD nDepth,
            /* [in] */ enum RtPixelFormat PixelFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertFormat )( 
            IRdVolumeTexture * This,
            /* [in] */ enum RtPixelFormat pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetHeader )( 
            IRdVolumeTexture * This,
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ RtDWORD *pdwDepth,
            /* [out] */ enum RtPixelFormat *pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormatDesc )( 
            IRdVolumeTexture * This,
            /* [out] */ struct RtPixelFormatDesc *pDesc);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetVoxel )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdColor *pOutValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetVoxel )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdColor *pInValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetVoxelCOLORREF )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ COLORREF *pOutValue);
        
        /* [helpstring][id][local] */ HRESULT ( STDMETHODCALLTYPE *GetVoxelBuffer )( 
            IRdVolumeTexture * This,
            /* [in] */ void **pBuffer);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockTexture )( 
            IRdVolumeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockTexture )( 
            IRdVolumeTexture * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdVolumeTexture * This,
            /* [in] */ BSTR bsFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSlice )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdBitmap **ppBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSlice )( 
            IRdVolumeTexture * This,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IRdBitmap *pBitmap);
        
        END_INTERFACE
    } IRdVolumeTextureVtbl;

    interface IRdVolumeTexture
    {
        CONST_VTBL struct IRdVolumeTextureVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdVolumeTexture_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdVolumeTexture_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdVolumeTexture_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdVolumeTexture_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdVolumeTexture_Create(This,nWidth,nHeight,nDepth,PixelFormat)	\
    (This)->lpVtbl -> Create(This,nWidth,nHeight,nDepth,PixelFormat)

#define IRdVolumeTexture_ConvertFormat(This,pFormat)	\
    (This)->lpVtbl -> ConvertFormat(This,pFormat)

#define IRdVolumeTexture_GetHeader(This,pdwWidth,pdwHeight,pdwDepth,pFormat)	\
    (This)->lpVtbl -> GetHeader(This,pdwWidth,pdwHeight,pdwDepth,pFormat)

#define IRdVolumeTexture_GetFormatDesc(This,pDesc)	\
    (This)->lpVtbl -> GetFormatDesc(This,pDesc)

#define IRdVolumeTexture_GetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)	\
    (This)->lpVtbl -> GetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)

#define IRdVolumeTexture_SetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pInValue)	\
    (This)->lpVtbl -> SetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pInValue)

#define IRdVolumeTexture_GetVoxelCOLORREF(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)	\
    (This)->lpVtbl -> GetVoxelCOLORREF(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)

#define IRdVolumeTexture_GetVoxelBuffer(This,pBuffer)	\
    (This)->lpVtbl -> GetVoxelBuffer(This,pBuffer)

#define IRdVolumeTexture_LockTexture(This)	\
    (This)->lpVtbl -> LockTexture(This)

#define IRdVolumeTexture_UnlockTexture(This)	\
    (This)->lpVtbl -> UnlockTexture(This)

#define IRdVolumeTexture_LoadFromFile(This,bsFileName)	\
    (This)->lpVtbl -> LoadFromFile(This,bsFileName)

#define IRdVolumeTexture_GetSlice(This,dwPositionZ,ppBitmap)	\
    (This)->lpVtbl -> GetSlice(This,dwPositionZ,ppBitmap)

#define IRdVolumeTexture_SetSlice(This,dwPositionZ,pBitmap)	\
    (This)->lpVtbl -> SetSlice(This,dwPositionZ,pBitmap)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_Clear_Proxy( 
    IRdVolumeTexture * This);


void __RPC_STUB IRdVolumeTexture_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_Create_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD nWidth,
    /* [in] */ RtDWORD nHeight,
    /* [in] */ RtDWORD nDepth,
    /* [in] */ enum RtPixelFormat PixelFormat);


void __RPC_STUB IRdVolumeTexture_Create_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_ConvertFormat_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ enum RtPixelFormat pFormat);


void __RPC_STUB IRdVolumeTexture_ConvertFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetHeader_Proxy( 
    IRdVolumeTexture * This,
    /* [out] */ RtDWORD *pdwWidth,
    /* [out] */ RtDWORD *pdwHeight,
    /* [out] */ RtDWORD *pdwDepth,
    /* [out] */ enum RtPixelFormat *pFormat);


void __RPC_STUB IRdVolumeTexture_GetHeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetFormatDesc_Proxy( 
    IRdVolumeTexture * This,
    /* [out] */ struct RtPixelFormatDesc *pDesc);


void __RPC_STUB IRdVolumeTexture_GetFormatDesc_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetVoxel_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IRdColor *pOutValue);


void __RPC_STUB IRdVolumeTexture_GetVoxel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_SetVoxel_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IRdColor *pInValue);


void __RPC_STUB IRdVolumeTexture_SetVoxel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetVoxelCOLORREF_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ COLORREF *pOutValue);


void __RPC_STUB IRdVolumeTexture_GetVoxelCOLORREF_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][local] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetVoxelBuffer_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ void **pBuffer);


void __RPC_STUB IRdVolumeTexture_GetVoxelBuffer_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_LockTexture_Proxy( 
    IRdVolumeTexture * This);


void __RPC_STUB IRdVolumeTexture_LockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_UnlockTexture_Proxy( 
    IRdVolumeTexture * This);


void __RPC_STUB IRdVolumeTexture_UnlockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_LoadFromFile_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ BSTR bsFileName);


void __RPC_STUB IRdVolumeTexture_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_GetSlice_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IRdBitmap **ppBitmap);


void __RPC_STUB IRdVolumeTexture_GetSlice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTexture_SetSlice_Proxy( 
    IRdVolumeTexture * This,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IRdBitmap *pBitmap);


void __RPC_STUB IRdVolumeTexture_SetSlice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdVolumeTexture_INTERFACE_DEFINED__ */


#ifndef __IRdVolumeTextureDisp_INTERFACE_DEFINED__
#define __IRdVolumeTextureDisp_INTERFACE_DEFINED__

/* interface IRdVolumeTextureDisp */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdVolumeTextureDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("2712cb0c-ff57-4728-b522-8778a8813ab2")
    IRdVolumeTextureDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Create( 
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ RtDWORD nDepth,
            /* [in] */ enum RtPixelFormat PixelFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ConvertFormat( 
            /* [in] */ enum RtPixelFormat pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHeader( 
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ RtDWORD *pdwDepth,
            /* [out] */ enum RtPixelFormat *pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVoxel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pOutValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetVoxel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pInValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetVoxelCOLORREF( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ COLORREF *pOutValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockTexture( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR bsFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSlice( 
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch **ppBitmap) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSlice( 
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pBitmap) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdVolumeTextureDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdVolumeTextureDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdVolumeTextureDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdVolumeTextureDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdVolumeTextureDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Create )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ RtDWORD nDepth,
            /* [in] */ enum RtPixelFormat PixelFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertFormat )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ enum RtPixelFormat pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetHeader )( 
            IRdVolumeTextureDisp * This,
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ RtDWORD *pdwDepth,
            /* [out] */ enum RtPixelFormat *pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetVoxel )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pOutValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetVoxel )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pInValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetVoxelCOLORREF )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ COLORREF *pOutValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockTexture )( 
            IRdVolumeTextureDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockTexture )( 
            IRdVolumeTextureDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ BSTR bsFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSlice )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch **ppBitmap);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSlice )( 
            IRdVolumeTextureDisp * This,
            /* [in] */ RtDWORD dwPositionZ,
            /* [in] */ IDispatch *pBitmap);
        
        END_INTERFACE
    } IRdVolumeTextureDispVtbl;

    interface IRdVolumeTextureDisp
    {
        CONST_VTBL struct IRdVolumeTextureDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdVolumeTextureDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdVolumeTextureDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdVolumeTextureDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdVolumeTextureDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdVolumeTextureDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdVolumeTextureDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdVolumeTextureDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdVolumeTextureDisp_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdVolumeTextureDisp_Create(This,nWidth,nHeight,nDepth,PixelFormat)	\
    (This)->lpVtbl -> Create(This,nWidth,nHeight,nDepth,PixelFormat)

#define IRdVolumeTextureDisp_ConvertFormat(This,pFormat)	\
    (This)->lpVtbl -> ConvertFormat(This,pFormat)

#define IRdVolumeTextureDisp_GetHeader(This,pdwWidth,pdwHeight,pdwDepth,pFormat)	\
    (This)->lpVtbl -> GetHeader(This,pdwWidth,pdwHeight,pdwDepth,pFormat)

#define IRdVolumeTextureDisp_GetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)	\
    (This)->lpVtbl -> GetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)

#define IRdVolumeTextureDisp_SetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pInValue)	\
    (This)->lpVtbl -> SetVoxel(This,dwPositionX,dwPositionY,dwPositionZ,pInValue)

#define IRdVolumeTextureDisp_GetVoxelCOLORREF(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)	\
    (This)->lpVtbl -> GetVoxelCOLORREF(This,dwPositionX,dwPositionY,dwPositionZ,pOutValue)

#define IRdVolumeTextureDisp_LockTexture(This)	\
    (This)->lpVtbl -> LockTexture(This)

#define IRdVolumeTextureDisp_UnlockTexture(This)	\
    (This)->lpVtbl -> UnlockTexture(This)

#define IRdVolumeTextureDisp_LoadFromFile(This,bsFileName)	\
    (This)->lpVtbl -> LoadFromFile(This,bsFileName)

#define IRdVolumeTextureDisp_GetSlice(This,dwPositionZ,ppBitmap)	\
    (This)->lpVtbl -> GetSlice(This,dwPositionZ,ppBitmap)

#define IRdVolumeTextureDisp_SetSlice(This,dwPositionZ,pBitmap)	\
    (This)->lpVtbl -> SetSlice(This,dwPositionZ,pBitmap)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_Clear_Proxy( 
    IRdVolumeTextureDisp * This);


void __RPC_STUB IRdVolumeTextureDisp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_Create_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD nWidth,
    /* [in] */ RtDWORD nHeight,
    /* [in] */ RtDWORD nDepth,
    /* [in] */ enum RtPixelFormat PixelFormat);


void __RPC_STUB IRdVolumeTextureDisp_Create_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_ConvertFormat_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ enum RtPixelFormat pFormat);


void __RPC_STUB IRdVolumeTextureDisp_ConvertFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_GetHeader_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [out] */ RtDWORD *pdwWidth,
    /* [out] */ RtDWORD *pdwHeight,
    /* [out] */ RtDWORD *pdwDepth,
    /* [out] */ enum RtPixelFormat *pFormat);


void __RPC_STUB IRdVolumeTextureDisp_GetHeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_GetVoxel_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IDispatch *pOutValue);


void __RPC_STUB IRdVolumeTextureDisp_GetVoxel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_SetVoxel_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IDispatch *pInValue);


void __RPC_STUB IRdVolumeTextureDisp_SetVoxel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_GetVoxelCOLORREF_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ COLORREF *pOutValue);


void __RPC_STUB IRdVolumeTextureDisp_GetVoxelCOLORREF_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_LockTexture_Proxy( 
    IRdVolumeTextureDisp * This);


void __RPC_STUB IRdVolumeTextureDisp_LockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_UnlockTexture_Proxy( 
    IRdVolumeTextureDisp * This);


void __RPC_STUB IRdVolumeTextureDisp_UnlockTexture_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_LoadFromFile_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ BSTR bsFileName);


void __RPC_STUB IRdVolumeTextureDisp_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_GetSlice_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IDispatch **ppBitmap);


void __RPC_STUB IRdVolumeTextureDisp_GetSlice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdVolumeTextureDisp_SetSlice_Proxy( 
    IRdVolumeTextureDisp * This,
    /* [in] */ RtDWORD dwPositionZ,
    /* [in] */ IDispatch *pBitmap);


void __RPC_STUB IRdVolumeTextureDisp_SetSlice_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdVolumeTextureDisp_INTERFACE_DEFINED__ */


#ifndef __IRiCommonData_INTERFACE_DEFINED__
#define __IRiCommonData_INTERFACE_DEFINED__

/* interface IRiCommonData */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IRiCommonData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9F2D8BD9-7148-4b0e-8E53-54B1A852FEB6")
    IRiCommonData : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RsPlaySound( 
            /* [in] */ BSTR bszConId,
            /* [in] */ RtBOOL bPlayInLoop) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRiCommonDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRiCommonData * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRiCommonData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRiCommonData * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRiCommonData * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRiCommonData * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRiCommonData * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRiCommonData * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RsPlaySound )( 
            IRiCommonData * This,
            /* [in] */ BSTR bszConId,
            /* [in] */ RtBOOL bPlayInLoop);
        
        END_INTERFACE
    } IRiCommonDataVtbl;

    interface IRiCommonData
    {
        CONST_VTBL struct IRiCommonDataVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRiCommonData_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRiCommonData_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRiCommonData_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRiCommonData_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRiCommonData_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRiCommonData_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRiCommonData_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRiCommonData_RsPlaySound(This,bszConId,bPlayInLoop)	\
    (This)->lpVtbl -> RsPlaySound(This,bszConId,bPlayInLoop)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiCommonData_RsPlaySound_Proxy( 
    IRiCommonData * This,
    /* [in] */ BSTR bszConId,
    /* [in] */ RtBOOL bPlayInLoop);


void __RPC_STUB IRiCommonData_RsPlaySound_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRiCommonData_INTERFACE_DEFINED__ */


#ifndef __IRiProject_INTERFACE_DEFINED__
#define __IRiProject_INTERFACE_DEFINED__

/* interface IRiProject */
/* [unique][helpstring][dual][uuid][object] */ 


EXTERN_C const IID IID_IRiProject;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A72F1877-D9A3-4241-99DE-1C7D93386D53")
    IRiProject : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Save( 
            /* [in] */ BSTR bszProjectFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Load( 
            /* [in] */ BSTR bszProjectFileName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRiProjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRiProject * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRiProject * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRiProject * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRiProject * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRiProject * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRiProject * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRiProject * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Save )( 
            IRiProject * This,
            /* [in] */ BSTR bszProjectFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Load )( 
            IRiProject * This,
            /* [in] */ BSTR bszProjectFileName);
        
        END_INTERFACE
    } IRiProjectVtbl;

    interface IRiProject
    {
        CONST_VTBL struct IRiProjectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRiProject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRiProject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRiProject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRiProject_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRiProject_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRiProject_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRiProject_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRiProject_Save(This,bszProjectFileName)	\
    (This)->lpVtbl -> Save(This,bszProjectFileName)

#define IRiProject_Load(This,bszProjectFileName)	\
    (This)->lpVtbl -> Load(This,bszProjectFileName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiProject_Save_Proxy( 
    IRiProject * This,
    /* [in] */ BSTR bszProjectFileName);


void __RPC_STUB IRiProject_Save_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRiProject_Load_Proxy( 
    IRiProject * This,
    /* [in] */ BSTR bszProjectFileName);


void __RPC_STUB IRiProject_Load_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRiProject_INTERFACE_DEFINED__ */


#ifndef __IRnImportCubeMap_INTERFACE_DEFINED__
#define __IRnImportCubeMap_INTERFACE_DEFINED__

/* interface IRnImportCubeMap */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnImportCubeMap;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("371AF110-FCDB-4eb3-B6E0-D802C1F4415F")
    IRnImportCubeMap : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnImportCubeMapVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnImportCubeMap * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnImportCubeMap * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnImportCubeMap * This);
        
        END_INTERFACE
    } IRnImportCubeMapVtbl;

    interface IRnImportCubeMap
    {
        CONST_VTBL struct IRnImportCubeMapVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnImportCubeMap_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnImportCubeMap_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnImportCubeMap_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnImportCubeMap_INTERFACE_DEFINED__ */


#ifndef __IRnImportVolumeMap_INTERFACE_DEFINED__
#define __IRnImportVolumeMap_INTERFACE_DEFINED__

/* interface IRnImportVolumeMap */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnImportVolumeMap;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1822D521-E0A0-40ca-8539-F9F55532D4E1")
    IRnImportVolumeMap : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnImportVolumeMapVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnImportVolumeMap * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnImportVolumeMap * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnImportVolumeMap * This);
        
        END_INTERFACE
    } IRnImportVolumeMapVtbl;

    interface IRnImportVolumeMap
    {
        CONST_VTBL struct IRnImportVolumeMapVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnImportVolumeMap_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnImportVolumeMap_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnImportVolumeMap_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnImportVolumeMap_INTERFACE_DEFINED__ */


#ifndef __IRnPreferences_INTERFACE_DEFINED__
#define __IRnPreferences_INTERFACE_DEFINED__

/* interface IRnPreferences */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnPreferences;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6C04F809-1E13-4823-AB2B-F3CE27258520")
    IRnPreferences : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnPreferencesVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnPreferences * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnPreferences * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnPreferences * This);
        
        END_INTERFACE
    } IRnPreferencesVtbl;

    interface IRnPreferences
    {
        CONST_VTBL struct IRnPreferencesVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnPreferences_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnPreferences_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnPreferences_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnPreferences_INTERFACE_DEFINED__ */


#ifndef __IRnProject_INTERFACE_DEFINED__
#define __IRnProject_INTERFACE_DEFINED__

/* interface IRnProject */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnProject;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("49874925-2FAC-4CAA-AED7-B1A06238DEA3")
    IRnProject : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnProjectVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnProject * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnProject * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnProject * This);
        
        END_INTERFACE
    } IRnProjectVtbl;

    interface IRnProject
    {
        CONST_VTBL struct IRnProjectVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnProject_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnProject_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnProject_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnProject_INTERFACE_DEFINED__ */


#ifndef __IRsCommonDataNodeFactory_INTERFACE_DEFINED__
#define __IRsCommonDataNodeFactory_INTERFACE_DEFINED__

/* interface IRsCommonDataNodeFactory */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsCommonDataNodeFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4C8BBBA4-C0CE-40aa-A7F4-C70762EB4818")
    IRsCommonDataNodeFactory : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsCommonDataNodeFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsCommonDataNodeFactory * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsCommonDataNodeFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsCommonDataNodeFactory * This);
        
        END_INTERFACE
    } IRsCommonDataNodeFactoryVtbl;

    interface IRsCommonDataNodeFactory
    {
        CONST_VTBL struct IRsCommonDataNodeFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsCommonDataNodeFactory_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsCommonDataNodeFactory_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsCommonDataNodeFactory_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsCommonDataNodeFactory_INTERFACE_DEFINED__ */


#ifndef __IRsCommDataCmdFactory_INTERFACE_DEFINED__
#define __IRsCommDataCmdFactory_INTERFACE_DEFINED__

/* interface IRsCommDataCmdFactory */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsCommDataCmdFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("A4AFFA88-B2E6-4D19-A545-EDA5BF6AF8B4")
    IRsCommDataCmdFactory : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsCommDataCmdFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsCommDataCmdFactory * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsCommDataCmdFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsCommDataCmdFactory * This);
        
        END_INTERFACE
    } IRsCommDataCmdFactoryVtbl;

    interface IRsCommDataCmdFactory
    {
        CONST_VTBL struct IRsCommDataCmdFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsCommDataCmdFactory_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsCommDataCmdFactory_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsCommDataCmdFactory_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsCommDataCmdFactory_INTERFACE_DEFINED__ */


#ifndef __IRsCommDataObjFactory_INTERFACE_DEFINED__
#define __IRsCommDataObjFactory_INTERFACE_DEFINED__

/* interface IRsCommDataObjFactory */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsCommDataObjFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6B8A3169-0527-4420-94C6-8B555A3875F9")
    IRsCommDataObjFactory : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRsCommDataObjFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsCommDataObjFactory * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsCommDataObjFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsCommDataObjFactory * This);
        
        END_INTERFACE
    } IRsCommDataObjFactoryVtbl;

    interface IRsCommDataObjFactory
    {
        CONST_VTBL struct IRsCommDataObjFactoryVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsCommDataObjFactory_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsCommDataObjFactory_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsCommDataObjFactory_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRsCommDataObjFactory_INTERFACE_DEFINED__ */


#ifndef __IRdBitmapDisp_INTERFACE_DEFINED__
#define __IRdBitmapDisp_INTERFACE_DEFINED__

/* interface IRdBitmapDisp */
/* [object][unique][helpstring][dual][uuid] */ 


EXTERN_C const IID IID_IRdBitmapDisp;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("17217CA8-467C-4c9c-865F-DED9F25C4C83")
    IRdBitmapDisp : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Create( 
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ enum RtPixelFormat PixelFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE CreateEx( 
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ BSTR bsFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ConvertFormat( 
            /* [in] */ enum RtPixelFormat pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetHeader( 
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ enum RtPixelFormat *pFormat) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSizeX( 
            /* [retval][out] */ RtDWORD *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSizeY( 
            /* [retval][out] */ RtDWORD *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFormatString( 
            /* [retval][out] */ BSTR *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFormat( 
            /* [retval][out] */ enum RtPixelFormat *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFormatNumberFromString( 
            /* [in] */ BSTR bsFormat,
            /* [retval][out] */ enum RtPixelFormat *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFormatStringFromNumber( 
            /* [in] */ enum RtPixelFormat Format,
            /* [retval][out] */ BSTR *pOut) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPixel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ IDispatch *pOutValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetPixel( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ IDispatch *pInValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetPixelCOLORREF( 
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [retval][out] */ COLORREF *pOutValue) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LockBitmap( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE UnlockBitmap( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE LoadFromFile( 
            /* [in] */ BSTR FileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetFileName( 
            /* [retval][out] */ BSTR *pFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetIsFromFile( 
            /* [in] */ RtBool bIsFromFile,
            /* [in] */ BSTR bstrFileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToFile( 
            /* [in] */ enum RtBitmapFileFormat Format,
            /* [in] */ BSTR FileName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Resize( 
            /* [in] */ RtDWORD dwWidth,
            /* [in] */ RtDWORD dwHeight) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSupportedFormatCount( 
            /* [retval][out] */ DWORD *dwFormatCount) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSupportedFormatMasks( 
            /* [in] */ DWORD dwFormat,
            /* [retval][out] */ BSTR *bsMasks) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSupportedFormatName( 
            /* [in] */ DWORD dwFormat,
            /* [retval][out] */ BSTR *bsFormatName) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IsEqual( 
            /* [in] */ IDispatch *pBitmap,
            /* [retval][out] */ BOOL *bEqualityResult) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetImageSizeFromFile( 
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT *pvRetInfo) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDownsampledFlag( 
            /* [retval][out] */ RtBool *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDownsampledFlag( 
            /* [in] */ RtBool newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SaveToFileEx( 
            /* [in] */ enum RtBitmapFileFormat Format,
            /* [in] */ BSTR FileName) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdBitmapDispVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdBitmapDisp * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdBitmapDisp * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdBitmapDisp * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdBitmapDisp * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdBitmapDisp * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdBitmapDisp * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdBitmapDisp * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdBitmapDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Create )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ enum RtPixelFormat PixelFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *CreateEx )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD nWidth,
            /* [in] */ RtDWORD nHeight,
            /* [in] */ BSTR bsFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *ConvertFormat )( 
            IRdBitmapDisp * This,
            /* [in] */ enum RtPixelFormat pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetHeader )( 
            IRdBitmapDisp * This,
            /* [out] */ RtDWORD *pdwWidth,
            /* [out] */ RtDWORD *pdwHeight,
            /* [out] */ enum RtPixelFormat *pFormat);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSizeX )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ RtDWORD *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSizeY )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ RtDWORD *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormatString )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ BSTR *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormat )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ enum RtPixelFormat *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormatNumberFromString )( 
            IRdBitmapDisp * This,
            /* [in] */ BSTR bsFormat,
            /* [retval][out] */ enum RtPixelFormat *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFormatStringFromNumber )( 
            IRdBitmapDisp * This,
            /* [in] */ enum RtPixelFormat Format,
            /* [retval][out] */ BSTR *pOut);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetPixel )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ IDispatch *pOutValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetPixel )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [in] */ IDispatch *pInValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetPixelCOLORREF )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD dwPositionX,
            /* [in] */ RtDWORD dwPositionY,
            /* [retval][out] */ COLORREF *pOutValue);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LockBitmap )( 
            IRdBitmapDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *UnlockBitmap )( 
            IRdBitmapDisp * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *LoadFromFile )( 
            IRdBitmapDisp * This,
            /* [in] */ BSTR FileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetFileName )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ BSTR *pFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetIsFromFile )( 
            IRdBitmapDisp * This,
            /* [in] */ RtBool bIsFromFile,
            /* [in] */ BSTR bstrFileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToFile )( 
            IRdBitmapDisp * This,
            /* [in] */ enum RtBitmapFileFormat Format,
            /* [in] */ BSTR FileName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Resize )( 
            IRdBitmapDisp * This,
            /* [in] */ RtDWORD dwWidth,
            /* [in] */ RtDWORD dwHeight);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedFormatCount )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ DWORD *dwFormatCount);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedFormatMasks )( 
            IRdBitmapDisp * This,
            /* [in] */ DWORD dwFormat,
            /* [retval][out] */ BSTR *bsMasks);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSupportedFormatName )( 
            IRdBitmapDisp * This,
            /* [in] */ DWORD dwFormat,
            /* [retval][out] */ BSTR *bsFormatName);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *IsEqual )( 
            IRdBitmapDisp * This,
            /* [in] */ IDispatch *pBitmap,
            /* [retval][out] */ BOOL *bEqualityResult);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetImageSizeFromFile )( 
            IRdBitmapDisp * This,
            /* [in] */ BSTR FileName,
            /* [retval][out] */ VARIANT *pvRetInfo);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDownsampledFlag )( 
            IRdBitmapDisp * This,
            /* [retval][out] */ RtBool *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDownsampledFlag )( 
            IRdBitmapDisp * This,
            /* [in] */ RtBool newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SaveToFileEx )( 
            IRdBitmapDisp * This,
            /* [in] */ enum RtBitmapFileFormat Format,
            /* [in] */ BSTR FileName);
        
        END_INTERFACE
    } IRdBitmapDispVtbl;

    interface IRdBitmapDisp
    {
        CONST_VTBL struct IRdBitmapDispVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdBitmapDisp_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdBitmapDisp_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdBitmapDisp_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdBitmapDisp_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdBitmapDisp_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdBitmapDisp_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdBitmapDisp_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdBitmapDisp_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdBitmapDisp_Create(This,nWidth,nHeight,PixelFormat)	\
    (This)->lpVtbl -> Create(This,nWidth,nHeight,PixelFormat)

#define IRdBitmapDisp_CreateEx(This,nWidth,nHeight,bsFormat)	\
    (This)->lpVtbl -> CreateEx(This,nWidth,nHeight,bsFormat)

#define IRdBitmapDisp_ConvertFormat(This,pFormat)	\
    (This)->lpVtbl -> ConvertFormat(This,pFormat)

#define IRdBitmapDisp_GetHeader(This,pdwWidth,pdwHeight,pFormat)	\
    (This)->lpVtbl -> GetHeader(This,pdwWidth,pdwHeight,pFormat)

#define IRdBitmapDisp_GetSizeX(This,pOut)	\
    (This)->lpVtbl -> GetSizeX(This,pOut)

#define IRdBitmapDisp_GetSizeY(This,pOut)	\
    (This)->lpVtbl -> GetSizeY(This,pOut)

#define IRdBitmapDisp_GetFormatString(This,pOut)	\
    (This)->lpVtbl -> GetFormatString(This,pOut)

#define IRdBitmapDisp_GetFormat(This,pOut)	\
    (This)->lpVtbl -> GetFormat(This,pOut)

#define IRdBitmapDisp_GetFormatNumberFromString(This,bsFormat,pOut)	\
    (This)->lpVtbl -> GetFormatNumberFromString(This,bsFormat,pOut)

#define IRdBitmapDisp_GetFormatStringFromNumber(This,Format,pOut)	\
    (This)->lpVtbl -> GetFormatStringFromNumber(This,Format,pOut)

#define IRdBitmapDisp_GetPixel(This,dwPositionX,dwPositionY,pOutValue)	\
    (This)->lpVtbl -> GetPixel(This,dwPositionX,dwPositionY,pOutValue)

#define IRdBitmapDisp_SetPixel(This,dwPositionX,dwPositionY,pInValue)	\
    (This)->lpVtbl -> SetPixel(This,dwPositionX,dwPositionY,pInValue)

#define IRdBitmapDisp_GetPixelCOLORREF(This,dwPositionX,dwPositionY,pOutValue)	\
    (This)->lpVtbl -> GetPixelCOLORREF(This,dwPositionX,dwPositionY,pOutValue)

#define IRdBitmapDisp_LockBitmap(This)	\
    (This)->lpVtbl -> LockBitmap(This)

#define IRdBitmapDisp_UnlockBitmap(This)	\
    (This)->lpVtbl -> UnlockBitmap(This)

#define IRdBitmapDisp_LoadFromFile(This,FileName)	\
    (This)->lpVtbl -> LoadFromFile(This,FileName)

#define IRdBitmapDisp_GetFileName(This,pFileName)	\
    (This)->lpVtbl -> GetFileName(This,pFileName)

#define IRdBitmapDisp_SetIsFromFile(This,bIsFromFile,bstrFileName)	\
    (This)->lpVtbl -> SetIsFromFile(This,bIsFromFile,bstrFileName)

#define IRdBitmapDisp_SaveToFile(This,Format,FileName)	\
    (This)->lpVtbl -> SaveToFile(This,Format,FileName)

#define IRdBitmapDisp_Resize(This,dwWidth,dwHeight)	\
    (This)->lpVtbl -> Resize(This,dwWidth,dwHeight)

#define IRdBitmapDisp_GetSupportedFormatCount(This,dwFormatCount)	\
    (This)->lpVtbl -> GetSupportedFormatCount(This,dwFormatCount)

#define IRdBitmapDisp_GetSupportedFormatMasks(This,dwFormat,bsMasks)	\
    (This)->lpVtbl -> GetSupportedFormatMasks(This,dwFormat,bsMasks)

#define IRdBitmapDisp_GetSupportedFormatName(This,dwFormat,bsFormatName)	\
    (This)->lpVtbl -> GetSupportedFormatName(This,dwFormat,bsFormatName)

#define IRdBitmapDisp_IsEqual(This,pBitmap,bEqualityResult)	\
    (This)->lpVtbl -> IsEqual(This,pBitmap,bEqualityResult)

#define IRdBitmapDisp_GetImageSizeFromFile(This,FileName,pvRetInfo)	\
    (This)->lpVtbl -> GetImageSizeFromFile(This,FileName,pvRetInfo)

#define IRdBitmapDisp_GetDownsampledFlag(This,pVal)	\
    (This)->lpVtbl -> GetDownsampledFlag(This,pVal)

#define IRdBitmapDisp_SetDownsampledFlag(This,newVal)	\
    (This)->lpVtbl -> SetDownsampledFlag(This,newVal)

#define IRdBitmapDisp_SaveToFileEx(This,Format,FileName)	\
    (This)->lpVtbl -> SaveToFileEx(This,Format,FileName)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_Clear_Proxy( 
    IRdBitmapDisp * This);


void __RPC_STUB IRdBitmapDisp_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_Create_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD nWidth,
    /* [in] */ RtDWORD nHeight,
    /* [in] */ enum RtPixelFormat PixelFormat);


void __RPC_STUB IRdBitmapDisp_Create_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_CreateEx_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD nWidth,
    /* [in] */ RtDWORD nHeight,
    /* [in] */ BSTR bsFormat);


void __RPC_STUB IRdBitmapDisp_CreateEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_ConvertFormat_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ enum RtPixelFormat pFormat);


void __RPC_STUB IRdBitmapDisp_ConvertFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetHeader_Proxy( 
    IRdBitmapDisp * This,
    /* [out] */ RtDWORD *pdwWidth,
    /* [out] */ RtDWORD *pdwHeight,
    /* [out] */ enum RtPixelFormat *pFormat);


void __RPC_STUB IRdBitmapDisp_GetHeader_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetSizeX_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ RtDWORD *pOut);


void __RPC_STUB IRdBitmapDisp_GetSizeX_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetSizeY_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ RtDWORD *pOut);


void __RPC_STUB IRdBitmapDisp_GetSizeY_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetFormatString_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ BSTR *pOut);


void __RPC_STUB IRdBitmapDisp_GetFormatString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetFormat_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ enum RtPixelFormat *pOut);


void __RPC_STUB IRdBitmapDisp_GetFormat_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetFormatNumberFromString_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ BSTR bsFormat,
    /* [retval][out] */ enum RtPixelFormat *pOut);


void __RPC_STUB IRdBitmapDisp_GetFormatNumberFromString_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetFormatStringFromNumber_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ enum RtPixelFormat Format,
    /* [retval][out] */ BSTR *pOut);


void __RPC_STUB IRdBitmapDisp_GetFormatStringFromNumber_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetPixel_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ IDispatch *pOutValue);


void __RPC_STUB IRdBitmapDisp_GetPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_SetPixel_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [in] */ IDispatch *pInValue);


void __RPC_STUB IRdBitmapDisp_SetPixel_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetPixelCOLORREF_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD dwPositionX,
    /* [in] */ RtDWORD dwPositionY,
    /* [retval][out] */ COLORREF *pOutValue);


void __RPC_STUB IRdBitmapDisp_GetPixelCOLORREF_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_LockBitmap_Proxy( 
    IRdBitmapDisp * This);


void __RPC_STUB IRdBitmapDisp_LockBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_UnlockBitmap_Proxy( 
    IRdBitmapDisp * This);


void __RPC_STUB IRdBitmapDisp_UnlockBitmap_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_LoadFromFile_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ BSTR FileName);


void __RPC_STUB IRdBitmapDisp_LoadFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetFileName_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ BSTR *pFileName);


void __RPC_STUB IRdBitmapDisp_GetFileName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_SetIsFromFile_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtBool bIsFromFile,
    /* [in] */ BSTR bstrFileName);


void __RPC_STUB IRdBitmapDisp_SetIsFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_SaveToFile_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ enum RtBitmapFileFormat Format,
    /* [in] */ BSTR FileName);


void __RPC_STUB IRdBitmapDisp_SaveToFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_Resize_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtDWORD dwWidth,
    /* [in] */ RtDWORD dwHeight);


void __RPC_STUB IRdBitmapDisp_Resize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetSupportedFormatCount_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ DWORD *dwFormatCount);


void __RPC_STUB IRdBitmapDisp_GetSupportedFormatCount_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetSupportedFormatMasks_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ DWORD dwFormat,
    /* [retval][out] */ BSTR *bsMasks);


void __RPC_STUB IRdBitmapDisp_GetSupportedFormatMasks_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetSupportedFormatName_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ DWORD dwFormat,
    /* [retval][out] */ BSTR *bsFormatName);


void __RPC_STUB IRdBitmapDisp_GetSupportedFormatName_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_IsEqual_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ IDispatch *pBitmap,
    /* [retval][out] */ BOOL *bEqualityResult);


void __RPC_STUB IRdBitmapDisp_IsEqual_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetImageSizeFromFile_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ BSTR FileName,
    /* [retval][out] */ VARIANT *pvRetInfo);


void __RPC_STUB IRdBitmapDisp_GetImageSizeFromFile_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_GetDownsampledFlag_Proxy( 
    IRdBitmapDisp * This,
    /* [retval][out] */ RtBool *pVal);


void __RPC_STUB IRdBitmapDisp_GetDownsampledFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_SetDownsampledFlag_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ RtBool newVal);


void __RPC_STUB IRdBitmapDisp_SetDownsampledFlag_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBitmapDisp_SaveToFileEx_Proxy( 
    IRdBitmapDisp * This,
    /* [in] */ enum RtBitmapFileFormat Format,
    /* [in] */ BSTR FileName);


void __RPC_STUB IRdBitmapDisp_SaveToFileEx_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdBitmapDisp_INTERFACE_DEFINED__ */


#ifndef __IRsGenArray_INTERFACE_DEFINED__
#define __IRsGenArray_INTERFACE_DEFINED__

/* interface IRsGenArray */
/* [unique][helpstring][uuid][local][object] */ 


EXTERN_C const IID IID_IRsGenArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7D73EB09-E137-4910-82D3-A67CF5DCDB46")
    IRsGenArray : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsGenArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsGenArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsGenArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsGenArray * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRsGenArray * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRsGenArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRsGenArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [vararg][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRsGenArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRsGenArray * This,
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [vararg][helpstring] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRsGenArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [vararg][helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRsGenArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRsGenArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRsGenArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRsGenArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRsGenArrayVtbl;

    interface IRsGenArray
    {
        CONST_VTBL struct IRsGenArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsGenArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsGenArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsGenArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsGenArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRsGenArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRsGenArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRsGenArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRsGenArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRsGenArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRsGenArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRsGenArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRsGenArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRsGenArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_Clear_Proxy( 
    IRsGenArray * This);


void __RPC_STUB IRsGenArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_SetDim_Proxy( 
    IRsGenArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRsGenArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_GetDim_Proxy( 
    IRsGenArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRsGenArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_SetSize_Proxy( 
    IRsGenArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRsGenArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_GetSize_Proxy( 
    IRsGenArray * This,
    /* [optional][in] */ VARIANT optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRsGenArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_SetAt_Proxy( 
    IRsGenArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRsGenArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_GetAt_Proxy( 
    IRsGenArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRsGenArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_Add_Proxy( 
    IRsGenArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRsGenArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_InsertAt_Proxy( 
    IRsGenArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRsGenArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsGenArray_RemoveAt_Proxy( 
    IRsGenArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRsGenArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsGenArray_INTERFACE_DEFINED__ */


#ifndef __IRdObjArray_INTERFACE_DEFINED__
#define __IRdObjArray_INTERFACE_DEFINED__

/* interface IRdObjArray */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdObjArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0DB4A9D9-D0ED-402d-9D49-DE2571B48A74")
    IRdObjArray : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdObjArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdObjArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdObjArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdObjArray * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdObjArray * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdObjArray * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdObjArray * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdObjArray * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdObjArray * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRdObjArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRdObjArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdObjArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdObjArray * This,
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdObjArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdObjArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdObjArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRdObjArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRdObjArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRdObjArrayVtbl;

    interface IRdObjArray
    {
        CONST_VTBL struct IRdObjArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdObjArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdObjArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdObjArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdObjArray_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdObjArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdObjArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdObjArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdObjArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdObjArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRdObjArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRdObjArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRdObjArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRdObjArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRdObjArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRdObjArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRdObjArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRdObjArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_Clear_Proxy( 
    IRdObjArray * This);


void __RPC_STUB IRdObjArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_SetDim_Proxy( 
    IRdObjArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRdObjArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_GetDim_Proxy( 
    IRdObjArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRdObjArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_SetSize_Proxy( 
    IRdObjArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdObjArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_GetSize_Proxy( 
    IRdObjArray * This,
    /* [optional][in] */ VARIANT optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdObjArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_SetAt_Proxy( 
    IRdObjArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdObjArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_GetAt_Proxy( 
    IRdObjArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRdObjArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_Add_Proxy( 
    IRdObjArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdObjArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_InsertAt_Proxy( 
    IRdObjArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdObjArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdObjArray_RemoveAt_Proxy( 
    IRdObjArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRdObjArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdObjArray_INTERFACE_DEFINED__ */


#ifndef __IRdIntArray_INTERFACE_DEFINED__
#define __IRdIntArray_INTERFACE_DEFINED__

/* interface IRdIntArray */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdIntArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("C0C289CE-EBE4-481a-BDAC-A4410BF7142B")
    IRdIntArray : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdIntArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdIntArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdIntArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdIntArray * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdIntArray * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdIntArray * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdIntArray * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdIntArray * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdIntArray * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRdIntArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRdIntArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdIntArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdIntArray * This,
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdIntArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdIntArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdIntArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRdIntArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRdIntArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRdIntArrayVtbl;

    interface IRdIntArray
    {
        CONST_VTBL struct IRdIntArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdIntArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdIntArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdIntArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdIntArray_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdIntArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdIntArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdIntArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdIntArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdIntArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRdIntArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRdIntArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRdIntArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRdIntArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRdIntArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRdIntArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRdIntArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRdIntArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_Clear_Proxy( 
    IRdIntArray * This);


void __RPC_STUB IRdIntArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_SetDim_Proxy( 
    IRdIntArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRdIntArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_GetDim_Proxy( 
    IRdIntArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRdIntArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdIntArray_SetSize_Proxy( 
    IRdIntArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdIntArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_GetSize_Proxy( 
    IRdIntArray * This,
    /* [optional][in] */ VARIANT optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdIntArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdIntArray_SetAt_Proxy( 
    IRdIntArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdIntArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdIntArray_GetAt_Proxy( 
    IRdIntArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRdIntArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_Add_Proxy( 
    IRdIntArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdIntArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_InsertAt_Proxy( 
    IRdIntArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdIntArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdIntArray_RemoveAt_Proxy( 
    IRdIntArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRdIntArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdIntArray_INTERFACE_DEFINED__ */


#ifndef __IRdNumArray_INTERFACE_DEFINED__
#define __IRdNumArray_INTERFACE_DEFINED__

/* interface IRdNumArray */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdNumArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("F76E8A47-4BA3-4a15-8C4F-21691A1F5C74")
    IRdNumArray : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdNumArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdNumArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdNumArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdNumArray * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdNumArray * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdNumArray * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdNumArray * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdNumArray * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdNumArray * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRdNumArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRdNumArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdNumArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdNumArray * This,
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdNumArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdNumArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdNumArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRdNumArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRdNumArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRdNumArrayVtbl;

    interface IRdNumArray
    {
        CONST_VTBL struct IRdNumArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdNumArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdNumArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdNumArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdNumArray_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdNumArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdNumArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdNumArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdNumArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdNumArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRdNumArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRdNumArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRdNumArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRdNumArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRdNumArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRdNumArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRdNumArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRdNumArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_Clear_Proxy( 
    IRdNumArray * This);


void __RPC_STUB IRdNumArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_SetDim_Proxy( 
    IRdNumArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRdNumArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_GetDim_Proxy( 
    IRdNumArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRdNumArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_SetSize_Proxy( 
    IRdNumArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdNumArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_GetSize_Proxy( 
    IRdNumArray * This,
    /* [optional][in] */ VARIANT optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdNumArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_SetAt_Proxy( 
    IRdNumArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdNumArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_GetAt_Proxy( 
    IRdNumArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRdNumArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_Add_Proxy( 
    IRdNumArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdNumArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_InsertAt_Proxy( 
    IRdNumArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdNumArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdNumArray_RemoveAt_Proxy( 
    IRdNumArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRdNumArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdNumArray_INTERFACE_DEFINED__ */


#ifndef __IRdBoolArray_INTERFACE_DEFINED__
#define __IRdBoolArray_INTERFACE_DEFINED__

/* interface IRdBoolArray */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdBoolArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("D98D231C-A48C-4ce0-A971-AD7CB3E0D3CD")
    IRdBoolArray : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdBoolArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdBoolArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdBoolArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdBoolArray * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdBoolArray * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdBoolArray * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdBoolArray * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdBoolArray * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdBoolArray * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRdBoolArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRdBoolArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdBoolArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdBoolArray * This,
            /* [optional][in] */ VARIANT optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdBoolArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [vararg][helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdBoolArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdBoolArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRdBoolArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRdBoolArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRdBoolArrayVtbl;

    interface IRdBoolArray
    {
        CONST_VTBL struct IRdBoolArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdBoolArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdBoolArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdBoolArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdBoolArray_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdBoolArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdBoolArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdBoolArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdBoolArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdBoolArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRdBoolArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRdBoolArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRdBoolArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRdBoolArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRdBoolArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRdBoolArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRdBoolArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRdBoolArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_Clear_Proxy( 
    IRdBoolArray * This);


void __RPC_STUB IRdBoolArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_SetDim_Proxy( 
    IRdBoolArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRdBoolArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_GetDim_Proxy( 
    IRdBoolArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRdBoolArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_SetSize_Proxy( 
    IRdBoolArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdBoolArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_GetSize_Proxy( 
    IRdBoolArray * This,
    /* [optional][in] */ VARIANT optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdBoolArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_SetAt_Proxy( 
    IRdBoolArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdBoolArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [vararg][helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_GetAt_Proxy( 
    IRdBoolArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRdBoolArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_Add_Proxy( 
    IRdBoolArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdBoolArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_InsertAt_Proxy( 
    IRdBoolArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdBoolArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdBoolArray_RemoveAt_Proxy( 
    IRdBoolArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRdBoolArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdBoolArray_INTERFACE_DEFINED__ */


#ifndef __IRdStrArray_INTERFACE_DEFINED__
#define __IRdStrArray_INTERFACE_DEFINED__

/* interface IRdStrArray */
/* [object][unique][helpstring][uuid][dual] */ 


EXTERN_C const IID IID_IRdStrArray;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("52DDA4BB-5431-4be9-A112-4E5818499ECD")
    IRdStrArray : public IDispatch
    {
    public:
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Clear( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SetDim( 
            /* [in] */ RtUlong ulDim) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetDim( 
            /* [retval][out] */ RtUlong *pulDim) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE SetSize( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE GetSize( 
            /* [defaultvalue][in] */ int optionalDim,
            /* [retval][out] */ RtUlong *pulSize) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE SetAt( 
            /* [in] */ SAFEARRAY * psa) = 0;
        
        virtual /* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Add( 
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE InsertAt( 
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE RemoveAt( 
            /* [in] */ RtUlong ulIndex) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRdStrArrayVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRdStrArray * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRdStrArray * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRdStrArray * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            IRdStrArray * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            IRdStrArray * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            IRdStrArray * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            IRdStrArray * This,
            /* [in] */ DISPID dispIdMember,
            /* [in] */ REFIID riid,
            /* [in] */ LCID lcid,
            /* [in] */ WORD wFlags,
            /* [out][in] */ DISPPARAMS *pDispParams,
            /* [out] */ VARIANT *pVarResult,
            /* [out] */ EXCEPINFO *pExcepInfo,
            /* [out] */ UINT *puArgErr);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Clear )( 
            IRdStrArray * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SetDim )( 
            IRdStrArray * This,
            /* [in] */ RtUlong ulDim);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetDim )( 
            IRdStrArray * This,
            /* [retval][out] */ RtUlong *pulDim);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *SetSize )( 
            IRdStrArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *GetSize )( 
            IRdStrArray * This,
            /* [defaultvalue][in] */ int optionalDim,
            /* [retval][out] */ RtUlong *pulSize);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *SetAt )( 
            IRdStrArray * This,
            /* [in] */ SAFEARRAY * psa);
        
        /* [helpstring][id][vararg] */ HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            IRdStrArray * This,
            /* [in] */ SAFEARRAY * psa,
            /* [retval][out] */ VARIANT *pVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *Add )( 
            IRdStrArray * This,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *InsertAt )( 
            IRdStrArray * This,
            /* [in] */ RtUlong ulIndex,
            /* [in] */ VARIANT newVal);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 
            IRdStrArray * This,
            /* [in] */ RtUlong ulIndex);
        
        END_INTERFACE
    } IRdStrArrayVtbl;

    interface IRdStrArray
    {
        CONST_VTBL struct IRdStrArrayVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRdStrArray_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRdStrArray_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRdStrArray_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRdStrArray_GetTypeInfoCount(This,pctinfo)	\
    (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)

#define IRdStrArray_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
    (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)

#define IRdStrArray_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
    (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)

#define IRdStrArray_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
    (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)


#define IRdStrArray_Clear(This)	\
    (This)->lpVtbl -> Clear(This)

#define IRdStrArray_SetDim(This,ulDim)	\
    (This)->lpVtbl -> SetDim(This,ulDim)

#define IRdStrArray_GetDim(This,pulDim)	\
    (This)->lpVtbl -> GetDim(This,pulDim)

#define IRdStrArray_SetSize(This,psa)	\
    (This)->lpVtbl -> SetSize(This,psa)

#define IRdStrArray_GetSize(This,optionalDim,pulSize)	\
    (This)->lpVtbl -> GetSize(This,optionalDim,pulSize)

#define IRdStrArray_SetAt(This,psa)	\
    (This)->lpVtbl -> SetAt(This,psa)

#define IRdStrArray_GetAt(This,psa,pVal)	\
    (This)->lpVtbl -> GetAt(This,psa,pVal)

#define IRdStrArray_Add(This,newVal)	\
    (This)->lpVtbl -> Add(This,newVal)

#define IRdStrArray_InsertAt(This,ulIndex,newVal)	\
    (This)->lpVtbl -> InsertAt(This,ulIndex,newVal)

#define IRdStrArray_RemoveAt(This,ulIndex)	\
    (This)->lpVtbl -> RemoveAt(This,ulIndex)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_Clear_Proxy( 
    IRdStrArray * This);


void __RPC_STUB IRdStrArray_Clear_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_SetDim_Proxy( 
    IRdStrArray * This,
    /* [in] */ RtUlong ulDim);


void __RPC_STUB IRdStrArray_SetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_GetDim_Proxy( 
    IRdStrArray * This,
    /* [retval][out] */ RtUlong *pulDim);


void __RPC_STUB IRdStrArray_GetDim_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdStrArray_SetSize_Proxy( 
    IRdStrArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdStrArray_SetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_GetSize_Proxy( 
    IRdStrArray * This,
    /* [defaultvalue][in] */ int optionalDim,
    /* [retval][out] */ RtUlong *pulSize);


void __RPC_STUB IRdStrArray_GetSize_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdStrArray_SetAt_Proxy( 
    IRdStrArray * This,
    /* [in] */ SAFEARRAY * psa);


void __RPC_STUB IRdStrArray_SetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id][vararg] */ HRESULT STDMETHODCALLTYPE IRdStrArray_GetAt_Proxy( 
    IRdStrArray * This,
    /* [in] */ SAFEARRAY * psa,
    /* [retval][out] */ VARIANT *pVal);


void __RPC_STUB IRdStrArray_GetAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_Add_Proxy( 
    IRdStrArray * This,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdStrArray_Add_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_InsertAt_Proxy( 
    IRdStrArray * This,
    /* [in] */ RtUlong ulIndex,
    /* [in] */ VARIANT newVal);


void __RPC_STUB IRdStrArray_InsertAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE IRdStrArray_RemoveAt_Proxy( 
    IRdStrArray * This,
    /* [in] */ RtUlong ulIndex);


void __RPC_STUB IRdStrArray_RemoveAt_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRdStrArray_INTERFACE_DEFINED__ */


#ifndef __IRnBitmapsToCubeTex_INTERFACE_DEFINED__
#define __IRnBitmapsToCubeTex_INTERFACE_DEFINED__

/* interface IRnBitmapsToCubeTex */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRnBitmapsToCubeTex;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("36F663CA-763B-4d3a-A76E-E190FDB3B64D")
    IRnBitmapsToCubeTex : public IUnknown
    {
    public:
    };
    
#else 	/* C style interface */

    typedef struct IRnBitmapsToCubeTexVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRnBitmapsToCubeTex * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRnBitmapsToCubeTex * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRnBitmapsToCubeTex * This);
        
        END_INTERFACE
    } IRnBitmapsToCubeTexVtbl;

    interface IRnBitmapsToCubeTex
    {
        CONST_VTBL struct IRnBitmapsToCubeTexVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRnBitmapsToCubeTex_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRnBitmapsToCubeTex_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRnBitmapsToCubeTex_Release(This)	\
    (This)->lpVtbl -> Release(This)


#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* __IRnBitmapsToCubeTex_INTERFACE_DEFINED__ */


/* interface __MIDL_itf__CommonData_1167 */
/* [local] */ 


enum RtDadApplicatorObjTranslation
    {	DAOT_SCENE_OBJ	= 0,
	DAOT_ROOT_OBJ	= 1
    } ;

enum RtDadApplyMode
    {	DAM_DEFAULT	= 0,
	DAM_APPLY_DROP	= 1,
	DAM_LDBL_CLICK	= 2
    } ;


extern RPC_IF_HANDLE __MIDL_itf__CommonData_1167_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf__CommonData_1167_v0_0_s_ifspec;

#ifndef __IRsDadApplicator_INTERFACE_DEFINED__
#define __IRsDadApplicator_INTERFACE_DEFINED__

/* interface IRsDadApplicator */
/* [unique][helpstring][uuid][object] */ 


EXTERN_C const IID IID_IRsDadApplicator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("95C7404D-267A-4717-A065-5BD1A62E803C")
    IRsDadApplicator : public IUnknown
    {
    public:
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetObjectTranslationMode( 
            /* [retval][out] */ enum RtDadApplicatorObjTranslation *pMode) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE GetDefaultTarget( 
            /* [in] */ enum RtDadApplyMode dwMode,
            /* [in] */ IRsObject **ppTargetObj) = 0;
        
        virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Apply( 
            /* [in] */ enum RtDadApplyMode dwMode,
            /* [in] */ IRsObject *pLoadedObj,
            /* [in] */ IRsObject *pTarget) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IRsDadApplicatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IRsDadApplicator * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IRsDadApplicator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IRsDadApplicator * This);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetObjectTranslationMode )( 
            IRsDadApplicator * This,
            /* [retval][out] */ enum RtDadApplicatorObjTranslation *pMode);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *GetDefaultTarget )( 
            IRsDadApplicator * This,
            /* [in] */ enum RtDadApplyMode dwMode,
            /* [in] */ IRsObject **ppTargetObj);
        
        /* [helpstring] */ HRESULT ( STDMETHODCALLTYPE *Apply )( 
            IRsDadApplicator * This,
            /* [in] */ enum RtDadApplyMode dwMode,
            /* [in] */ IRsObject *pLoadedObj,
            /* [in] */ IRsObject *pTarget);
        
        END_INTERFACE
    } IRsDadApplicatorVtbl;

    interface IRsDadApplicator
    {
        CONST_VTBL struct IRsDadApplicatorVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IRsDadApplicator_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IRsDadApplicator_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IRsDadApplicator_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IRsDadApplicator_GetObjectTranslationMode(This,pMode)	\
    (This)->lpVtbl -> GetObjectTranslationMode(This,pMode)

#define IRsDadApplicator_GetDefaultTarget(This,dwMode,ppTargetObj)	\
    (This)->lpVtbl -> GetDefaultTarget(This,dwMode,ppTargetObj)

#define IRsDadApplicator_Apply(This,dwMode,pLoadedObj,pTarget)	\
    (This)->lpVtbl -> Apply(This,dwMode,pLoadedObj,pTarget)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsDadApplicator_GetObjectTranslationMode_Proxy( 
    IRsDadApplicator * This,
    /* [retval][out] */ enum RtDadApplicatorObjTranslation *pMode);


void __RPC_STUB IRsDadApplicator_GetObjectTranslationMode_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsDadApplicator_GetDefaultTarget_Proxy( 
    IRsDadApplicator * This,
    /* [in] */ enum RtDadApplyMode dwMode,
    /* [in] */ IRsObject **ppTargetObj);


void __RPC_STUB IRsDadApplicator_GetDefaultTarget_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


/* [helpstring] */ HRESULT STDMETHODCALLTYPE IRsDadApplicator_Apply_Proxy( 
    IRsDadApplicator * This,
    /* [in] */ enum RtDadApplyMode dwMode,
    /* [in] */ IRsObject *pLoadedObj,
    /* [in] */ IRsObject *pTarget);


void __RPC_STUB IRsDadApplicator_Apply_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IRsDadApplicator_INTERFACE_DEFINED__ */



#ifndef __CommonData_LIBRARY_DEFINED__
#define __CommonData_LIBRARY_DEFINED__

/* library CommonData */
/* [helpstring][uuid][version] */ 


EXTERN_C const IID LIBID_CommonData;

EXTERN_C const CLSID CLSID_CRdSound;

#ifdef __cplusplus

class DECLSPEC_UUID("6CF64C9C-38DB-4a94-A006-987320699783")
CRdSound;
#endif

EXTERN_C const CLSID CLSID_CRpCommonData;

#ifdef __cplusplus

class DECLSPEC_UUID("68B5AC17-D23F-4E5D-89B8-FFB195540EE5")
CRpCommonData;
#endif

EXTERN_C const CLSID CLSID_CRdColor;

#ifdef __cplusplus

class DECLSPEC_UUID("45CA8C23-0968-4fc9-8BD6-43C755DA2DDE")
CRdColor;
#endif

EXTERN_C const CLSID CLSID_CRdCubeTexture;

#ifdef __cplusplus

class DECLSPEC_UUID("AA8D3D8B-1B58-431E-AEBA-9177C9AD512D")
CRdCubeTexture;
#endif

EXTERN_C const CLSID CLSID_CRdStrEnum;

#ifdef __cplusplus

class DECLSPEC_UUID("4AB57E3C-7CC3-43fd-8BA2-82C214BC6324")
CRdStrEnum;
#endif

EXTERN_C const CLSID CLSID_CRdVolumeTexture;

#ifdef __cplusplus

class DECLSPEC_UUID("DBA89C3B-DEC0-4d32-8B24-F922FD6F2DC6")
CRdVolumeTexture;
#endif

EXTERN_C const CLSID CLSID_CRiCommonData;

#ifdef __cplusplus

class DECLSPEC_UUID("EF065C38-E8FA-4595-A929-E25FC8D25EBE")
CRiCommonData;
#endif

EXTERN_C const CLSID CLSID_CRiProject;

#ifdef __cplusplus

class DECLSPEC_UUID("B0C23A37-B3C8-4E89-8C10-73E7D3934617")
CRiProject;
#endif

EXTERN_C const CLSID CLSID_CRdBitmap;

#ifdef __cplusplus

class DECLSPEC_UUID("3CB85944-18CA-4a83-B7E3-BCCB14747950")
CRdBitmap;
#endif

EXTERN_C const CLSID CLSID_CRdObjArray;

#ifdef __cplusplus

class DECLSPEC_UUID("E3E157CD-ABB4-42fe-9188-10E6458BD3F8")
CRdObjArray;
#endif

EXTERN_C const CLSID CLSID_CRdIntArray;

#ifdef __cplusplus

class DECLSPEC_UUID("7BF39E98-6ACE-44f5-A1D9-E9E3FA709C83")
CRdIntArray;
#endif

EXTERN_C const CLSID CLSID_CRdNumArray;

#ifdef __cplusplus

class DECLSPEC_UUID("BB99D6CA-D4ED-40ce-A3B9-8BF4667DE878")
CRdNumArray;
#endif

EXTERN_C const CLSID CLSID_CRdBoolArray;

#ifdef __cplusplus

class DECLSPEC_UUID("45468DAF-E076-45e9-B56E-D754591F3B70")
CRdBoolArray;
#endif

EXTERN_C const CLSID CLSID_CRdStrArray;

#ifdef __cplusplus

class DECLSPEC_UUID("DA42A93C-B764-4637-B2BF-A42FFF9FA276")
CRdStrArray;
#endif
#endif /* __CommonData_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 

unsigned long             __RPC_USER  LPSAFEARRAY_UserSize(     unsigned long *, unsigned long            , LPSAFEARRAY * ); 
unsigned char * __RPC_USER  LPSAFEARRAY_UserMarshal(  unsigned long *, unsigned char *, LPSAFEARRAY * ); 
unsigned char * __RPC_USER  LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 
void                      __RPC_USER  LPSAFEARRAY_UserFree(     unsigned long *, LPSAFEARRAY * ); 

unsigned long             __RPC_USER  VARIANT_UserSize(     unsigned long *, unsigned long            , VARIANT * ); 
unsigned char * __RPC_USER  VARIANT_UserMarshal(  unsigned long *, unsigned char *, VARIANT * ); 
unsigned char * __RPC_USER  VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * ); 
void                      __RPC_USER  VARIANT_UserFree(     unsigned long *, VARIANT * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


