include/sysapp: Add basic documentation

This commit is contained in:
Ash 2018-08-27 21:36:21 +10:00
parent 4ff6c40f2c
commit 6db746212c
3 changed files with 102 additions and 1 deletions

View File

@ -4,6 +4,10 @@
/**
* \defgroup sysapp_launch SYSAPP Launch
* \ingroup sysapp
*
* Functions to launch and restart titles or system applications.
* SYSAPP Launch allows applications to launch other titles, restart their own
* title, and to launch certain system titles.
* @{
*/
@ -11,25 +15,76 @@
extern "C" {
#endif
/**
* Restarts the current title with new arguments once the running application
* quits. Instead of returning to the HOME menu upon exit, the system will start
* the same title again.
*
* \param argc
* The number of strings in the pa_Argv array. Passed in to the title's main
* function as argc.
*
* \param pa_Argv
* An array of strings to use as arguments. Passed into the title's main
* function as argv.
*
* <!--
* meta: why pa_?
* do we need to include the rpx name in argv[0]?
* behaviour where pa_Argv = NULL?
* -->
*/
void
SYSRelaunchTitle(uint32_t argc,
char *pa_Argv[]);
/**
* Launches the HOME menu when the current application exits.
*
* \note
* This is the default behaviour upon application exit.
*/
void
SYSLaunchMenu();
/**
* Launch the given title ID once the current applocation exits. Instead of
* opening the HOME menu once the current application quits, the system will
* load the given title with default arguments.
*
* <!--
* what happens on an incorrect titleid?
* argc/argv?
* -->
*/
void
SYSLaunchTitle(uint64_t TitleId);
/**
* Launch Mii Maker once the current application exits.
*/
void
_SYSLaunchMiiStudio();
/**
* Launch System Settings once the current application exits.
*/
void
_SYSLaunchSettings();
/**
* Launch Parental Controls once the current application exits.
*/
void
_SYSLaunchParental();
/**
* Launch Notifications once the current application exits.
*
* <!--
* isn't this an overlay app? does this really run on exit?
* -->
*/
void
_SYSLaunchNotifications();

View File

@ -4,6 +4,14 @@
/**
* \defgroup sysapp_switch SYSAPP Switch
* \ingroup sysapp
*
* Functions to open overlay applications (eShop, manual etc.).
* SYSAPP Switch provides functions to open overlay applications - such as the
* Internet Browser or HOME menu overlay. Calling one of these functions moves
* the current application to the background and opens the requested overlay.
* Notable functions include \link SYSSwitchToSyncControllerOnHBM \endlink and
* \link SYSSwitchToBrowserForViewer \endlink, to open the sync controller menu
* or Internet Browser, respectivley.
* @{
*/
@ -11,20 +19,57 @@
extern "C" {
#endif
//! Argument struct for \link SYSSwitchToBrowserForViewer \endlink.
typedef struct SysAppBrowserArgs SysAppBrowserArgs;
/**
* Initiate a switch into the controller sync menu. This is the same menu
* that can be accessed from the HOME menu overlay (HBM).
*
* The current application is moved into the background (see \link
* proc_ui_procui ProcUI\endlink) and the sync menu is shown. Once the user
* exits the menu, the application is moved back to the foreground.
* <!-- TODO check factual accuracy here -->
*/
void
SYSSwitchToSyncControllerOnHBM();
/**
* Initiate a switch to the current title's assosciated e-manual.
*
* The current application is moved into the background (see \link
* proc_ui_procui ProcUI\endlink) and the e-manual is shown. Once the user
* exits the menu, the application is moved back to the foreground.
*/
void
SYSSwitchToEManual();
/**
* Initiate a switch to the Nintendo eShop application.
*
* The current application is moved into the background (see \link
* proc_ui_procui ProcUI\endlink) and the Nintendo eShop is shown. Once the user
* exits the menu, the application is moved back to the foreground.
*/
void
SYSSwitchToEShop();
/**
* <!--
* ..?
* -->
*/
void
_SYSSwitchToMainApp();
/**
* Initiates a switch to the Internet Browser application, with the given
* arguments in the form of a \link SysAppBrowserArgs \endlink struct.
*
* The current application is moved into the background (see \link
* proc_ui_procui ProcUI\endlink) and the Internet Browser is shown. Once the
* user exits the menu, the application is moved back to the foreground.
*/
void
SYSSwitchToBrowserForViewer(SysAppBrowserArgs *);

View File

@ -1,5 +1,6 @@
/**
* \defgroup sysapp sysapp
*
* Application switching and lauching functions.
* Functions to switch applications, launch overlay apps and perform other
* multitasking functions.
*/