• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #pragma once
2 
3 #include <fruit/fruit.h>
4 #include <cstdint>
5 #include <optional>
6 #include <string>
7 #include <vector>
8 
9 #include "common/libs/utils/environment.h"
10 #include "common/libs/utils/result.h"
11 #include "host/libs/config/cuttlefish_config.h"
12 #include "host/libs/config/fetcher_config.h"
13 
14 namespace cuttlefish {
15 
16 struct KernelConfig {
17   Arch target_arch;
18   bool bootconfig_supported;
19 };
20 
21 Result<KernelConfig> GetKernelConfigAndSetDefaults();
22 // Must be called after ParseCommandLineFlags.
23 CuttlefishConfig InitializeCuttlefishConfiguration(const std::string& root_dir,
24                                                    int modem_simulator_count,
25                                                    KernelConfig kernel_config,
26                                                    fruit::Injector<>& injector);
27 
28 std::string GetConfigFilePath(const CuttlefishConfig& config);
29 std::string GetCuttlefishEnvPath();
30 
31 } // namespace cuttlefish
32