Bomberman-OverlordEngine-x64 / OverlordEngine / Misc / TextureData.h
TextureData.h
Raw
#pragma once
class TextureData
{
public:
	TextureData(ID3D11Resource* pTexture, ID3D11ShaderResourceView* pTextureShaderResourceView, const std::wstring& assetSubPath = L"");
	~TextureData();

	TextureData(const TextureData& other) = delete;
	TextureData(TextureData&& other) noexcept = delete;
	TextureData& operator=(const TextureData& other) = delete;
	TextureData& operator=(TextureData&& other) noexcept = delete;

	ID3D11Resource* GetResource() const { return m_pTexture; }
	ID3D11ShaderResourceView* GetShaderResourceView() const { return m_pTextureShaderResourceView; }
	const XMFLOAT2& GetDimension() const { return m_Dimension; }
	const std::wstring& GetAssetSubPath() const { return m_AssetSubPath; }

	static void CreateGUID();
	static UUID GUID_TextureData;

private:
	ID3D11Resource *m_pTexture{};
	ID3D11ShaderResourceView *m_pTextureShaderResourceView{};
	XMFLOAT2 m_Dimension{};
	std::wstring m_AssetSubPath{};
};