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

Classes

struct  AggregatingErrorCollector
 
struct  AngleFeatureOverrides
 
struct  AngleFeatures
 
struct  CommonState
 
struct  RequirementWithReason
 
struct  VhostUserGpuHostRendererFeatures
 

Typedefs

using MeetsRequirementFunc = std::function< bool(const CommonState &common)>
 

Functions

bool IsLikelySoftwareRenderer (const std::string &renderer)
 
bool IsAmdGpu (const gfxstream::proto::GraphicsAvailability &availability)
 
const std::unordered_map< GpuMode, std::vector< RequirementWithReason > > & GetGpuModeRequirementsMap ()
 
std::ostream & operator<< (std::ostream &stream, const AngleFeatures &features)
 
Result< AngleFeaturesGetNeededAngleFeaturesBasedOnQuirks (const GpuMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< AngleFeatureOverridesGetNeededAngleFeatures (const GpuMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< VhostUserGpuHostRendererFeaturesGetNeededVhostUserGpuHostRendererFeatures (GpuMode mode, const ::gfxstream::proto::GraphicsAvailability &availability)
 
bool EnableHostRenderingByDefault ()
 
std::vector< GpuModeGetGpuModeCandidates (const GuestConfig &guest_config)
 
Result< bool > GpuModeRequirementsMet (const CommonState &common, const GpuMode gpu_mode)
 
Result< std::vector< GpuMode > > GetSupportedGpuModeCandidates (const CommonState &common, const std::vector< GpuMode > &candidates)
 
Result< GpuModeSelectGpuMode (const GpuMode gpu_mode_arg, VmmMode vmm, const GuestConfig &guest_config, const gfxstream::proto::GraphicsAvailability &graphics_availability)
 
Result< bool > SelectGpuVhostUserMode (const GpuMode gpu_mode, const std::string &gpu_vhost_user_mode_arg, VmmMode vmm)
 
Result< GuestHwuiRendererSelectGuestHwuiRenderer (const GpuMode gpu_mode, const GuestConfig &guest_config, const std::string &guest_hwui_renderer_arg)
 
Result< GuestRendererPreloadSelectGuestRendererPreload (const GpuMode gpu_mode, const GuestHwuiRenderer guest_hwui_renderer, const std::string &guest_renderer_preload_arg)
 
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 bool HasMultipleGraphicsQueues (const gfxstream::proto::GraphicsAvailability &availability)
 
CF_UNUSED_ON_MACOS Result< void > SetGfxstreamFlags (const GpuMode gpu_mode, const GuestHwuiRenderer hwui_renderer, 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
 

Typedef Documentation

◆ MeetsRequirementFunc

using cuttlefish::anonymous_namespace{graphics_flags.cc}::MeetsRequirementFunc = typedef std::function<bool(const CommonState& common)>

Function Documentation

◆ EnableHostRenderingByDefault()

bool cuttlefish::anonymous_namespace{graphics_flags.cc}::EnableHostRenderingByDefault ( )

◆ GetGfxstreamRendererFeaturesString()

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

◆ GetGpuModeCandidates()

std::vector< GpuMode > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetGpuModeCandidates ( const GuestConfig guest_config)

◆ GetGpuModeRequirementsMap()

const std::unordered_map< GpuMode, std::vector< RequirementWithReason > > & cuttlefish::anonymous_namespace{graphics_flags.cc}::GetGpuModeRequirementsMap ( )

◆ GetNeededAngleFeatures()

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

◆ GetNeededAngleFeaturesBasedOnQuirks()

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

◆ GetNeededVhostUserGpuHostRendererFeatures()

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

◆ GetSupportedGpuModeCandidates()

Result< std::vector< GpuMode > > cuttlefish::anonymous_namespace{graphics_flags.cc}::GetSupportedGpuModeCandidates ( const CommonState common,
const std::vector< GpuMode > &  candidates 
)

◆ GpuModeRequirementsMet()

Result< bool > cuttlefish::anonymous_namespace{graphics_flags.cc}::GpuModeRequirementsMet ( const CommonState common,
const GpuMode  gpu_mode 
)

◆ HasMultipleGraphicsQueues()

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

◆ 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< GpuMode > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGpuMode ( const GpuMode  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 GpuMode  gpu_mode,
const std::string &  gpu_vhost_user_mode_arg,
VmmMode  vmm 
)

◆ SelectGuestHwuiRenderer()

Result< GuestHwuiRenderer > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGuestHwuiRenderer ( const GpuMode  gpu_mode,
const GuestConfig guest_config,
const std::string &  guest_hwui_renderer_arg 
)

◆ SelectGuestRendererPreload()

Result< GuestRendererPreload > cuttlefish::anonymous_namespace{graphics_flags.cc}::SelectGuestRendererPreload ( const GpuMode  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 GpuMode  gpu_mode,
const GuestHwuiRenderer  hwui_renderer,
const std::string &  gpu_renderer_features_arg,
const GuestConfig guest_config,
const gfxstream::proto::GraphicsAvailability &  availability,
CuttlefishConfig::MutableInstanceSpecific instance 
)

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"}