26 #include "TextureUploader.h" 27 #include "ObjectBase.h" 28 #include "HashUtils.h" 29 #include "RefCntAutoPtr.h" 34 struct hash<
Diligent::UploadBufferDesc>
36 size_t operator()(
const Diligent::UploadBufferDesc &Desc)
const 38 return Diligent::ComputeHash(Desc.Width, Desc.Height, Desc.Depth, static_cast<Diligent::Int32>(Desc.Format));
45 class UploadBufferBase :
public ObjectBase<IUploadBuffer>
48 UploadBufferBase(IReferenceCounters *pRefCounters,
const UploadBufferDesc &Desc) :
49 ObjectBase<IUploadBuffer>(pRefCounters),
54 virtual void* GetDataPtr() override final {
return m_pData; }
55 virtual size_t GetRowStride() const override final{
return m_RowStride; }
56 virtual size_t GetDepthStride()const override final{
return m_DepthStride; }
57 virtual const UploadBufferDesc& GetDesc()const override final{
return m_Desc; }
60 const UploadBufferDesc m_Desc;
62 size_t m_RowStride = 0;
63 size_t m_DepthStride = 0;
66 class TextureUploaderBase :
public ObjectBase<ITextureUploader>
69 TextureUploaderBase(IReferenceCounters *pRefCounters, IRenderDevice *pDevice,
const TextureUploaderDesc Desc) :
70 ObjectBase<ITextureUploader>(pRefCounters),
75 RefCntAutoPtr<IRenderDevice> m_pDevice;
Graphics engine namespace.
Definition: AdaptiveFixedBlockAllocator.h:30
Definition: AdvancedMath.h:316