BsD3D9QueryManager.cpp 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. //__________________________ Banshee Project - A modern game development toolkit _________________________________//
  2. //_____________________________________ www.banshee-project.com __________________________________________________//
  3. //________________________ Copyright (c) 2014 Marko Pintera. All rights reserved. ________________________________//
  4. #include "BsD3D9QueryManager.h"
  5. #include "BsD3D9EventQuery.h"
  6. #include "BsD3D9TimerQuery.h"
  7. #include "BsD3D9OcclusionQuery.h"
  8. namespace BansheeEngine
  9. {
  10. EventQueryPtr D3D9QueryManager::createEventQuery() const
  11. {
  12. EventQueryPtr query = std::shared_ptr<D3D9EventQuery>(bs_new<D3D9EventQuery>(), &QueryManager::deleteEventQuery, StdAlloc<GenAlloc>());
  13. mEventQueries.push_back(query.get());
  14. return query;
  15. }
  16. TimerQueryPtr D3D9QueryManager::createTimerQuery() const
  17. {
  18. TimerQueryPtr query = std::shared_ptr<D3D9TimerQuery>(bs_new<D3D9TimerQuery>(), &QueryManager::deleteTimerQuery, StdAlloc<GenAlloc>());
  19. mTimerQueries.push_back(query.get());
  20. return query;
  21. }
  22. OcclusionQueryPtr D3D9QueryManager::createOcclusionQuery(bool binary) const
  23. {
  24. OcclusionQueryPtr query = std::shared_ptr<D3D9OcclusionQuery>(bs_new<D3D9OcclusionQuery>(binary), &QueryManager::deleteOcclusionQuery, StdAlloc<GenAlloc>());
  25. mOcclusionQueries.push_back(query.get());
  26. return query;
  27. }
  28. }