#include "common/debug.h"
#include "common/system_utils.h"
#include "platform/PlatformMethods.h"
#include "traces_export.h"
#include "util/EGLPlatformParameters.h"
#include "util/EGLWindow.h"
#include "util/OSWindow.h"
#include "util/shader_utils.h"
#include <stdint.h>
#include <string.h>
#include <fstream>
#include <functional>
#include <iostream>
#include <list>
#include <memory>
#include <ostream>
#include <string>
#include <utility>
#include "frame_capture_test_utils.h"
namespace
{
EGLWindow *gEGLWindow = …;
constexpr char kResultTag[] = …;
constexpr int kInitializationFailure = …;
constexpr int kSerializationFailure = …;
constexpr int kExitSuccess = …;
constexpr size_t kTooShortStateLength = …;
[[maybe_unused]] bool IsGLExtensionEnabled(const std::string &extName)
{ … }
[[maybe_unused]] void KHRONOS_APIENTRY DebugCallback(GLenum source,
GLenum type,
GLuint id,
GLenum severity,
GLsizei length,
const GLchar *message,
const void *userParam)
{ … }
[[maybe_unused]] void LogError(angle::PlatformMethods *platform, const char *errorMessage)
{ … }
[[maybe_unused]] void LogWarning(angle::PlatformMethods *platform, const char *warningMessage)
{ … }
[[maybe_unused]] void LogInfo(angle::PlatformMethods *platform, const char *infoMessage)
{ … }
bool CompareSerializedContexts(const char *capturedSerializedContextState,
const char *replaySerializedContextState)
{ … }
EGLImage KHRONOS_APIENTRY EGLCreateImage(EGLDisplay display,
EGLContext context,
EGLenum target,
EGLClientBuffer buffer,
const EGLAttrib *attrib_list)
{ … }
EGLImage KHRONOS_APIENTRY EGLCreateImageKHR(EGLDisplay display,
EGLContext context,
EGLenum target,
EGLClientBuffer buffer,
const EGLint *attrib_list)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLDestroyImage(EGLDisplay display, EGLImage image)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLDestroyImageKHR(EGLDisplay display, EGLImage image)
{ … }
EGLSurface KHRONOS_APIENTRY EGLCreatePbufferSurface(EGLDisplay display,
EGLConfig *config,
const EGLint *attrib_list)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLDestroySurface(EGLDisplay display, EGLSurface surface)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLBindTexImage(EGLDisplay display, EGLSurface surface, EGLint buffer)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLReleaseTexImage(EGLDisplay display,
EGLSurface surface,
EGLint buffer)
{ … }
EGLBoolean KHRONOS_APIENTRY EGLMakeCurrent(EGLDisplay display,
EGLSurface draw,
EGLSurface read,
EGLContext context)
{ … }
}
GenericProc KHRONOS_APIENTRY TraceLoadProc(const char *procName)
{ … }
class CaptureReplayTests
{ … };
int main(int argc, char **argv)
{ … }