aboutsummaryrefslogblamecommitdiff
path: root/src/Ryujinx.HLE/HOS/Applets/AppletManager.cs
blob: 3c34d5c7897ec45c5102135f7ef8a7e5c6bd87c2 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
                                      
                                    
                                           





                                 
                                                                     
                           
             












                                                              




                                                                                      
using Ryujinx.HLE.HOS.Applets.Browser;
using Ryujinx.HLE.HOS.Applets.Error;
using Ryujinx.HLE.HOS.Services.Am.AppletAE;
using System;
using System.Collections.Generic;

namespace Ryujinx.HLE.HOS.Applets
{
    static class AppletManager
    {
        public static IApplet Create(AppletId applet, Horizon system)
        {
            switch (applet)
            {
                case AppletId.Controller:
                    return new ControllerApplet(system);
                case AppletId.Error:
                    return new ErrorApplet(system);
                case AppletId.PlayerSelect:
                    return new PlayerSelectApplet(system);
                case AppletId.SoftwareKeyboard:
                    return new SoftwareKeyboardApplet(system);
                case AppletId.LibAppletWeb:
                    return new BrowserApplet(system);
                case AppletId.LibAppletShop:
                    return new BrowserApplet(system);
                case AppletId.LibAppletOff:
                    return new BrowserApplet(system);
            }

            throw new NotImplementedException($"{applet} applet is not implemented.");
        }
    }
}