chromium/third_party/angle/src/libANGLE/renderer/gl/QueryGL.cpp

//
// Copyright 2015 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//

// QueryGL.cpp: Implements the class methods for QueryGL.

#include "libANGLE/renderer/gl/QueryGL.h"

#include "common/debug.h"
#include "libANGLE/Context.h"
#include "libANGLE/renderer/gl/ContextGL.h"
#include "libANGLE/renderer/gl/FunctionsGL.h"
#include "libANGLE/renderer/gl/StateManagerGL.h"
#include "libANGLE/renderer/gl/renderergl_utils.h"

namespace
{

GLuint64 MergeQueryResults(gl::QueryType type, GLuint64 currentResult, GLuint64 newResult)
{}

// Some drivers tend to hang when flushing pending queries.  Wait until this number of queries have
// added up before checking if results are ready.
constexpr uint32_t kPauseResumeFlushThreshold =;
}  // anonymous namespace

namespace rx
{

QueryGL::QueryGL(gl::QueryType type) :{}

QueryGL::~QueryGL() {}

StandardQueryGL::StandardQueryGL(gl::QueryType type,
                                 const FunctionsGL *functions,
                                 StateManagerGL *stateManager)
    :{}

StandardQueryGL::~StandardQueryGL()
{}

void StandardQueryGL::clearInternalQueries()
{}

angle::Result StandardQueryGL::begin(const gl::Context *context)
{}

angle::Result StandardQueryGL::end(const gl::Context *context)
{}

angle::Result StandardQueryGL::queryCounter(const gl::Context *context)
{}

template <typename T>
angle::Result StandardQueryGL::getResultBase(const gl::Context *context, T *params)
{}

angle::Result StandardQueryGL::getResult(const gl::Context *context, GLint *params)
{}

angle::Result StandardQueryGL::getResult(const gl::Context *context, GLuint *params)
{}

angle::Result StandardQueryGL::getResult(const gl::Context *context, GLint64 *params)
{}

angle::Result StandardQueryGL::getResult(const gl::Context *context, GLuint64 *params)
{}

angle::Result StandardQueryGL::isResultAvailable(const gl::Context *context, bool *available)
{}

angle::Result StandardQueryGL::pause(const gl::Context *context)
{}

angle::Result StandardQueryGL::resume(const gl::Context *context)
{}

angle::Result StandardQueryGL::flush(const gl::Context *context, bool force)
{}

class SyncProviderGL
{};

class SyncProviderGLSync : public SyncProviderGL
{};

class SyncProviderGLQuery : public SyncProviderGL
{};

SyncQueryGL::SyncQueryGL(gl::QueryType type, const FunctionsGL *functions)
    :{}

SyncQueryGL::~SyncQueryGL() {}

bool SyncQueryGL::IsSupported(const FunctionsGL *functions)
{}

angle::Result SyncQueryGL::begin(const gl::Context *context)
{}

angle::Result SyncQueryGL::end(const gl::Context *context)
{}

angle::Result SyncQueryGL::queryCounter(const gl::Context *context)
{}

angle::Result SyncQueryGL::getResult(const gl::Context *context, GLint *params)
{}

angle::Result SyncQueryGL::getResult(const gl::Context *context, GLuint *params)
{}

angle::Result SyncQueryGL::getResult(const gl::Context *context, GLint64 *params)
{}

angle::Result SyncQueryGL::getResult(const gl::Context *context, GLuint64 *params)
{}

angle::Result SyncQueryGL::isResultAvailable(const gl::Context *context, bool *available)
{}

angle::Result SyncQueryGL::pause(const gl::Context *context)
{}

angle::Result SyncQueryGL::resume(const gl::Context *context)
{}

angle::Result SyncQueryGL::flush(const gl::Context *context, bool force)
{}

template <typename T>
angle::Result SyncQueryGL::getResultBase(const gl::Context *context, T *params)
{}
}  // namespace rx