mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
53 lines
1.6 KiB
C++
53 lines
1.6 KiB
C++
// Copyright 2014 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#include <cstdio>
|
|
|
|
#include "base/at_exit.h"
|
|
#include "base/command_line.h"
|
|
#include "base/message_loop/message_loop.h"
|
|
|
|
#include "third_party/khronos_glcts/framework/common/tcuApp.hpp"
|
|
#include "third_party/khronos_glcts/framework/common/tcuCommandLine.hpp"
|
|
#include "third_party/khronos_glcts/framework/common/tcuDefs.hpp"
|
|
#include "third_party/khronos_glcts/framework/common/tcuPlatform.hpp"
|
|
#include "third_party/khronos_glcts/framework/common/tcuResource.hpp"
|
|
#include "third_party/khronos_glcts/framework/common/tcuTestLog.hpp"
|
|
#include "third_party/khronos_glcts/framework/delibs/decpp/deUniquePtr.hpp"
|
|
|
|
// implemented in the native platform
|
|
tcu::Platform* createPlatform ();
|
|
|
|
void GTFMain(int argc, char* argv[]) {
|
|
setvbuf(stdout, DE_NULL, _IOLBF, 4*1024);
|
|
|
|
try {
|
|
tcu::CommandLine cmdLine(argc, argv);
|
|
tcu::DirArchive archive(cmdLine.getArchiveDir());
|
|
tcu::TestLog log(cmdLine.getLogFileName(), cmdLine.getLogFlags());
|
|
de::UniquePtr<tcu::Platform> platform(createPlatform());
|
|
de::UniquePtr<tcu::App> app(
|
|
new tcu::App(*platform, archive, log, cmdLine));
|
|
|
|
// Main loop.
|
|
for (;;) {
|
|
if (!app->iterate())
|
|
break;
|
|
}
|
|
}
|
|
catch (const std::exception& e) {
|
|
tcu::die("%s", e.what());
|
|
}
|
|
}
|
|
|
|
int main(int argc, char *argv[]) {
|
|
base::AtExitManager at_exit;
|
|
base::CommandLine::Init(argc, argv);
|
|
base::MessageLoopForUI message_loop;
|
|
|
|
GTFMain(argc, argv);
|
|
|
|
return 0;
|
|
}
|