protected IntPtr EarthView_World_Spatial_Atlas_ISceneFactory_createScene_IScene_CDataStream_Function(IntPtr stream)
                    {
                        EarthView.World.Core.DataStream csobj_stream = new EarthView.World.Core.DataStream(CreatedWhenConstruct.CWC_NotToCreate);
                        csobj_stream.BindNativeObject(stream, "CDataStream");
                        csobj_stream.Delegate = true;
                        IClassFactory csobj_streamClassFactory = GlobalClassFactoryMap.Get(csobj_stream.GetCppInstanceTypeName());

                        if (csobj_streamClassFactory != null)
                        {
                            csobj_stream.Delegate = true;
                            csobj_stream          = csobj_streamClassFactory.Create() as EarthView.World.Core.DataStream;
                            csobj_stream.BindNativeObject(stream, "CDataStream");
                            csobj_stream.Delegate = true;
                        }

                        EarthView.World.Spatial.Atlas.Iscene csret = CreateScene(csobj_stream);

                        if (!object.Equals(csret, null))
                        {
                            csret.Delegate = true;
                            return(csret.NativeObject);
                        }
                        else
                        {
                            return(IntPtr.Zero);
                        }
                    }
                    protected void EarthView_World_Spatial_Atlas_ISceneFactory_destroyScene_void_IScene_Function(IntPtr pScene)
                    {
                        EarthView.World.Spatial.Atlas.Iscene csobj_pScene = new EarthView.World.Spatial.Atlas.Iscene(CreatedWhenConstruct.CWC_NotToCreate);
                        csobj_pScene.BindNativeObject(pScene, "IScene");
                        csobj_pScene.Delegate = true;
                        IClassFactory csobj_pSceneClassFactory = GlobalClassFactoryMap.Get(csobj_pScene.GetCppInstanceTypeName());

                        if (csobj_pSceneClassFactory != null)
                        {
                            csobj_pScene.Delegate = true;
                            csobj_pScene          = csobj_pSceneClassFactory.Create() as EarthView.World.Spatial.Atlas.Iscene;
                            csobj_pScene.BindNativeObject(pScene, "IScene");
                            csobj_pScene.Delegate = true;
                        }

                        DestroyScene(csobj_pScene);
                    }
                    protected IntPtr EarthView_World_Spatial_Atlas_ISceneFactory_newScene_IScene_EVString_Function(ref IntPtr strSceneName)
                    {
                        string strstrSceneName = Marshal.PtrToStringAnsi(strSceneName);

                        ClassFactory.FreeString(ref strSceneName);

                        EarthView.World.Spatial.Atlas.Iscene csret = NewScene(strstrSceneName);

                        if (!object.Equals(csret, null))
                        {
                            csret.Delegate = true;
                            return(csret.NativeObject);
                        }
                        else
                        {
                            return(IntPtr.Zero);
                        }
                    }
                    public EarthView.World.Spatial.Atlas.Iscene GetScene()
                    {
                        IntPtr __ptr = EarthView_World_Spatial_SystemUI_CSceneLayerActiveEvent_getScene_IScene(this.NativeObject);

                        if (__ptr == IntPtr.Zero)
                        {
                            return(null);
                        }
                        EarthView.World.Spatial.Atlas.Iscene csObj = new EarthView.World.Spatial.Atlas.Iscene(CreatedWhenConstruct.CWC_NotToCreate);
                        csObj.BindNativeObject(__ptr, "IScene");
                        csObj.Delegate = true;
                        IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName());

                        if (csObjClassFactory != null)
                        {
                            csObj.Delegate = true;
                            csObj          = csObjClassFactory.Create() as EarthView.World.Spatial.Atlas.Iscene;
                            csObj.BindNativeObject(__ptr, "IScene");
                            csObj.Delegate = true;
                        }
                        return(csObj);
                    }
                    public virtual EarthView.World.Spatial.Atlas.Iscene NewScene_NoVirtual(string strSceneName)
                    {
                        IntPtr __ptr = EarthView_World_Spatial_Atlas_ISceneFactory_newScene_IScene_EVString_NoVirtual(this.NativeObject, strSceneName);

                        if (__ptr == IntPtr.Zero)
                        {
                            return(null);
                        }
                        EarthView.World.Spatial.Atlas.Iscene csObj = new EarthView.World.Spatial.Atlas.Iscene(CreatedWhenConstruct.CWC_NotToCreate);
                        csObj.BindNativeObject(__ptr, "IScene");
                        csObj.Delegate = true;
                        IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName());

                        if (csObjClassFactory != null)
                        {
                            csObj.Delegate = true;
                            csObj          = csObjClassFactory.Create() as EarthView.World.Spatial.Atlas.Iscene;
                            csObj.BindNativeObject(__ptr, "IScene");
                            csObj.Delegate = true;
                        }
                        return(csObj);
                    }
                    public virtual EarthView.World.Spatial.Atlas.Iscene CreateScene(EarthView.World.Core.DataStream stream)
                    {
                        IntPtr __ptr = EarthView_World_Spatial_Atlas_ISceneFactory_createScene_IScene_CDataStream(this.NativeObject, object.Equals(stream, null) ? IntPtr.Zero : stream.NativeObject);

                        if (__ptr == IntPtr.Zero)
                        {
                            return(null);
                        }
                        EarthView.World.Spatial.Atlas.Iscene csObj = new EarthView.World.Spatial.Atlas.Iscene(CreatedWhenConstruct.CWC_NotToCreate);
                        csObj.BindNativeObject(__ptr, "IScene");
                        csObj.Delegate = true;
                        IClassFactory csObjClassFactory = GlobalClassFactoryMap.Get(csObj.GetCppInstanceTypeName());

                        if (csObjClassFactory != null)
                        {
                            csObj.Delegate = true;
                            csObj          = csObjClassFactory.Create() as EarthView.World.Spatial.Atlas.Iscene;
                            csObj.BindNativeObject(__ptr, "IScene");
                            csObj.Delegate = true;
                        }
                        return(csObj);
                    }
 public void SetScene(EarthView.World.Spatial.Atlas.Iscene ref_scene)
 {
     EarthView_World_Spatial_SystemUI_CSceneLayerActiveEvent_setScene_void_IScene(this.NativeObject, object.Equals(ref_scene, null) ? IntPtr.Zero : ref_scene.NativeObject);
 }
 public virtual void DestroyScene(EarthView.World.Spatial.Atlas.Iscene pScene)
 {
     EarthView_World_Spatial_Atlas_ISceneFactory_destroyScene_void_IScene(this.NativeObject, object.Equals(pScene, null) ? IntPtr.Zero : pScene.NativeObject);
 }