Buffer.cpp 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #include <Tests/Buffer.h>
  9. namespace UnitTest
  10. {
  11. using namespace AZ;
  12. RHI::ResultCode BufferView::InitInternal(RHI::Device&, const RHI::DeviceResource&)
  13. {
  14. return RHI::ResultCode::Success;
  15. }
  16. RHI::ResultCode BufferView::InvalidateInternal()
  17. {
  18. return RHI::ResultCode::Success;
  19. }
  20. void BufferView::ShutdownInternal() {}
  21. bool Buffer::IsMapped() const
  22. {
  23. return m_isMapped;
  24. }
  25. void* Buffer::Map()
  26. {
  27. m_isMapped = true;
  28. return m_data.data();
  29. }
  30. void Buffer::Unmap()
  31. {
  32. m_isMapped = false;
  33. }
  34. const AZStd::vector<uint8_t>& Buffer::GetData() const
  35. {
  36. return m_data;
  37. }
  38. RHI::ResultCode BufferPool::InitInternal(RHI::Device&, const RHI::BufferPoolDescriptor&)
  39. {
  40. return RHI::ResultCode::Success;
  41. }
  42. void BufferPool::ShutdownInternal() {}
  43. RHI::ResultCode BufferPool::InitBufferInternal(RHI::DeviceBuffer& bufferBase, const RHI::BufferDescriptor& descriptor)
  44. {
  45. AZ_Assert(IsInitialized(), "Buffer Pool is not initialized");
  46. Buffer& buffer = static_cast<Buffer&>(bufferBase);
  47. buffer.m_data.resize(descriptor.m_byteCount);
  48. return RHI::ResultCode::Success;
  49. }
  50. void BufferPool::ShutdownResourceInternal(RHI::DeviceResource& resourceBase)
  51. {
  52. Buffer& buffer = static_cast<Buffer&>(resourceBase);
  53. buffer.m_data.clear();
  54. }
  55. RHI::ResultCode BufferPool::MapBufferInternal(const RHI::DeviceBufferMapRequest& request, RHI::DeviceBufferMapResponse& response)
  56. {
  57. Buffer& buffer = static_cast<Buffer&>(*request.m_buffer);
  58. response.m_data = static_cast<uint8_t*>(buffer.Map()) + request.m_byteOffset;
  59. return RHI::ResultCode::Success;
  60. }
  61. void BufferPool::UnmapBufferInternal(RHI::DeviceBuffer& bufferBase)
  62. {
  63. Buffer& buffer = static_cast<Buffer&>(bufferBase);
  64. buffer.Unmap();
  65. }
  66. RHI::ResultCode BufferPool::OrphanBufferInternal(RHI::DeviceBuffer&)
  67. {
  68. return RHI::ResultCode::Success;
  69. }
  70. AZ::RHI::ResultCode BufferPool::StreamBufferInternal([[maybe_unused]] const AZ::RHI::DeviceBufferStreamRequest& request)
  71. {
  72. return RHI::ResultCode::Success;
  73. }
  74. }