20 #ifndef MIR_GRAPHICS_PLATFORM_H_ 21 #define MIR_GRAPHICS_PLATFORM_H_ 23 #include <boost/program_options/options_description.hpp> 30 class EmergencyCleanupRegistry;
32 namespace logging {
class Logger; }
51 class DisplayConfigurationPolicy;
52 class GraphicBufferAllocator;
54 class PlatformIpcOperations;
85 std::shared_ptr<DisplayConfigurationPolicy>
const& initial_conf_policy,
86 std::shared_ptr<GLConfig>
const& gl_config) = 0;
117 std::shared_ptr<mir::options::Option>
const& options,
118 std::shared_ptr<mir::EmergencyCleanupRegistry>
const& emergency_cleanup_registry,
119 std::shared_ptr<mir::graphics::DisplayReport>
const& report,
120 std::shared_ptr<mir::logging::Logger>
const& logger);
123 std::shared_ptr<mir::graphics::DisplayReport>
const& report,
124 std::shared_ptr<mir::graphics::NestedContext>
const& nested_context);
128 boost::program_options::options_description& config);
138 #if defined(__clang__) 139 #pragma clang diagnostic push 142 #pragma clang diagnostic ignored "-Wreturn-type-c-linkage" 158 std::shared_ptr<mir::options::Option>
const& options,
159 std::shared_ptr<mir::EmergencyCleanupRegistry>
const& emergency_cleanup_registry,
160 std::shared_ptr<mir::graphics::DisplayReport>
const& report,
161 std::shared_ptr<mir::logging::Logger>
const& logger);
175 std::shared_ptr<mir::graphics::DisplayReport>
const& report,
176 std::shared_ptr<mir::graphics::NestedContext>
const& nested_context);
188 boost::program_options::options_description& config);
197 #if defined(__clang__) 198 #pragma clang diagnostic pop 202 #endif // MIR_GRAPHICS_PLATFORM_H_ Definition: as_render_target.h:27
mir::graphics::PlatformPriority(* PlatformProbe)(mir::options::ProgramOption const &options)
Definition: platform.h:130
Capable of providing a Platform with the best features and performance this device is capable of...
Definition: platform.h:111
Unable to function at all on this device.
Definition: platform.h:105
Describes a platform module.
Definition: module_properties.h:33
PlatformPriority
A measure of how well a platform supports a device.
Definition: platform.h:103
Used only for dummy or stub platforms.
Definition: platform.h:106
std::unique_ptr< T, ModuleDeleter< T > > UniqueModulePtr
Use UniqueModulePtr to ensure that your loadable libray outlives instances created within it...
Definition: module_deleter.h:83
Capable of providing a functioning Platform on this device, possibly with degraded performance or fea...
Definition: platform.h:108