2
0

BsGLQueryManager.cpp 968 B

12345678910111213141516171819202122232425262728293031
  1. #include "BsGLQueryManager.h"
  2. #include "BsGLEventQuery.h"
  3. #include "BsGLTimerQuery.h"
  4. #include "BsGLOcclusionQuery.h"
  5. namespace BansheeEngine
  6. {
  7. EventQueryPtr GLQueryManager::createEventQuery() const
  8. {
  9. EventQueryPtr query = std::shared_ptr<GLEventQuery>(bs_new<GLEventQuery>(), &QueryManager::deleteEventQuery, StdAlloc<GLEventQuery>());
  10. mEventQueries.push_back(query.get());
  11. return query;
  12. }
  13. TimerQueryPtr GLQueryManager::createTimerQuery() const
  14. {
  15. TimerQueryPtr query = std::shared_ptr<GLTimerQuery>(bs_new<GLTimerQuery>(), &QueryManager::deleteTimerQuery, StdAlloc<GLTimerQuery>());
  16. mTimerQueries.push_back(query.get());
  17. return query;
  18. }
  19. OcclusionQueryPtr GLQueryManager::createOcclusionQuery(bool binary) const
  20. {
  21. OcclusionQueryPtr query = std::shared_ptr<GLOcclusionQuery>(bs_new<GLOcclusionQuery>(binary), &QueryManager::deleteOcclusionQuery, StdAlloc<GLOcclusionQuery>());
  22. mOcclusionQueries.push_back(query.get());
  23. return query;
  24. }
  25. }