BsGpuBufferView.cpp 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #include "BsGpuBufferView.h"
  4. namespace BansheeEngine
  5. {
  6. size_t GpuBufferView::HashFunction::operator()(const GPU_BUFFER_DESC& key) const
  7. {
  8. size_t seed = 0;
  9. hash_combine(seed, key.elementWidth);
  10. hash_combine(seed, key.firstElement);
  11. hash_combine(seed, key.numElements);
  12. hash_combine(seed, key.useCounter);
  13. hash_combine(seed, key.usage);
  14. hash_combine(seed, key.format);
  15. return seed;
  16. }
  17. bool GpuBufferView::EqualFunction::operator()
  18. (const GPU_BUFFER_DESC& a, const GPU_BUFFER_DESC& b) const
  19. {
  20. return a.elementWidth == b.elementWidth && a.firstElement == b.firstElement && a.numElements == b.numElements
  21. && a.useCounter == b.useCounter && a.usage == b.usage && a.format == b.format;
  22. }
  23. GpuBufferView::GpuBufferView()
  24. {
  25. }
  26. GpuBufferView::~GpuBufferView()
  27. {
  28. }
  29. void GpuBufferView::initialize(const SPtr<GpuBufferCore>& buffer, GPU_BUFFER_DESC& desc)
  30. {
  31. mBuffer = buffer;
  32. mDesc = desc;
  33. }
  34. }