light/Engine/src/Platform/GraphicsAPI/DirectX/dxSharedContext.h

31 lines
1.4 KiB
C
Raw Normal View History

2021-06-02 09:07:45 +04:30
#pragma once
2021-07-29 17:12:13 +04:30
#include "Base/Base.h"
#include "Graphics/SharedContext.h"
2021-06-02 09:07:45 +04:30
#include <d3d11.h>
#include <wrl.h>
namespace Light {
class dxSharedContext : public SharedContext
2021-06-02 09:07:45 +04:30
{
private:
Microsoft::WRL::ComPtr<ID3D11Device > m_Device = nullptr;
Microsoft::WRL::ComPtr<ID3D11DeviceContext > m_DeviceContext = nullptr;
Microsoft::WRL::ComPtr<IDXGISwapChain > m_SwapChain = nullptr;
Microsoft::WRL::ComPtr<ID3D11RenderTargetView> m_RenderTargetView = nullptr;
public:
inline Microsoft::WRL::ComPtr<ID3D11Device > GetDevice () { return m_Device; }
inline Microsoft::WRL::ComPtr<ID3D11DeviceContext > GetDeviceContext () { return m_DeviceContext; }
inline Microsoft::WRL::ComPtr<IDXGISwapChain > GetSwapChain () { return m_SwapChain; }
inline Microsoft::WRL::ComPtr<ID3D11RenderTargetView> GetRenderTargetView() { return m_RenderTargetView; }
inline Microsoft::WRL::ComPtr<ID3D11Device >& GetDeviceRef () { return m_Device; }
inline Microsoft::WRL::ComPtr<ID3D11DeviceContext >& GetDeviceContextRef () { return m_DeviceContext; }
inline Microsoft::WRL::ComPtr<IDXGISwapChain >& GetSwapChainRef () { return m_SwapChain; }
inline Microsoft::WRL::ComPtr<ID3D11RenderTargetView>& GetRenderTargetViewRef() { return m_RenderTargetView; }
2021-06-02 09:07:45 +04:30
};
}