|  | // Copyright 2015 The Fuchsia 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 <lib/async-loop/cpp/loop.h> | 
|  | #include <lib/async-loop/default.h> | 
|  | #include <lib/trace-provider/provider.h> | 
|  |  | 
|  | #include "src/lib/fxl/command_line.h" | 
|  | #include "src/lib/ui/base_view/view_provider_component.h" | 
|  | #include "src/ui/examples/tile/tile_view.h" | 
|  |  | 
|  | int main(int argc, const char** argv) { | 
|  | async::Loop loop(&kAsyncLoopConfigAttachToCurrentThread); | 
|  | trace::TraceProviderWithFdio trace_provider(loop.dispatcher()); | 
|  |  | 
|  | auto command_line = fxl::CommandLineFromArgcArgv(argc, argv); | 
|  | examples::TileParams tile_params; | 
|  | if (!tile_params.Parse(command_line)) { | 
|  | FX_LOGS(ERROR) << "Missing or invalid URL parameters.  See README."; | 
|  | return 1; | 
|  | } | 
|  |  | 
|  | scenic::ViewProviderComponent component( | 
|  | [params = std::move(tile_params)](scenic::ViewContext context) { | 
|  | return std::make_unique<examples::TileView>(std::move(context), std::move(params)); | 
|  | }, | 
|  | &loop); | 
|  |  | 
|  | loop.Run(); | 
|  | return 0; | 
|  | } |