Vita3K-Android/vita3k/dir_doc.cpp
hobyst 3b74ceb5d9 host, gui: Abstract file browser window calls
This commit creates the first library of the host OS abstraction
layer to access native OS dialogs using a more flexible C++ API
and implements file browser dialogs using nativefiledialog-extended
so that XDG desktop portals can be used to spawn these dialogs
in Linux.
2022-08-31 19:48:44 -03:00

230 lines
3.8 KiB
C++

/**
* @file vita3k/dir_doc.cpp
*
* @brief Folder structure description
*
* This `.cpp` file contains descriptions for the `vita3k` source code folder and its sub-folders.
*/
/**
* @dir vita3k
*
* @brief Source code files specific to the Vita3K emulator
*
* This folder is divided into different sub-folders that cover specific part/features of the emulator.
*/
/**
* @dir vita3k/app
*
* @brief GUI window and graphics rendering backend initiation and management
*/
/**
* @dir vita3k/audio
*
* @brief Audio stream management
*/
/**
* @dir vita3k/codec
*
* @brief Multimedia decodification and video/audio player for games
*/
/**
* @dir vita3k/config
*
* @brief YAML configuration file management and CLI argument parsing
*/
/**
* @dir vita3k/cpu
*
* @brief CPU emulation
*
* The PlayStation Vita has an ARMv7 CPU, making game binaries impossible to run on a x86 system unless recompiled.
* Vita3K uses the Unicorn JIT recompiler to turn the Vita's ARM code into x86 code in order to enable execution of games in PCs.
*/
/**
* @dir vita3k/crypto
*
* @brief Cryptographic tooling
*/
/**
* @dir vita3k/ctrl
*
* @brief Gamepad input from host to PS Vita controls bridge
*/
/**
* @dir vita3k/dialog
*
* @brief PS Vita OS dialog handling
*
* This folder contains the code necessary to handle the calls from the game to create native PS Vita OS dialogs.
*/
/**
* @dir vita3k/emuenv
*
* @brief Definitions and basic data structures to construct an emulated PS Vita environment
*/
/**
* @dir vita3k/disasm
*
* @brief ARM game code disassembler (used for the "Watch code" debugging option)
*/
/**
* @dir vita3k/features
*
* @brief Host setup check for emulation features and optimizations
*/
/**
* @dir vita3k/gdbstub
*
* @brief GDB integration
*/
/**
* @dir vita3k/glutil
*
* @brief OpenGL shading language implementation
*/
/**
* @dir vita3k/glutil
*
* @brief OpenGL shading language implementation
*/
/**
* @dir vita3k/gui
*
* @brief UI elements management code
*/
/**
* @dir vita3k/gxm
*
* @brief Vita's GXM low-level graphics API translation layer
*/
/**
* @dir vita3k/host
*
* @brief Host operating system abstraction layer
*/
/**
* @dir vita3k/io
*
* @brief PS Vita file system emulation and `SceIo` implementation
*/
/**
* @dir vita3k/kernel
*
* @brief PS Vita kernel and thread emulation
*/
/**
* @dir vita3k/mem
*
* @brief Memory management
*/
/**
* @dir vita3k/module
*
* @brief PS Vita module (library) loading and ARM calling convention to C++ HLE call bridge
*/
/**
* @dir vita3k/modules
*
* @brief PS Vita SDK/OS call implementations
*
* This folder contains the C++ HLE equivalent implementations to the PlayStation Vita's SDK functions and methods, which
* translate calls to the Vita SDK from games into host OS calls.
*
* All the SDK subsets, methods, functions, constants and variables are described in the [VitaSDK API](https://docs.vitasdk.org/index.html).
*/
/**
* @dir vita3k/net
*
* @brief Ground code for `SceNet`
*/
/**
* @dir vita3k/ngs
*
* @brief Implementation of Sony's NGS propietary audio library for the PlayStation Vita
*/
/**
* @dir vita3k/nids
*
* @brief NID handling for PS Vita functions
*/
/**
* @dir vita3k/np
*
* @brief PS Vita `Np` trophy API
*/
/**
* @dir vita3k/packages
*
* @brief PS Vita software package handling
*/
/**
* @dir vita3k/renderer
*
* @brief OpenGL and Vulkan implementations
*/
/**
* @dir vita3k/rtc
*
* @brief Time and clock implementation
*/
/**
* @dir vita3k/rtc
*
* @brief Time and clock implementation
*/
/**
* @dir vita3k/shader
*
* @brief GXM shader binary recompiler
*/
/**
* @dir vita3k/threads
*
* @brief Thread management
*/
/**
* @dir vita3k/touch
*
* @brief PS Vita touchscreen emulation
*/
/**
* @dir vita3k/util
*
* @brief Several code utils used throughout the source code
*/