Edit

kc3-lang/angle/src/libANGLE/renderer/QueryImpl.h

Branch :

  • Show log

    Commit

  • Author : Shahbaz Youssefi
    Date : 2020-11-26 16:06:24
    Hash : 2c8bc1b7
    Message : Vulkan: Clean up render pass query code In preparation for support of primitives generated queries. Bug: angleproject:5404 Change-Id: Ic123aaff33f8903994ff8fcc9158954ac023ec13 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2562126 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>

  • src/libANGLE/renderer/QueryImpl.h
  • //
    // Copyright 2013 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.
    //
    
    // QueryImpl.h: Defines the abstract rx::QueryImpl class.
    
    #ifndef LIBANGLE_RENDERER_QUERYIMPL_H_
    #define LIBANGLE_RENDERER_QUERYIMPL_H_
    
    #include "common/PackedEnums.h"
    #include "common/angleutils.h"
    #include "libANGLE/Error.h"
    
    namespace gl
    {
    class Context;
    }  // namespace gl
    
    namespace rx
    {
    class QueryImpl : angle::NonCopyable
    {
      public:
        explicit QueryImpl(gl::QueryType type) : mType(type) {}
        virtual ~QueryImpl() {}
    
        virtual void onDestroy(const gl::Context *context);
    
        virtual angle::Result begin(const gl::Context *context)                              = 0;
        virtual angle::Result end(const gl::Context *context)                                = 0;
        virtual angle::Result queryCounter(const gl::Context *context)                       = 0;
        virtual angle::Result getResult(const gl::Context *context, GLint *params)           = 0;
        virtual angle::Result getResult(const gl::Context *context, GLuint *params)          = 0;
        virtual angle::Result getResult(const gl::Context *context, GLint64 *params)         = 0;
        virtual angle::Result getResult(const gl::Context *context, GLuint64 *params)        = 0;
        virtual angle::Result isResultAvailable(const gl::Context *context, bool *available) = 0;
    
        gl::QueryType getType() const { return mType; }
    
      protected:
        gl::QueryType mType;
    };
    }  // namespace rx
    
    #endif  // LIBANGLE_RENDERER_QUERYIMPL_H_