#pragma once #include #include class OrbisNPToolkit { public: void init(); static void sceNpToolkitCallback( const sce::Toolkit::NP::Event& event); static void coreCallback( const sce::Toolkit::NP::Event& event); static void presenceCallback( const sce::Toolkit::NP::Event& event); static void sessionsCallback( const sce::Toolkit::NP::Event& event); static void gameCustomDataCallback( const sce::Toolkit::NP::Event& event); static void messagingCallback( const sce::Toolkit::NP::Event& event); static void createNPSession(); static void destroyNPSession(); static void joinNPSession(); static void leaveNPSession(); static SceNpSessionId* getNPSessionID() { return &m_currentSessionInfo.npSessionId; } static void getMessageData(SceNpGameCustomDataEventParam* paramData); private: static sce::Toolkit::NP::Utilities::Future sm_createJoinFuture; static sce::Toolkit::NP::NpSessionInformation m_currentSessionInfo; static sce::Toolkit::NP::Utilities::Future m_messageData; }; // Singleton extern OrbisNPToolkit NPToolkit;