/*Title:      mjbWorld
Copyright (c) 1998-2002 Martin John Baker

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

For information about the GNU General Public License see http://www.gnu.org/

If you would like to contact me, my e-mail is martinb@martinb.com and my
website is http://www.martinb.com/
*/

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

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


 /* File created by MIDL compiler version 6.00.0347 */
/* at Thu Jun 06 11:31:11 2002
 */
/* Compiler settings for mjbogl.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext
    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(  )


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 440
#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 __mjbogl_h__
#define __mjbogl_h__

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

/* Forward Declarations */ 

#ifndef __ImjboglCtl_FWD_DEFINED__
#define __ImjboglCtl_FWD_DEFINED__
typedef interface ImjboglCtl ImjboglCtl;
#endif 	/* __ImjboglCtl_FWD_DEFINED__ */


#ifndef ___ImjboglCtlEvents_FWD_DEFINED__
#define ___ImjboglCtlEvents_FWD_DEFINED__
typedef interface _ImjboglCtlEvents _ImjboglCtlEvents;
#endif 	/* ___ImjboglCtlEvents_FWD_DEFINED__ */


#ifndef __mjboglCtl_FWD_DEFINED__
#define __mjboglCtl_FWD_DEFINED__

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

#endif 	/* __mjboglCtl_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 

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

#ifndef __ImjboglCtl_INTERFACE_DEFINED__
#define __ImjboglCtl_INTERFACE_DEFINED__

/* interface ImjboglCtl */
/* [unique][helpstring][nonextensible][dual][uuid][object] */ 


EXTERN_C const IID IID_ImjboglCtl;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E9139E7A-DF0D-4C5F-84B9-809D6FE60AA5")
    ImjboglCtl : public IDispatch
    {
    public:
        virtual /* [id][requestedit][bindable][propget] */ HRESULT STDMETHODCALLTYPE get_HWND( 
            /* [retval][out] */ LONG_PTR *pHWND) = 0;
        
        virtual /* [id][requestedit][bindable][propput] */ HRESULT STDMETHODCALLTYPE put_Text( 
            /* [in] */ BSTR strText) = 0;
        
        virtual /* [id][requestedit][bindable][propget] */ HRESULT STDMETHODCALLTYPE get_Text( 
            /* [retval][out] */ BSTR *pstrText) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SceneGraphBegin( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SceneGraphEnd( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglBegin( 
            /* [in] */ USHORT i) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglEnd( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglColor3f( 
            /* [in] */ FLOAT r,
            /* [in] */ FLOAT g,
            /* [in] */ FLOAT b) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglNormal3f( 
            /* [in] */ FLOAT x,
            /* [in] */ FLOAT y,
            /* [in] */ FLOAT z) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglTexCoord2f( 
            /* [in] */ FLOAT u,
            /* [in] */ FLOAT v) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglVertex3d( 
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglPushMatrix( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglPopMatrix( void) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglTranslated( 
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglRotated( 
            /* [in] */ DOUBLE a,
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglScaled( 
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglEnable( 
            /* [in] */ USHORT i) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglDisable( 
            /* [in] */ USHORT i) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglEnableClientState( 
            /* [in] */ USHORT i) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglDisableClientState( 
            /* [in] */ USHORT i) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglColorMaterial( 
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglMaterialf( 
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2,
            /* [in] */ FLOAT f1,
            /* [in] */ FLOAT f2,
            /* [in] */ FLOAT f3,
            /* [in] */ FLOAT f4) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE mglLightf( 
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2,
            /* [in] */ FLOAT f1,
            /* [in] */ FLOAT f2,
            /* [in] */ FLOAT f3,
            /* [in] */ FLOAT f4) = 0;
        
        virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE SceneGraphInit( 
            /* [in] */ FLOAT a,
            /* [in] */ FLOAT n,
            /* [in] */ FLOAT f) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct ImjboglCtlVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            ImjboglCtl * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            ImjboglCtl * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            ImjboglCtl * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            ImjboglCtl * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            ImjboglCtl * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            ImjboglCtl * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            ImjboglCtl * 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);
        
        /* [id][requestedit][bindable][propget] */ HRESULT ( STDMETHODCALLTYPE *get_HWND )( 
            ImjboglCtl * This,
            /* [retval][out] */ LONG_PTR *pHWND);
        
        /* [id][requestedit][bindable][propput] */ HRESULT ( STDMETHODCALLTYPE *put_Text )( 
            ImjboglCtl * This,
            /* [in] */ BSTR strText);
        
        /* [id][requestedit][bindable][propget] */ HRESULT ( STDMETHODCALLTYPE *get_Text )( 
            ImjboglCtl * This,
            /* [retval][out] */ BSTR *pstrText);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SceneGraphBegin )( 
            ImjboglCtl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SceneGraphEnd )( 
            ImjboglCtl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglBegin )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglEnd )( 
            ImjboglCtl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglColor3f )( 
            ImjboglCtl * This,
            /* [in] */ FLOAT r,
            /* [in] */ FLOAT g,
            /* [in] */ FLOAT b);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglNormal3f )( 
            ImjboglCtl * This,
            /* [in] */ FLOAT x,
            /* [in] */ FLOAT y,
            /* [in] */ FLOAT z);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglTexCoord2f )( 
            ImjboglCtl * This,
            /* [in] */ FLOAT u,
            /* [in] */ FLOAT v);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglVertex3d )( 
            ImjboglCtl * This,
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglPushMatrix )( 
            ImjboglCtl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglPopMatrix )( 
            ImjboglCtl * This);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglTranslated )( 
            ImjboglCtl * This,
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglRotated )( 
            ImjboglCtl * This,
            /* [in] */ DOUBLE a,
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglScaled )( 
            ImjboglCtl * This,
            /* [in] */ DOUBLE x,
            /* [in] */ DOUBLE y,
            /* [in] */ DOUBLE z);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglEnable )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglDisable )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglEnableClientState )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglDisableClientState )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglColorMaterial )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglMaterialf )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2,
            /* [in] */ FLOAT f1,
            /* [in] */ FLOAT f2,
            /* [in] */ FLOAT f3,
            /* [in] */ FLOAT f4);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *mglLightf )( 
            ImjboglCtl * This,
            /* [in] */ USHORT i1,
            /* [in] */ USHORT i2,
            /* [in] */ FLOAT f1,
            /* [in] */ FLOAT f2,
            /* [in] */ FLOAT f3,
            /* [in] */ FLOAT f4);
        
        /* [helpstring][id] */ HRESULT ( STDMETHODCALLTYPE *SceneGraphInit )( 
            ImjboglCtl * This,
            /* [in] */ FLOAT a,
            /* [in] */ FLOAT n,
            /* [in] */ FLOAT f);
        
        END_INTERFACE
    } ImjboglCtlVtbl;

    interface ImjboglCtl
    {
        CONST_VTBL struct ImjboglCtlVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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


#define ImjboglCtl_get_HWND(This,pHWND)	\
    (This)->lpVtbl -> get_HWND(This,pHWND)

#define ImjboglCtl_put_Text(This,strText)	\
    (This)->lpVtbl -> put_Text(This,strText)

#define ImjboglCtl_get_Text(This,pstrText)	\
    (This)->lpVtbl -> get_Text(This,pstrText)

#define ImjboglCtl_SceneGraphBegin(This)	\
    (This)->lpVtbl -> SceneGraphBegin(This)

#define ImjboglCtl_SceneGraphEnd(This)	\
    (This)->lpVtbl -> SceneGraphEnd(This)

#define ImjboglCtl_mglBegin(This,i)	\
    (This)->lpVtbl -> mglBegin(This,i)

#define ImjboglCtl_mglEnd(This)	\
    (This)->lpVtbl -> mglEnd(This)

#define ImjboglCtl_mglColor3f(This,r,g,b)	\
    (This)->lpVtbl -> mglColor3f(This,r,g,b)

#define ImjboglCtl_mglNormal3f(This,x,y,z)	\
    (This)->lpVtbl -> mglNormal3f(This,x,y,z)

#define ImjboglCtl_mglTexCoord2f(This,u,v)	\
    (This)->lpVtbl -> mglTexCoord2f(This,u,v)

#define ImjboglCtl_mglVertex3d(This,x,y,z)	\
    (This)->lpVtbl -> mglVertex3d(This,x,y,z)

#define ImjboglCtl_mglPushMatrix(This)	\
    (This)->lpVtbl -> mglPushMatrix(This)

#define ImjboglCtl_mglPopMatrix(This)	\
    (This)->lpVtbl -> mglPopMatrix(This)

#define ImjboglCtl_mglTranslated(This,x,y,z)	\
    (This)->lpVtbl -> mglTranslated(This,x,y,z)

#define ImjboglCtl_mglRotated(This,a,x,y,z)	\
    (This)->lpVtbl -> mglRotated(This,a,x,y,z)

#define ImjboglCtl_mglScaled(This,x,y,z)	\
    (This)->lpVtbl -> mglScaled(This,x,y,z)

#define ImjboglCtl_mglEnable(This,i)	\
    (This)->lpVtbl -> mglEnable(This,i)

#define ImjboglCtl_mglDisable(This,i)	\
    (This)->lpVtbl -> mglDisable(This,i)

#define ImjboglCtl_mglEnableClientState(This,i)	\
    (This)->lpVtbl -> mglEnableClientState(This,i)

#define ImjboglCtl_mglDisableClientState(This,i)	\
    (This)->lpVtbl -> mglDisableClientState(This,i)

#define ImjboglCtl_mglColorMaterial(This,i1,i2)	\
    (This)->lpVtbl -> mglColorMaterial(This,i1,i2)

#define ImjboglCtl_mglMaterialf(This,i1,i2,f1,f2,f3,f4)	\
    (This)->lpVtbl -> mglMaterialf(This,i1,i2,f1,f2,f3,f4)

#define ImjboglCtl_mglLightf(This,i1,i2,f1,f2,f3,f4)	\
    (This)->lpVtbl -> mglLightf(This,i1,i2,f1,f2,f3,f4)

#define ImjboglCtl_SceneGraphInit(This,a,n,f)	\
    (This)->lpVtbl -> SceneGraphInit(This,a,n,f)

#endif /* COBJMACROS */


#endif 	/* C style interface */



/* [id][requestedit][bindable][propget] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_get_HWND_Proxy( 
    ImjboglCtl * This,
    /* [retval][out] */ LONG_PTR *pHWND);


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


/* [id][requestedit][bindable][propput] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_put_Text_Proxy( 
    ImjboglCtl * This,
    /* [in] */ BSTR strText);


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


/* [id][requestedit][bindable][propget] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_get_Text_Proxy( 
    ImjboglCtl * This,
    /* [retval][out] */ BSTR *pstrText);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_SceneGraphBegin_Proxy( 
    ImjboglCtl * This);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_SceneGraphEnd_Proxy( 
    ImjboglCtl * This);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglBegin_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglEnd_Proxy( 
    ImjboglCtl * This);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglColor3f_Proxy( 
    ImjboglCtl * This,
    /* [in] */ FLOAT r,
    /* [in] */ FLOAT g,
    /* [in] */ FLOAT b);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglNormal3f_Proxy( 
    ImjboglCtl * This,
    /* [in] */ FLOAT x,
    /* [in] */ FLOAT y,
    /* [in] */ FLOAT z);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglTexCoord2f_Proxy( 
    ImjboglCtl * This,
    /* [in] */ FLOAT u,
    /* [in] */ FLOAT v);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglVertex3d_Proxy( 
    ImjboglCtl * This,
    /* [in] */ DOUBLE x,
    /* [in] */ DOUBLE y,
    /* [in] */ DOUBLE z);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglPushMatrix_Proxy( 
    ImjboglCtl * This);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglPopMatrix_Proxy( 
    ImjboglCtl * This);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglTranslated_Proxy( 
    ImjboglCtl * This,
    /* [in] */ DOUBLE x,
    /* [in] */ DOUBLE y,
    /* [in] */ DOUBLE z);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglRotated_Proxy( 
    ImjboglCtl * This,
    /* [in] */ DOUBLE a,
    /* [in] */ DOUBLE x,
    /* [in] */ DOUBLE y,
    /* [in] */ DOUBLE z);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglScaled_Proxy( 
    ImjboglCtl * This,
    /* [in] */ DOUBLE x,
    /* [in] */ DOUBLE y,
    /* [in] */ DOUBLE z);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglEnable_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglDisable_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglEnableClientState_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglDisableClientState_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglColorMaterial_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i1,
    /* [in] */ USHORT i2);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglMaterialf_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i1,
    /* [in] */ USHORT i2,
    /* [in] */ FLOAT f1,
    /* [in] */ FLOAT f2,
    /* [in] */ FLOAT f3,
    /* [in] */ FLOAT f4);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_mglLightf_Proxy( 
    ImjboglCtl * This,
    /* [in] */ USHORT i1,
    /* [in] */ USHORT i2,
    /* [in] */ FLOAT f1,
    /* [in] */ FLOAT f2,
    /* [in] */ FLOAT f3,
    /* [in] */ FLOAT f4);


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


/* [helpstring][id] */ HRESULT STDMETHODCALLTYPE ImjboglCtl_SceneGraphInit_Proxy( 
    ImjboglCtl * This,
    /* [in] */ FLOAT a,
    /* [in] */ FLOAT n,
    /* [in] */ FLOAT f);


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



#endif 	/* __ImjboglCtl_INTERFACE_DEFINED__ */



#ifndef __mjboglLib_LIBRARY_DEFINED__
#define __mjboglLib_LIBRARY_DEFINED__

/* library mjboglLib */
/* [helpstring][version][uuid] */ 


EXTERN_C const IID LIBID_mjboglLib;

#ifndef ___ImjboglCtlEvents_DISPINTERFACE_DEFINED__
#define ___ImjboglCtlEvents_DISPINTERFACE_DEFINED__

/* dispinterface _ImjboglCtlEvents */
/* [helpstring][uuid] */ 


EXTERN_C const IID DIID__ImjboglCtlEvents;

#if defined(__cplusplus) && !defined(CINTERFACE)

    MIDL_INTERFACE("9AFD4EED-0A61-4EDC-8D1F-0980E9ED3A67")
    _ImjboglCtlEvents : public IDispatch
    {
    };
    
#else 	/* C style interface */

    typedef struct _ImjboglCtlEventsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            _ImjboglCtlEvents * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            _ImjboglCtlEvents * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            _ImjboglCtlEvents * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
            _ImjboglCtlEvents * This,
            /* [out] */ UINT *pctinfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
            _ImjboglCtlEvents * This,
            /* [in] */ UINT iTInfo,
            /* [in] */ LCID lcid,
            /* [out] */ ITypeInfo **ppTInfo);
        
        HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
            _ImjboglCtlEvents * This,
            /* [in] */ REFIID riid,
            /* [size_is][in] */ LPOLESTR *rgszNames,
            /* [in] */ UINT cNames,
            /* [in] */ LCID lcid,
            /* [size_is][out] */ DISPID *rgDispId);
        
        /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            _ImjboglCtlEvents * 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);
        
        END_INTERFACE
    } _ImjboglCtlEventsVtbl;

    interface _ImjboglCtlEvents
    {
        CONST_VTBL struct _ImjboglCtlEventsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */


#endif 	/* ___ImjboglCtlEvents_DISPINTERFACE_DEFINED__ */


EXTERN_C const CLSID CLSID_mjboglCtl;

#ifdef __cplusplus

class DECLSPEC_UUID("3A2F7C65-2951-4B11-B503-61C934DEBD2C")
mjboglCtl;
#endif
#endif /* __mjboglLib_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 * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


