Android-cuttlefish cvd tool
Classes | Namespaces | Macros | Enumerations | Functions | Variables
graphics_flags.cc File Reference
#include "cuttlefish/host/commands/assemble_cvd/graphics_flags.h"
#include <ostream>
#include <android-base/file.h>
#include <android-base/strings.h>
#include <fmt/format.h>
#include <google/protobuf/text_format.h>
#include "cuttlefish/common/libs/utils/contains.h"
#include "cuttlefish/common/libs/utils/files.h"
#include "cuttlefish/common/libs/utils/subprocess.h"
#include "cuttlefish/common/libs/utils/subprocess_managed_stdio.h"
#include "cuttlefish/host/graphics_detector/graphics_detector.pb.h"
#include "cuttlefish/host/libs/config/config_constants.h"
#include "cuttlefish/host/libs/config/cuttlefish_config.h"
#include "cuttlefish/host/libs/config/guest_hwui_renderer.h"
#include "cuttlefish/host/libs/config/guest_renderer_preload.h"
#include "cuttlefish/host/libs/config/vmm_mode.h"
Include dependency graph for graphics_flags.cc:

Classes

struct  cuttlefish::anonymous_namespace{graphics_flags.cc}::AngleFeatures
 
struct  cuttlefish::anonymous_namespace{graphics_flags.cc}::AngleFeatureOverrides
 
struct  cuttlefish::anonymous_namespace{graphics_flags.cc}::VhostUserGpuHostRendererFeatures
 

Namespaces

namespace  cuttlefish
 
namespace  cuttlefish::anonymous_namespace{graphics_flags.cc}
 

Macros

#define CF_UNUSED_ON_MACOS
 

Enumerations

enum class  cuttlefish::anonymous_namespace{graphics_flags.cc}::RenderingMode {
  cuttlefish::anonymous_namespace{graphics_flags.cc}::kNone , cuttlefish::anonymous_namespace{graphics_flags.cc}::kCustom , cuttlefish::anonymous_namespace{graphics_flags.cc}::kGuestSwiftShader , cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstream ,
  cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamGuestAngle , cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamGuestAngleHostSwiftshader , cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamGuestAngleHostLavapipe , cuttlefish::anonymous_namespace{graphics_flags.cc}::kVirglRenderer
}
 

Functions

CF_UNUSED_ON_MACOS Result< RenderingMode > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetRenderingMode (const std::string &mode)
 
std::ostream & cuttlefish::anonymous_namespace{graphics_flags.cc}::operator<< (std::ostream &stream, const AngleFeatures &features)
 
Result< AngleFeatures > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededAngleFeaturesBasedOnQuirks (const RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::ToLower (const std::string &v)
 
bool cuttlefish::anonymous_namespace{graphics_flags.cc}::IsLikelySoftwareRenderer (const std::string &renderer)
 
CF_UNUSED_ON_MACOS bool cuttlefish::anonymous_namespace{graphics_flags.cc}::ShouldEnableAcceleratedRendering (const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< AngleFeatureOverrides > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededAngleFeatures (const RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< VhostUserGpuHostRendererFeatures > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededVhostUserGpuHostRendererFeatures (RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
Result< std::string > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGpuMode (const std::string &gpu_mode_arg, VmmMode vmm, const GuestConfig &guest_config, const gfxstream::proto::GraphicsAvailability &graphics_availability)
 
Result< bool > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGpuVhostUserMode (const std::string &gpu_mode, const std::string &gpu_vhost_user_mode_arg, VmmMode vmm)
 
Result< GuestRendererPreload > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGuestRendererPreload (const std::string &gpu_mode, const GuestHwuiRenderer guest_hwui_renderer, const std::string &guest_renderer_preload_arg)
 
Result< std::string > cuttlefish::anonymous_namespace{graphics_flags.cc}::GraphicsDetectorBinaryPath ()
 
bool cuttlefish::anonymous_namespace{graphics_flags.cc}::IsAmdGpu (const gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< std::unordered_map< std::string, bool > > cuttlefish::anonymous_namespace{graphics_flags.cc}::ParseGfxstreamRendererFlag (const std::string &gpu_renderer_features_arg)
 
CF_UNUSED_ON_MACOS std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::GetGfxstreamRendererFeaturesString (const std::unordered_map< std::string, bool > &features)
 
CF_UNUSED_ON_MACOS Result< void > cuttlefish::anonymous_namespace{graphics_flags.cc}::SetGfxstreamFlags (const std::string &gpu_mode, const std::string &gpu_renderer_features_arg, const GuestConfig &guest_config, const gfxstream::proto::GraphicsAvailability &availability, CuttlefishConfig::MutableInstanceSpecific &instance)
 
gfxstream::proto::GraphicsAvailability cuttlefish::GetGraphicsAvailabilityWithSubprocessCheck ()
 
Result< std::string > cuttlefish::ConfigureGpuSettings (const gfxstream::proto::GraphicsAvailability &graphics_availability, const std::string &gpu_mode_arg, const std::string &gpu_vhost_user_mode_arg, const std::string &gpu_renderer_features_arg, std::string &gpu_context_types_arg, const std::string &guest_hwui_renderer_arg, const std::string &guest_renderer_preload_arg, VmmMode vmm, const GuestConfig &guest_config, CuttlefishConfig::MutableInstanceSpecific &instance)
 

Variables

const std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamTransportAsg = "virtio-gpu-asg"
 
const std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamTransportPipe = "virtio-gpu-pipe"
 
static std::unordered_set< std::string > cuttlefish::anonymous_namespace{graphics_flags.cc}::kSupportedGpuContexts
 

Macro Definition Documentation

◆ CF_UNUSED_ON_MACOS

#define CF_UNUSED_ON_MACOS