#include "chrome/enterprise_companion/enterprise_companion.h"
#include <cstdint>
#include <memory>
#include <optional>
#include "base/at_exit.h"
#include "base/check.h"
#include "base/command_line.h"
#include "base/files/file_path.h"
#include "base/files/file_util.h"
#include "base/logging.h"
#include "base/system/sys_info.h"
#include "base/task/single_thread_task_executor.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/threading/platform_thread.h"
#include "build/build_config.h"
#include "chrome/enterprise_companion/app/app.h"
#include "chrome/enterprise_companion/crash_client.h"
#include "chrome/enterprise_companion/enterprise_companion_status.h"
#include "chrome/enterprise_companion/installer_paths.h"
#include "chrome/enterprise_companion/ipc_support.h"
namespace enterprise_companion {
const char kLoggingModuleSwitch[] = …;
const char kCrashHandlerSwitch[] = …;
const char kCrashMeSwitch[] = …;
const char kShutdownSwitch[] = …;
const char kFetchPoliciesSwitch[] = …;
const char kInstallSwitch[] = …;
#if BUILDFLAG(IS_MAC)
const char kNetWorkerSwitch[] = "net-worker";
#endif
namespace {
constexpr char kLoggingModuleSwitchValue[] = …;
constexpr int64_t kLogRotateAtSize = …;
void InitLogging() { … }
void InitThreadPool() { … }
std::unique_ptr<App> CreateAppForCommandLine(base::CommandLine* command_line) { … }
}
int EnterpriseCompanionMain(int argc, const char* const* argv) { … }
std::optional<base::FilePath> GetLogFilePath() { … }
}