#include "gpu/command_buffer/client/query_tracker.h"
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
#include <GLES2/gl2extchromium.h>
#include <limits.h>
#include <stddef.h>
#include <stdint.h>
#include <vector>
#include "base/atomicops.h"
#include "base/containers/circular_deque.h"
#include "base/numerics/safe_conversions.h"
#include "gpu/command_buffer/client/gles2_cmd_helper.h"
#include "gpu/command_buffer/client/gles2_implementation.h"
#include "gpu/command_buffer/client/mapped_memory.h"
#include "gpu/command_buffer/common/time.h"
namespace gpu {
namespace gles2 {
QuerySyncManager::Bucket::Bucket(QuerySync* sync_mem,
int32_t shm_id,
unsigned int shm_offset)
: … { … }
QuerySyncManager::Bucket::~Bucket() = default;
void QuerySyncManager::Bucket::FreePendingSyncs() { … }
QuerySyncManager::QuerySyncManager(MappedMemoryManager* manager)
: … { … }
QuerySyncManager::~QuerySyncManager() { … }
bool QuerySyncManager::Alloc(QuerySyncManager::QueryInfo* info) { … }
void QuerySyncManager::Free(const QuerySyncManager::QueryInfo& info) { … }
void QuerySyncManager::Shrink(CommandBufferHelper* helper) { … }
QueryTracker::Query::Query(GLuint id,
GLenum target,
const QuerySyncManager::QueryInfo& info)
: … { … }
QueryTracker::Query::~Query() { … }
void QueryTracker::Query::Begin(QueryTrackerClient* client) { … }
void QueryTracker::Query::End(QueryTrackerClient* client) { … }
void QueryTracker::Query::QueryCounter(QueryTrackerClient* client) { … }
bool QueryTracker::Query::CheckResultsAvailable(CommandBufferHelper* helper,
bool flush_if_pending) { … }
uint64_t QueryTracker::Query::GetResult() const { … }
void QueryTracker::Query::SetCompletedCallback(base::OnceClosure callback) { … }
QueryTracker::QueryTracker(MappedMemoryManager* manager)
: … { … }
QueryTracker::~QueryTracker() { … }
QueryTracker::Query* QueryTracker::CreateQuery(GLuint id, GLenum target) { … }
QueryTracker::Query* QueryTracker::GetQuery(GLuint client_id) { … }
QueryTracker::Query* QueryTracker::GetCurrentQuery(GLenum target) { … }
void QueryTracker::RemoveQuery(GLuint client_id) { … }
void QueryTracker::Shrink(CommandBufferHelper* helper) { … }
bool QueryTracker::BeginQuery(GLuint id,
GLenum target,
QueryTrackerClient* client) { … }
bool QueryTracker::EndQuery(GLenum target, QueryTrackerClient* client) { … }
bool QueryTracker::QueryCounter(GLuint id,
GLenum target,
QueryTrackerClient* client) { … }
bool QueryTracker::SetDisjointSync(QueryTrackerClient* client) { … }
bool QueryTracker::CheckAndResetDisjoint() { … }
}
}