Android-cuttlefish cvd tool
util.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#pragma once
18
19#include <optional>
20
23#include "cuttlefish/host/libs/command_util/runner/run_cvd.pb.h"
26
27namespace cuttlefish {
28
29Result<RunnerExitCodes> ReadExitCode(SharedFD monitor_socket);
30
31Result<SharedFD> GetLauncherMonitorFromInstance(
32 const CuttlefishConfig::InstanceSpecific& instance_config,
33 int timeout_seconds);
34
35Result<SharedFD> GetLauncherMonitor(const CuttlefishConfig& config,
36 int instance_num, int timeout_seconds);
37
40 run_cvd::ExtendedLauncherAction extended_action;
41};
43 SharedFD monitor_socket);
44
45Result<void> WaitForRead(SharedFD monitor_socket, int timeout_seconds);
46
47// Writes the `action` request to `monitor_socket`, then waits for the response
48// and checks for errors.
50 std::optional<int> timeout_seconds);
51
52// Writes the `action` request to `monitor_socket`, then waits for the response
53// and checks for errors.
55 SharedFD monitor_socket,
56 const run_cvd::ExtendedLauncherAction& extended_action,
57 std::optional<int> timeout_seconds);
58
59} // namespace cuttlefish
Definition: shared_fd.h:124
Definition: alloc_driver.h:20
Result< RunnerExitCodes > ReadExitCode(SharedFD monitor_socket)
Definition: util.cc:77
LauncherAction
Definition: defs.h:53
Result< std::optional< LauncherActionInfo > > ReadLauncherActionFromFd(SharedFD monitor_socket)
Definition: util.cc:105
Result< void > RunLauncherAction(SharedFD monitor_socket, LauncherAction action, std::optional< int > timeout_seconds)
Definition: util.cc:161
Result< SharedFD > GetLauncherMonitorFromInstance(const CuttlefishConfig::InstanceSpecific &instance_config, const int timeout_seconds)
Definition: util.cc:84
Result< void > WaitForRead(SharedFD monitor_socket, const int timeout_seconds)
Definition: util.cc:145
tl::expected< T, StackTraceError > Result
Definition: result_type.h:30
Result< SharedFD > GetLauncherMonitor(const CuttlefishConfig &config, const int instance_num, int timeout_seconds)
Definition: util.cc:98
Definition: util.h:38
run_cvd::ExtendedLauncherAction extended_action
Definition: util.h:40
LauncherAction action
Definition: util.h:39