Android-cuttlefish cvd tool
Classes | Enumerations | Functions | Variables
cuttlefish::anonymous_namespace{graphics_flags.cc} Namespace Reference

Classes

struct  AngleFeatureOverrides
 
struct  AngleFeatures
 
struct  VhostUserGpuHostRendererFeatures
 

Enumerations

enum class  RenderingMode {
  kNone , kCustom , kGuestSwiftShader , kGfxstream ,
  kGfxstreamGuestAngle , kGfxstreamGuestAngleHostSwiftshader , kGfxstreamGuestAngleHostLavapipe , kVirglRenderer
}
 

Functions

CF_UNUSED_ON_MACOS Result< RenderingModeGetRenderingMode (const std::string &mode)
 
std::ostream & operator<< (std::ostream &stream, const AngleFeatures &features)
 
Result< AngleFeaturesGetNeededAngleFeaturesBasedOnQuirks (const RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
std::string ToLower (const std::string &v)
 
bool IsLikelySoftwareRenderer (const std::string &renderer)
 
CF_UNUSED_ON_MACOS bool ShouldEnableAcceleratedRendering (const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< AngleFeatureOverridesGetNeededAngleFeatures (const RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< VhostUserGpuHostRendererFeaturesGetNeededVhostUserGpuHostRendererFeatures (RenderingMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
Result< std::string > SelectGpuMode (const std::string &gpu_mode_arg, VmmMode vmm, const GuestConfig &guest_config, const gfxstream::proto::GraphicsAvailability &graphics_availability)
 
Result< bool > SelectGpuVhostUserMode (const std::string &gpu_mode, const std::string &gpu_vhost_user_mode_arg, VmmMode vmm)
 
Result< GuestRendererPreloadSelectGuestRendererPreload (const std::string &gpu_mode, const GuestHwuiRenderer guest_hwui_renderer, const std::string &guest_renderer_preload_arg)
 
Result< std::string > GraphicsDetectorBinaryPath ()
 
bool IsAmdGpu (const gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< std::unordered_map< std::string, bool > > ParseGfxstreamRendererFlag (const std::string &gpu_renderer_features_arg)
 
CF_UNUSED_ON_MACOS std::string GetGfxstreamRendererFeaturesString (const std::unordered_map< std::string, bool > &features)
 
CF_UNUSED_ON_MACOS Result< void > 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)
 

Variables

const std::string kGfxstreamTransportAsg = "virtio-gpu-asg"
 
const std::string kGfxstreamTransportPipe = "virtio-gpu-pipe"
 
static std::unordered_set< std::string > kSupportedGpuContexts
 

Enumeration Type Documentation

◆ RenderingMode

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

Function Documentation

◆ GetGfxstreamRendererFeaturesString()

CF_UNUSED_ON_MACOS std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::GetGfxstreamRendererFeaturesString ( const std::unordered_map< std::string, bool > &  features)

◆ GetNeededAngleFeatures()

CF_UNUSED_ON_MACOS Result< AngleFeatureOverrides > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededAngleFeatures ( const RenderingMode  mode,
const ::gfxstream::proto::GraphicsAvailability &  availability 
)

◆ GetNeededAngleFeaturesBasedOnQuirks()

Result< AngleFeatures > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededAngleFeaturesBasedOnQuirks ( const RenderingMode  mode,
const ::gfxstream::proto::GraphicsAvailability &  availability 
)

◆ GetNeededVhostUserGpuHostRendererFeatures()

CF_UNUSED_ON_MACOS Result< VhostUserGpuHostRendererFeatures > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetNeededVhostUserGpuHostRendererFeatures ( RenderingMode  mode,
const ::gfxstream::proto::GraphicsAvailability &  availability 
)

◆ GetRenderingMode()

CF_UNUSED_ON_MACOS Result< RenderingMode > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetRenderingMode ( const std::string &  mode)

◆ GraphicsDetectorBinaryPath()

Result< std::string > cuttlefish::anonymous_namespace{graphics_flags.cc}::GraphicsDetectorBinaryPath ( )

◆ IsAmdGpu()

bool cuttlefish::anonymous_namespace{graphics_flags.cc}::IsAmdGpu ( const gfxstream::proto::GraphicsAvailability &  availability)

◆ IsLikelySoftwareRenderer()

bool cuttlefish::anonymous_namespace{graphics_flags.cc}::IsLikelySoftwareRenderer ( const std::string &  renderer)

◆ operator<<()

std::ostream & cuttlefish::anonymous_namespace{graphics_flags.cc}::operator<< ( std::ostream &  stream,
const AngleFeatures features 
)

◆ ParseGfxstreamRendererFlag()

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)

◆ SelectGpuMode()

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 
)

◆ SelectGpuVhostUserMode()

Result< bool > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGpuVhostUserMode ( const std::string &  gpu_mode,
const std::string &  gpu_vhost_user_mode_arg,
VmmMode  vmm 
)

◆ SelectGuestRendererPreload()

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 
)

◆ SetGfxstreamFlags()

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 
)

◆ ShouldEnableAcceleratedRendering()

CF_UNUSED_ON_MACOS bool cuttlefish::anonymous_namespace{graphics_flags.cc}::ShouldEnableAcceleratedRendering ( const ::gfxstream::proto::GraphicsAvailability &  availability)

◆ ToLower()

std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::ToLower ( const std::string &  v)

Variable Documentation

◆ kGfxstreamTransportAsg

const std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamTransportAsg = "virtio-gpu-asg"

◆ kGfxstreamTransportPipe

const std::string cuttlefish::anonymous_namespace{graphics_flags.cc}::kGfxstreamTransportPipe = "virtio-gpu-pipe"

◆ kSupportedGpuContexts

std::unordered_set<std::string> cuttlefish::anonymous_namespace{graphics_flags.cc}::kSupportedGpuContexts
static
Initial value:
{
"gfxstream-vulkan", "gfxstream-composer", "cross-domain", "magma"}