Struct retro_system_info

Source
#[repr(C)]
pub struct retro_system_info { pub library_name: *const c_char, pub library_version: *const c_char, pub valid_extensions: *const c_char, pub need_fullpath: bool, pub block_extract: bool, }

Fields§

§library_name: *const c_char

Descriptive name of library. Should not contain any version numbers, etc.

§library_version: *const c_char

Descriptive version of core.

§valid_extensions: *const c_char

A string listing probably content extensions the core will be able to load, separated with pipe. I.e. “bin|rom|iso”. Typically used for a GUI to filter out extensions.

§need_fullpath: bool

Libretro cores that need to have direct access to their content files, including cores which use the path of the content files to determine the paths of other files, should set need_fullpath to true.

Cores should strive for setting need_fullpath to false, as it allows the frontend to perform patching, etc.

If need_fullpath is true and retro_load_game() is called:

  • retro_game_info::path is guaranteed to have a valid path
  • retro_game_info::data and retro_game_info::size are invalid

If need_fullpath is false and retro_load_game() is called:

  • retro_game_info::path may be NULL
  • retro_game_info::data and retro_game_info::size are guaranteed to be valid

See also:

  • RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY
  • RETRO_ENVIRONMENT_GET_SAVE_DIRECTORY
§block_extract: bool

If true, the frontend is not allowed to extract any archives before loading the real content. Necessary for certain libretro implementations that load games from zipped archives.

Trait Implementations§

Source§

impl Clone for retro_system_info

Source§

fn clone(&self) -> retro_system_info

Returns a duplicate of the value. Read more
1.0.0 · Source§

const fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for retro_system_info

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for retro_system_info

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.