예제 #1
0
 public void AddRenderWindow(IDX11RenderWindow window)
 {
     if (!this.renderwindows.Contains(window))
     {
         this.renderwindows.Add(window);
     }
 }
예제 #2
0
 public void RemoveRenderWindow(IDX11RenderWindow window)
 {
     if (this.renderwindows.Contains(window))
     {
         this.renderwindows.Remove(window);
     }
 }
예제 #3
0
 public void AddRenderWindow(IDX11RenderWindow window)
 {
     if (!this.renderwindows.Contains(window))
     {
         this.renderwindows.Add(window);
     }
 }
예제 #4
0
 public DX11NodeInterfaces(IInternalPluginHost hoster)
 {
     this.hoster                = hoster;
     this.resourceProvider      = this.IsAssignable <IDX11ResourceProvider>() ? this.Instance <IDX11ResourceProvider>() : null;
     this.rendererProvider      = this.IsAssignable <IDX11RendererProvider>() ? this.Instance <IDX11RendererProvider>() : null;
     this.renderWindow          = this.IsAssignable <IDX11RenderWindow>() ? this.Instance <IDX11RenderWindow>() : null;
     this.multiResourceProvider = this.IsAssignable <IDX11MultiResourceProvider>() ? this.Instance <IDX11MultiResourceProvider>() : null;
     this.layerProvider         = this.IsAssignable <IDX11LayerProvider>() ? this.Instance <IDX11LayerProvider>() : null;
     this.dataRetriever         = this.IsAssignable <IDX11ResourceDataRetriever>() ? this.Instance <IDX11ResourceDataRetriever>() : null;
     this.updateBlocker         = this.IsAssignable <IDX11UpdateBlocker>() ? this.Instance <IDX11UpdateBlocker>() : null;
 }
예제 #5
0
        private List <DX11Node> FindRenderWindows()
        {
            List <DX11Node> renderers = new List <DX11Node>();

            foreach (DX11Node n in this.graph.RenderWindows)
            {
                IDX11RenderWindow window = n.Interfaces.RenderWindow;
                if (window.Enabled)
                {
                    renderers.Add(n);
                }
            }
            return(renderers);
        }
예제 #6
0
        private List <DX11Node> FindRenderWindows(DX11RenderContext device)
        {
            List <DX11Node> renderers = new List <DX11Node>();

            foreach (DX11Node n in this.graph.RenderWindows)
            {
                IDX11RenderWindow window = n.Interfaces.RenderWindow;
                if (window.RenderContext == device && window.IsVisible)
                {
                    renderers.Add(n);
                }
            }
            return(renderers);
        }
예제 #7
0
        private List <IDX11RenderWindow> FindRenderWindows()
        {
            List <IDX11RenderWindow> renderers = new List <IDX11RenderWindow>();

            foreach (DX11Node n in this.graph.RenderWindows)
            {
                IDX11RenderWindow window = n.Interfaces.RenderWindow;
                //We only care about the window in case it's visible

                if (window.IsVisible)
                {
                    renderers.Add(window);
                }
            }
            return(renderers);
        }
예제 #8
0
        private List <DX11Node> FindRenderWindows(DX11RenderContext device)
        {
            List <DX11Node> renderers = new List <DX11Node>();

            foreach (DX11Node n in this.graph.Nodes)
            {
                if (n.IsAssignable <IDX11RenderWindow>())
                {
                    IDX11RenderWindow window = n.Instance <IDX11RenderWindow>();
                    if (window.RenderContext == device && window.IsVisible)
                    {
                        renderers.Add(n);
                    }
                }
            }
            return(renderers);
        }
예제 #9
0
        private List <IDX11RenderWindow> FindRenderWindows()
        {
            List <IDX11RenderWindow> renderers = new List <IDX11RenderWindow>();

            foreach (DX11Node n in this.graph.Nodes)
            {
                if (n.IsAssignable <IDX11RenderWindow>())
                {
                    IDX11RenderWindow window = n.Instance <IDX11RenderWindow>();
                    //We only care about the window in case it's visible

                    if (window.IsVisible)
                    {
                        renderers.Add(window);
                    }
                }
            }
            return(renderers);
        }
예제 #10
0
        private DXGIScreen GetScreen(IDX11RenderWindow window)
        {
            Screen screen = Screen.FromHandle(window.WindowHandle);

            return(this.devicemanager.DisplayManager.FindAdapter(screen));
        }
예제 #11
0
 private DXGIScreen GetScreen(IDX11RenderWindow window)
 {
     Screen screen = Screen.FromHandle(window.WindowHandle);
     return this.devicemanager.DisplayManager.FindAdapter(screen);
 }
예제 #12
0
 public void RemoveRenderWindow(IDX11RenderWindow window)
 {
     if (this.renderwindows.Contains(window))
     {
         this.renderwindows.Remove(window);
     }
 }