wut v1.8.0
Wii U Toolchain
Loading...
Searching...
No Matches
fp_cpp.h
Go to the documentation of this file.
1#pragma once
2#include <wut.h>
3#include <nn/result.h>
4#include <nn/ffl/miidata.h>
5#include <nn/act.h>
6
15#ifdef __cplusplus
16
17namespace nn
18{
19namespace fp
20{
21
22
47{
48 uint16_t year;
49 uint8_t month;
50 uint8_t day;
51 uint8_t hour; // hour-1
52 uint8_t minutes;
53 uint8_t seconds; // unsure
54 uint8_t milliseconds; // unsure
55};
56WUT_CHECK_OFFSET(DateTime, 0x00, year);
57WUT_CHECK_OFFSET(DateTime, 0x02, month);
58WUT_CHECK_OFFSET(DateTime, 0x03, day);
59WUT_CHECK_OFFSET(DateTime, 0x04, hour);
60WUT_CHECK_OFFSET(DateTime, 0x05, minutes);
61WUT_CHECK_OFFSET(DateTime, 0x06, seconds);
62WUT_CHECK_OFFSET(DateTime, 0x07, milliseconds);
63WUT_CHECK_SIZE(DateTime, 0x08);
64
65struct GameKey
66{
67 uint64_t titleId;
68 uint16_t unk_0x8;
69 uint32_t unk_0xC;
70};
71WUT_CHECK_OFFSET(GameKey, 0x00, titleId);
72WUT_CHECK_SIZE(GameKey, 0x10);
73
81WUT_CHECK_OFFSET(RecentPlayRecord, 0x00, principalId);
82WUT_CHECK_OFFSET(RecentPlayRecord, 0x04, unk_0x04);
83WUT_CHECK_OFFSET(RecentPlayRecord, 0x06, inGameName);
84WUT_CHECK_OFFSET(RecentPlayRecord, 0x28, myMiiName);
85WUT_CHECK_SIZE(RecentPlayRecord, 0x4C);
86
93WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x00, playRecord);
94WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x50, game);
95WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x60, date);
96WUT_CHECK_SIZE(RecentPlayRecordEx, 0x68);
97
99{
103 WUT_PADDING_BYTES(1);
104};
105WUT_CHECK_SIZE(Preference, 0x04);
106
118WUT_CHECK_OFFSET(GameMode, 0x00, joinAvailabilityFlag);
119WUT_CHECK_OFFSET(GameMode, 0x04, matchmakeSystemType);
120WUT_CHECK_OFFSET(GameMode, 0x08, joinGameId);
121WUT_CHECK_OFFSET(GameMode, 0x0C, joinGameMode);
122WUT_CHECK_OFFSET(GameMode, 0x10, ownerPrincipalId);
123WUT_CHECK_OFFSET(GameMode, 0x14, joinGroupId);
124WUT_CHECK_OFFSET(GameMode, 0x18, applicationArg);
125WUT_CHECK_SIZE(GameMode, 0x2C);
126
128{
130 uint8_t region;
131 uint8_t language;
132 uint8_t platform;
133};
134WUT_CHECK_OFFSET(Presence, 0x00, gameMode);
135WUT_CHECK_OFFSET(Presence, 0x2C, region);
136WUT_CHECK_OFFSET(Presence, 0x2D, language);
137WUT_CHECK_OFFSET(Presence, 0x2E, platform);
138WUT_CHECK_SIZE(Presence, 0x30);
139
141{
144};
145WUT_CHECK_OFFSET(FriendPresence, 0x30, isOnline);
146WUT_CHECK_OFFSET(FriendPresence, 0x31, isValid);
147WUT_CHECK_SIZE(FriendPresence, 0x34);
148
150{
151 char16_t presenceText[64];
152};
153WUT_CHECK_OFFSET(MyPresence, 0x30, presenceText);
154WUT_CHECK_SIZE(MyPresence, 0xB0);
155
158{
159 WUT_UNKNOWN_BYTES(0x68);
160};
161WUT_CHECK_SIZE(BasicInfo, 0x68);
162
165{
166 WUT_UNKNOWN_BYTES(0xB0);
167};
168WUT_CHECK_SIZE(BlackListedPrincipal, 0xB0);
169
172{
173 WUT_UNKNOWN_BYTES(4);
174};
175WUT_CHECK_SIZE(Profile, 0x04);
176
178{
179 uint8_t unk_0x00; // probably bool isVisible
180 uint8_t unk_0x01; // probably bool
181 char16_t comment[17];
182};
183WUT_CHECK_OFFSET(Comment, 0x00, unk_0x00);
184WUT_CHECK_OFFSET(Comment, 0x01, unk_0x01);
185WUT_CHECK_OFFSET(Comment, 0x02, comment);
186WUT_CHECK_SIZE(Comment, 0x24);
187
189{
191 WUT_UNKNOWN_BYTES(0x228);
192};
193WUT_CHECK_SIZE(FriendData, 0x228);
194
196{
198};
199
201{
202 /* Notes:
203 * MaxCharsOnKBD = char16_t[63]
204 * Real Buffer prolly = char16_t[64]
205 **/
206 WUT_UNKNOWN_BYTES(0x164);
207};
208WUT_CHECK_SIZE(FriendRequest, 0x164);
209
210typedef void(*FPAsyncCallback)(nn::Result, void *);
212
215 asm("AcceptFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv");
216
217
220 asm("AddBlackListAsync__Q2_2nn2fpFUiPCQ3_2nn2fp7GameKeyPFQ2_2nn6ResultPv_vPv");
221
222
225 asm("AddBlackListAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
226
227
230 asm("AddFriendAsync__Q2_2nn2fpFPCcPFQ2_2nn6ResultPv_vPv");
231
232
235 asm("AddFriendAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
236
237
240 asm("AddFriendRequestAsync__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExPCwPFQ2_2nn6ResultPv_vPv");
241
242
244AddFriendRequestAsync(unsigned int, unsigned char, const char16_t *, unsigned char, const char16_t *, FPAsyncCallback, void *)
245 asm("AddFriendRequestAsync__Q2_2nn2fpFUiUcPCwT2T3PFQ2_2nn6ResultPv_vPv");
246
247
249AddFriendRequestNoTitleAsync(unsigned int, unsigned char, const char16_t *, unsigned char, const char16_t *, FPAsyncCallback, void *)
250 asm("AddFriendRequestNoTitleAsync__Q2_2nn2fpFUiUcPCwT2T3PFQ2_2nn6ResultPv_vPv");
251
252
255 asm("AddRecentPlayRecordEx__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExUi");
256
257
260 asm("AddRecentPlayRecord__Q2_2nn2fpFPCQ3_2nn2fp16RecentPlayRecordUi");
261
262
265 asm("CancelFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv");
266
267
270 asm("CheckSettingStatusAsync__Q2_2nn2fpFPUcPFQ2_2nn6ResultPv_vPv");
271
272
275 asm("ClearLedEvent__Q2_2nn2fpFv");
276
277
279DeleteFriendFlagsAsync(const unsigned int *, unsigned int, unsigned int, FPAsyncCallback, void *)
280 asm("DeleteFriendFlagsAsync__Q2_2nn2fpFPCUiUiT2PFQ2_2nn6ResultPv_vPv");
281
282
285 asm("DeleteFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv");
286
287
290 asm("DeleteRecentPlayRecordAll__Q2_2nn2fpFv");
291
292
295 asm("DeleteSaveDirectory__Q2_2nn2fpFUi");
296
297
300 asm("DenyFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv");
301
302
304DetectNatPropertiesAsync(unsigned char *, unsigned char *, unsigned int *, FPAsyncCallback, void *)
305 asm("DetectNatPropertiesAsync__Q2_2nn2fpFPUcT1PUiPFQ2_2nn6ResultPv_vPv");
306
307
310 asm("FinalizeAdmin__Q2_2nn2fpFv");
311
312
315 asm("Finalize__Q2_2nn2fpFv");
316
317
319GetBasicInfoAsync(nn::fp::BasicInfo *, unsigned int *, unsigned int, FPAsyncCallback, void *)
320 asm("GetBasicInfoAsync__Q2_2nn2fpFPQ3_2nn2fp9BasicInfoPCUiUiPFQ2_2nn6ResultPv_vPv");
321
322
324GetBlackListAccountId(char *outAccountIds, unsigned int *, unsigned int)
325 asm("GetBlackListAccountId__Q2_2nn2fpFPA17_cPCUiUi");
326
327
329GetBlackListAdditionalTime(nn::fp::DateTime *, unsigned int *, unsigned int)
330 asm("GetBlackListAdditionalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
331
332
334GetBlackListEx(nn::fp::BlackListedPrincipal *outBlackList, unsigned int *, unsigned int)
335 asm("GetBlackListEx__Q2_2nn2fpFPQ3_2nn2fp20BlackListedPrincipalPCUiUi");
336
337
339GetBlackList(nn::act::PrincipalId *outBlackListPrincipalBuffer, unsigned int *outBlackListPrincipalBufferSize, unsigned int/*unk*/, unsigned int maxReadCount)
340 asm("GetBlackList__Q2_2nn2fpFPUiT1UiT3");
341
342
344GetFriendAccountId(char *outAccountIdBuffer, nn::act::PrincipalId *principalBuffer, unsigned int accountIdBufferSize)
345 asm("GetFriendAccountId__Q2_2nn2fpFPA17_cPCUiUi");
346
347
349GetFriendApprovalTime(nn::fp::DateTime *outDateTime, unsigned int *, unsigned int)
350 asm("GetFriendApprovalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
351
352
354GetFriendComment(nn::fp::Comment *outComment, unsigned int *, unsigned int)
355 asm("GetFriendComment__Q2_2nn2fpFPQ3_2nn2fp7CommentPCUiUi");
356
357
359GetFriendListAll(unsigned int *, unsigned int *, unsigned int, unsigned int)
360 asm("GetFriendListAll__Q2_2nn2fpFPUiT1UiT3");
361
362
364GetFriendListEx(nn::fp::FriendData *outFriendData, nn::act::PrincipalId *principalBuffer, unsigned int count)
365 asm("GetFriendListEx__Q2_2nn2fpFPQ3_2nn2fp10FriendDataPCUiUi");
366
367
369GetFriendList(nn::act::PrincipalId *outPrincipalBuffer, unsigned int *outPrincipalBufferReadCount, unsigned int unkn/*slotId maybe*/, unsigned int principalBufferSize)
370 asm("GetFriendList__Q2_2nn2fpFPUiT1UiT3");
371
372
374GetFriendMii(FFLStoreData *outMiiData, nn::act::PrincipalId *principalBuffer, unsigned int count)
375 asm("GetFriendMii__Q2_2nn2fpFP12FFLStoreDataPCUiUi");
376
377
379GetFriendPlayingGame(nn::fp::GameKey *outGameKey, nn::fp::GameModeDescription *outGameModeDescription, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount)
380 asm("GetFriendPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKeyPQ3_2nn2fp19GameModeDescriptionPCUiUi");
381
382
384GetFriendPresenceEx(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount)
385 asm("GetFriendPresenceEx__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi");
386
387
389GetFriendPresence(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int count)
390 asm("GetFriendPresence__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi");
391
392
394GetFriendProfile(nn::fp::Profile *, nn::act::PrincipalId *principalBuffer, unsigned int readCount)
395 asm("GetFriendProfile__Q2_2nn2fpFPQ3_2nn2fp7ProfilePCUiUi");
396
397
399GetFriendRelationship(uint8_t *outRelationshipNum, nn::act::PrincipalId *principalBuffer, unsigned int count)
400 asm("GetFriendRelationship__Q2_2nn2fpFPUcPCUiUi");
401
402
404GetFriendRequestAccountId(char *outAccountIds, nn::act::PrincipalId *principalBuffer, unsigned int count)
405 asm("GetFriendRequestAccountId__Q2_2nn2fpFPA17_cPCUiUi");
406
407
410 asm("GetFriendRequestListEx__Q2_2nn2fpFPQ3_2nn2fp13FriendRequestPCUiUi");
411
412
414GetFriendRequestList(nn::act::PrincipalId *outBuffer, unsigned int *outReadCount, unsigned int/*unk*/, unsigned int count)
415 asm("GetFriendRequestList__Q2_2nn2fpFPUiT1UiT3");
416
417
419GetFriendRequestMessageId(unsigned long long *outMessageIds, unsigned int *, unsigned int)
420 asm("GetFriendRequestMessageId__Q2_2nn2fpFPULPCUiUi");
421
422
424GetFriendScreenName(char16_t outScreenName[nn::act::MiiNameSize], unsigned int *, unsigned int, bool, unsigned char *)
425 asm("GetFriendScreenName__Q2_2nn2fpFPA11_wPCUiUibPUc");
426
427
429GetFriendSortTime(nn::fp::DateTime *, nn::act::PrincipalId *principalBuffer, unsigned int count)
430 asm("GetFriendSortTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
431
432
434GetLastLedEvent(unsigned int *, unsigned int *)
435 asm("GetLastLedEvent__Q2_2nn2fpFPUiT1");
436
437
439GetMyAccountId(char *outAccountId)
440 asm("GetMyAccountId__Q2_2nn2fpFPc");
441
442
445 asm("GetMyComment__Q2_2nn2fpFPQ3_2nn2fp7Comment");
446
447
450 asm("GetMyMii__Q2_2nn2fpFP12FFLStoreData");
451
452
455 asm("GetMyPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKey");
456
457
460 asm("GetMyPreference__Q2_2nn2fpFPQ3_2nn2fp10Preference");
461
462
465 asm("GetMyPresence__Q2_2nn2fpFPQ3_2nn2fp10MyPresence");
466
467
470 asm("GetMyPrincipalId__Q2_2nn2fpFv");
471
472
475 asm("GetMyProfile__Q2_2nn2fpFPQ3_2nn2fp7Profile");
476
477
479GetMyScreenName(char16_t *outScreenName)
480 asm("GetMyScreenName__Q2_2nn2fpFPw");
481
482
484GetRecentPlayRecord(nn::fp::RecentPlayRecordEx *outPlayRecordBuffer, unsigned int *outPlayRecordBufferSize, unsigned int, unsigned int maxReadCount)
485 asm("GetRecentPlayRecord__Q2_2nn2fpFPQ3_2nn2fp18RecentPlayRecordExPUiUiT3");
486
487
489GetRequestBlockSettingAsync(unsigned char *, unsigned int *, unsigned int, FPAsyncCallback, void *)
490 asm("GetRequestBlockSettingAsync__Q2_2nn2fpFPUcPCUiUiPFQ2_2nn6ResultPv_vPv");
491
492
493bool
495 asm("HasLoggedIn__Q2_2nn2fpFv");
496
497
500 asm("InitializeAdmin__Q2_2nn2fpFv");
501
502
505 asm("Initialize__Q2_2nn2fpFv");
506
507
508bool
510 asm("IsFriendRequestAllowed__Q2_2nn2fpFv");
511
512
513bool
515 asm("IsInitializedAdmin__Q2_2nn2fpFv");
516
517
518bool
520 asm("IsInitialized__Q2_2nn2fpFv");
521
522
523bool
524IsInvitation(nn::fp::GameMode *, nn::act::PrincipalId myPrincipalId, unsigned int/*unk*/)
525 asm("IsInvitation__Q2_2nn2fpFPCQ3_2nn2fp8GameModeUiT2");
526
527
528bool
529IsJoinableForFriendListViewer(nn::fp::FriendPresence *, unsigned int, unsigned long long)
530 asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUiUL");
531
532
533bool
534IsJoinableForFriendListViewer(nn::fp::Presence *, unsigned int, unsigned long long)
535 asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp8PresenceUiUL");
536
537
538bool
539IsJoinable(nn::fp::FriendPresence *, unsigned long long)
540 asm("IsJoinable__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUL");
541
542
543bool
545 asm("IsOnline__Q2_2nn2fpFv");
546
547
548bool
550 asm("IsPreferenceValid__Q2_2nn2fpFv");
551
552
553bool
555 asm("IsRecentPlayRecordCorrupted__Q2_2nn2fpFv");
556
557
558bool
560 asm("IsRequestBlockForced__Q2_2nn2fpFv");
561
562
565 asm("LoginAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv");
566
567
570 asm("Logout__Q2_2nn2fpFv");
571
572
574MarkFriendRequestsAsReceivedAsync(unsigned long long *, unsigned int, FPAsyncCallback, void *)
575 asm("MarkFriendRequestsAsReceivedAsync__Q2_2nn2fpFPCULUiPFQ2_2nn6ResultPv_vPv");
576
577
580 asm("RegisterAccountAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv");
581
582
585 asm("RemoveBlackListAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
586
587
589RemoveFriendAsync(unsigned int, FPAsyncCallback, void *)
590 asm("RemoveFriendAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
591
592
593uint32_t
595 asm("ResultToErrorCode__Q2_2nn2fpFQ2_2nn6Result");
596
597
599SetInvitationParameter(nn::fp::GameMode *, unsigned int *, unsigned int, bool)
600 asm("SetInvitationParameter__Q2_2nn2fpFPQ3_2nn2fp8GameModePCUiUib");
601
602
605 asm("SetLedEventMask__Q2_2nn2fpFUi");
606
607
609SetNotificationHandler(uint32_t /*notificationFlags = 1 << NotificationType */, NotificationHandlerFn, void *)
610 asm("SetNotificationHandler__Q2_2nn2fpFUiPFQ3_2nn2fp16NotificationTypeUiPv_vPv");
611
612
615 asm("UnlockParentalControlTemporarily__Q2_2nn2fpFPCc");
616
617
619UpdateCommentAsync(const char16_t *, FPAsyncCallback, void *)
620 asm("UpdateCommentAsync__Q2_2nn2fpFPCwPFQ2_2nn6ResultPv_vPv");
621
622
624UpdateGameModeDescription(const char16_t *description)
625 asm("UpdateGameModeDescription__Q2_2nn2fpFPCw");
626
627
630 asm("UpdateGameModeEx__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
631
632
635 asm("UpdateGameModeForOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
636
637
640 asm("UpdateGameMode__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
641
642
644UpdateGameMode(nn::fp::GameMode *, const char16_t *, unsigned int)
645 asm("UpdateGameMode__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCwUi");
646
647
650 asm("UpdateMiiAsync__Q2_2nn2fpFPC12FFLStoreDataPCwPFQ2_2nn6ResultPv_vPv");
651
652
655 asm("UpdateMiiAsync__Q2_2nn2fpFPC12FFLStoreDataPFQ2_2nn6ResultPv_vPv");
656
657
660 asm("UpdatePlayingGame__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi");
661
662
665 asm("UpdatePlayingOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi");
666
667
670 asm("UpdatePreferenceAsync__Q2_2nn2fpFPCQ3_2nn2fp10PreferencePFQ2_2nn6ResultPv_vPv");
671
672} // namespace fp
673} // namespace nn
674
675#endif // ifdef __cplusplus
Result value type used by nn libraries.
Definition result.h:68
GameMode gameMode
Definition fp_cpp.h:129
uint64_t titleId
Definition fp_cpp.h:67
nn::Result GetFriendScreenName(char16_t outScreenName[nn::act::MiiNameSize], unsigned int *, unsigned int, bool, unsigned char *) asm("GetFriendScreenName__Q2_2nn2fpFPA11_wPCUiUibPUc")
uint32_t matchmakeSystemType
Definition fp_cpp.h:110
nn::Result GetMyAccountId(char *outAccountId) asm("GetMyAccountId__Q2_2nn2fpFPc")
bool IsInitialized(void) asm("IsInitialized__Q2_2nn2fpFv")
bool IsPreferenceValid(void) asm("IsPreferenceValid__Q2_2nn2fpFv")
nn::Result GetMyScreenName(char16_t *outScreenName) asm("GetMyScreenName__Q2_2nn2fpFPw")
char16_t myMiiName[nn::act::AccountIdSize]
Definition fp_cpp.h:79
nn::Result GetBlackListAdditionalTime(nn::fp::DateTime *, unsigned int *, unsigned int) asm("GetBlackListAdditionalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
bool IsInvitation(nn::fp::GameMode *, nn::act::PrincipalId myPrincipalId, unsigned int) asm("IsInvitation__Q2_2nn2fpFPCQ3_2nn2fp8GameModeUiT2")
nn::Result InitializeAdmin(void) asm("InitializeAdmin__Q2_2nn2fpFv")
nn::Result UnlockParentalControlTemporarily(const char pinCode[5]) asm("UnlockParentalControlTemporarily__Q2_2nn2fpFPCc")
bool IsJoinable(nn::fp::FriendPresence *, unsigned long long) asm("IsJoinable__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUL")
nn::Result AddBlackListAsync(nn::act::PrincipalId, nn::fp::GameKey *, FPAsyncCallback, void *) asm("AddBlackListAsync__Q2_2nn2fpFUiPCQ3_2nn2fp7GameKeyPFQ2_2nn6ResultPv_vPv")
nn::Result GetBasicInfoAsync(nn::fp::BasicInfo *, unsigned int *, unsigned int, FPAsyncCallback, void *) asm("GetBasicInfoAsync__Q2_2nn2fpFPQ3_2nn2fp9BasicInfoPCUiUiPFQ2_2nn6ResultPv_vPv")
nn::Result SetInvitationParameter(nn::fp::GameMode *, unsigned int *, unsigned int, bool) asm("SetInvitationParameter__Q2_2nn2fpFPQ3_2nn2fp8GameModePCUiUib")
nn::Result GetFriendList(nn::act::PrincipalId *outPrincipalBuffer, unsigned int *outPrincipalBufferReadCount, unsigned int unkn, unsigned int principalBufferSize) asm("GetFriendList__Q2_2nn2fpFPUiT1UiT3")
NotificationType
Definition fp_cpp.h:24
bool IsJoinableForFriendListViewer(nn::fp::FriendPresence *, unsigned int, unsigned long long) asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUiUL")
nn::Result AddFriendAsync(char nnid[nn::act::AccountIdSize], FPAsyncCallback, void *) asm("AddFriendAsync__Q2_2nn2fpFPCcPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendRelationship(uint8_t *outRelationshipNum, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRelationship__Q2_2nn2fpFPUcPCUiUi")
uint32_t ResultToErrorCode(nn::Result) asm("ResultToErrorCode__Q2_2nn2fpFQ2_2nn6Result")
nn::Result GetFriendProfile(nn::fp::Profile *, nn::act::PrincipalId *principalBuffer, unsigned int readCount) asm("GetFriendProfile__Q2_2nn2fpFPQ3_2nn2fp7ProfilePCUiUi")
nn::Result Initialize(void) asm("Initialize__Q2_2nn2fpFv")
RecentPlayRecord playRecord
Definition fp_cpp.h:89
uint8_t month
Definition fp_cpp.h:49
bool IsRequestBlockForced(void) asm("IsRequestBlockForced__Q2_2nn2fpFv")
void(* NotificationHandlerFn)(nn::fp::NotificationType, nn::act::PrincipalId, void *)
Definition fp_cpp.h:211
nn::Result GetMyPlayingGame(nn::fp::GameKey *outPlayingGmae) asm("GetMyPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKey")
nn::Result GetFriendApprovalTime(nn::fp::DateTime *outDateTime, unsigned int *, unsigned int) asm("GetFriendApprovalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
char16_t comment[17]
Definition fp_cpp.h:181
nn::Result AddFriendRequestNoTitleAsync(unsigned int, unsigned char, const char16_t *, unsigned char, const char16_t *, FPAsyncCallback, void *) asm("AddFriendRequestNoTitleAsync__Q2_2nn2fpFUiUcPCwT2T3PFQ2_2nn6ResultPv_vPv")
uint8_t seconds
Definition fp_cpp.h:53
nn::Result GetFriendRequestList(nn::act::PrincipalId *outBuffer, unsigned int *outReadCount, unsigned int, unsigned int count) asm("GetFriendRequestList__Q2_2nn2fpFPUiT1UiT3")
nn::Result DetectNatPropertiesAsync(unsigned char *, unsigned char *, unsigned int *, FPAsyncCallback, void *) asm("DetectNatPropertiesAsync__Q2_2nn2fpFPUcT1PUiPFQ2_2nn6ResultPv_vPv")
uint32_t joinGameMode
Definition fp_cpp.h:112
uint8_t platform
Definition fp_cpp.h:132
nn::Result GetBlackListAccountId(char *outAccountIds, unsigned int *, unsigned int) asm("GetBlackListAccountId__Q2_2nn2fpFPA17_cPCUiUi")
nn::Result DenyFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("DenyFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendPresence(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendPresence__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi")
uint8_t region
Definition fp_cpp.h:130
nn::Result GetFriendRequestMessageId(unsigned long long *outMessageIds, unsigned int *, unsigned int) asm("GetFriendRequestMessageId__Q2_2nn2fpFPULPCUiUi")
nn::Result SetLedEventMask(uint32_t) asm("SetLedEventMask__Q2_2nn2fpFUi")
uint16_t year
Definition fp_cpp.h:48
uint8_t milliseconds
Definition fp_cpp.h:54
nn::Result GetFriendMii(FFLStoreData *outMiiData, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendMii__Q2_2nn2fpFP12FFLStoreDataPCUiUi")
nn::Result FinalizeAdmin(void) asm("FinalizeAdmin__Q2_2nn2fpFv")
nn::Result GetBlackListEx(nn::fp::BlackListedPrincipal *outBlackList, unsigned int *, unsigned int) asm("GetBlackListEx__Q2_2nn2fpFPQ3_2nn2fp20BlackListedPrincipalPCUiUi")
uint8_t unk_0x00
Definition fp_cpp.h:179
nn::Result GetMyProfile(nn::fp::Profile *outProfile) asm("GetMyProfile__Q2_2nn2fpFPQ3_2nn2fp7Profile")
nn::Result AddRecentPlayRecord(const nn::fp::RecentPlayRecord *, unsigned int) asm("AddRecentPlayRecord__Q2_2nn2fpFPCQ3_2nn2fp16RecentPlayRecordUi")
uint8_t unk_0x01
Definition fp_cpp.h:180
nn::act::PrincipalId principalId
Definition fp_cpp.h:76
uint32_t unk_0xC
Definition fp_cpp.h:69
nn::Result GetFriendAccountId(char *outAccountIdBuffer, nn::act::PrincipalId *principalBuffer, unsigned int accountIdBufferSize) asm("GetFriendAccountId__Q2_2nn2fpFPA17_cPCUiUi")
char16_t presenceText[64]
Definition fp_cpp.h:151
nn::Result GetFriendListEx(nn::fp::FriendData *outFriendData, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendListEx__Q2_2nn2fpFPQ3_2nn2fp10FriendDataPCUiUi")
uint8_t day
Definition fp_cpp.h:50
bool IsRecentPlayRecordCorrupted(void) asm("IsRecentPlayRecordCorrupted__Q2_2nn2fpFv")
nn::act::PrincipalId ownerPrincipalId
only set when joinAvailabilityFlag is TRUE
Definition fp_cpp.h:114
nn::Result AcceptFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("AcceptFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendRequestListEx(nn::fp::FriendRequest *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRequestListEx__Q2_2nn2fpFPQ3_2nn2fp13FriendRequestPCUiUi")
uint8_t minutes
Definition fp_cpp.h:52
BOOL joinAvailabilityFlag
Definition fp_cpp.h:109
nn::Result GetLastLedEvent(unsigned int *, unsigned int *) asm("GetLastLedEvent__Q2_2nn2fpFPUiT1")
nn::Result RegisterAccountAsync(FPAsyncCallback, void *) asm("RegisterAccountAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendComment(nn::fp::Comment *outComment, unsigned int *, unsigned int) asm("GetFriendComment__Q2_2nn2fpFPQ3_2nn2fp7CommentPCUiUi")
bool IsFriendRequestAllowed(void) asm("IsFriendRequestAllowed__Q2_2nn2fpFv")
nn::Result GetFriendPlayingGame(nn::fp::GameKey *outGameKey, nn::fp::GameModeDescription *outGameModeDescription, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount) asm("GetFriendPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKeyPQ3_2nn2fp19GameModeDescriptionPCUiUi")
uint32_t joinGroupId
Definition fp_cpp.h:115
uint16_t unk_0x8
Definition fp_cpp.h:68
nn::Result GetMyPresence(nn::fp::MyPresence *outMyPresence) asm("GetMyPresence__Q2_2nn2fpFPQ3_2nn2fp10MyPresence")
nn::Result CheckSettingStatusAsync(unsigned char *, FPAsyncCallback, void *) asm("CheckSettingStatusAsync__Q2_2nn2fpFPUcPFQ2_2nn6ResultPv_vPv")
nn::Result DeleteFriendFlagsAsync(const unsigned int *, unsigned int, unsigned int, FPAsyncCallback, void *) asm("DeleteFriendFlagsAsync__Q2_2nn2fpFPCUiUiT2PFQ2_2nn6ResultPv_vPv")
char16_t inGameName[nn::act::AccountIdSize]
Definition fp_cpp.h:78
nn::Result GetRecentPlayRecord(nn::fp::RecentPlayRecordEx *outPlayRecordBuffer, unsigned int *outPlayRecordBufferSize, unsigned int, unsigned int maxReadCount) asm("GetRecentPlayRecord__Q2_2nn2fpFPQ3_2nn2fp18RecentPlayRecordExPUiUiT3")
nn::Result UpdatePlayingOverlayApplication(nn::fp::GameKey *, unsigned int) asm("UpdatePlayingOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi")
nn::Result DeleteFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("DeleteFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result AddFriendRequestAsync(const nn::fp::RecentPlayRecordEx *, const char16_t *, FPAsyncCallback, void *) asm("AddFriendRequestAsync__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExPCwPFQ2_2nn6ResultPv_vPv")
nn::Result UpdatePreferenceAsync(nn::fp::Preference *, FPAsyncCallback, void *) asm("UpdatePreferenceAsync__Q2_2nn2fpFPCQ3_2nn2fp10PreferencePFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendListAll(unsigned int *, unsigned int *, unsigned int, unsigned int) asm("GetFriendListAll__Q2_2nn2fpFPUiT1UiT3")
nn::Result GetMyPreference(nn::fp::Preference *outPreference) asm("GetMyPreference__Q2_2nn2fpFPQ3_2nn2fp10Preference")
bool IsInitializedAdmin(void) asm("IsInitializedAdmin__Q2_2nn2fpFv")
uint8_t language
Definition fp_cpp.h:131
nn::Result UpdateGameModeForOverlayApplication(nn::fp::GameMode *, const char16_t *) asm("UpdateGameModeForOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
nn::act::PrincipalId GetMyPrincipalId(void) asm("GetMyPrincipalId__Q2_2nn2fpFv")
uint8_t applicationArg[0x14]
Definition fp_cpp.h:116
uint32_t joinGameId
Definition fp_cpp.h:111
nn::Result UpdateGameModeDescription(const char16_t *description) asm("UpdateGameModeDescription__Q2_2nn2fpFPCw")
nn::Result ClearLedEvent(void) asm("ClearLedEvent__Q2_2nn2fpFv")
nn::Result GetRequestBlockSettingAsync(unsigned char *, unsigned int *, unsigned int, FPAsyncCallback, void *) asm("GetRequestBlockSettingAsync__Q2_2nn2fpFPUcPCUiUiPFQ2_2nn6ResultPv_vPv")
nn::Result UpdatePlayingGame(nn::fp::GameKey *, unsigned int) asm("UpdatePlayingGame__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi")
nn::Result CancelFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("CancelFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result LoginAsync(FPAsyncCallback, void *) asm("LoginAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv")
nn::Result GetBlackList(nn::act::PrincipalId *outBlackListPrincipalBuffer, unsigned int *outBlackListPrincipalBufferSize, unsigned int, unsigned int maxReadCount) asm("GetBlackList__Q2_2nn2fpFPUiT1UiT3")
nn::Result UpdateGameMode(nn::fp::GameMode *, const char16_t *) asm("UpdateGameMode__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
nn::Result GetMyMii(FFLStoreData *outMiiData) asm("GetMyMii__Q2_2nn2fpFP12FFLStoreData")
nn::Result DeleteRecentPlayRecordAll(void) asm("DeleteRecentPlayRecordAll__Q2_2nn2fpFv")
bool IsOnline(void) asm("IsOnline__Q2_2nn2fpFv")
nn::Result GetFriendRequestAccountId(char *outAccountIds, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRequestAccountId__Q2_2nn2fpFPA17_cPCUiUi")
nn::Result GetFriendPresenceEx(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount) asm("GetFriendPresenceEx__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi")
uint8_t hour
Definition fp_cpp.h:51
nn::Result RemoveBlackListAsync(unsigned int, FPAsyncCallback, void *) asm("RemoveBlackListAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv")
nn::Result GetMyComment(nn::fp::Comment *outComment) asm("GetMyComment__Q2_2nn2fpFPQ3_2nn2fp7Comment")
nn::Result UpdateGameModeEx(nn::fp::GameMode *, const char16_t *) asm("UpdateGameModeEx__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
nn::Result UpdateMiiAsync(FFLStoreData *, char16_t *, FPAsyncCallback, void *) asm("UpdateMiiAsync__Q2_2nn2fpFPC12FFLStoreDataPCwPFQ2_2nn6ResultPv_vPv")
nn::Result DeleteSaveDirectory(unsigned int) asm("DeleteSaveDirectory__Q2_2nn2fpFUi")
nn::Result GetFriendSortTime(nn::fp::DateTime *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendSortTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
nn::Result AddRecentPlayRecordEx(const nn::fp::RecentPlayRecordEx *, unsigned int) asm("AddRecentPlayRecordEx__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExUi")
nn::Result SetNotificationHandler(uint32_t, NotificationHandlerFn, void *) asm("SetNotificationHandler__Q2_2nn2fpFUiPFQ3_2nn2fp16NotificationTypeUiPv_vPv")
nn::Result MarkFriendRequestsAsReceivedAsync(unsigned long long *, unsigned int, FPAsyncCallback, void *) asm("MarkFriendRequestsAsReceivedAsync__Q2_2nn2fpFPCULUiPFQ2_2nn6ResultPv_vPv")
bool HasLoggedIn(void) asm("HasLoggedIn__Q2_2nn2fpFv")
nn::Result Logout(void) asm("Logout__Q2_2nn2fpFv")
void(* FPAsyncCallback)(nn::Result, void *)
Definition fp_cpp.h:210
nn::Result Finalize(void) asm("Finalize__Q2_2nn2fpFv")
nn::Result RemoveFriendAsync(unsigned int, FPAsyncCallback, void *) asm("RemoveFriendAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv")
nn::Result UpdateCommentAsync(const char16_t *, FPAsyncCallback, void *) asm("UpdateCommentAsync__Q2_2nn2fpFPCwPFQ2_2nn6ResultPv_vPv")
@ NOTIFICATION_BLACKLIST_ADDED
Definition fp_cpp.h:38
@ NOTIFICATION_REQUEST_REMOVED
Definition fp_cpp.h:42
@ NOTIFICATION_ONLINE
Definition fp_cpp.h:25
@ NOTIFICATION_FRIEND_ONLINE
Definition fp_cpp.h:28
@ NOTIFICATION_FRIEND_ADDED
Definition fp_cpp.h:33
@ NOTIFICATION_FRIEND_MII
Definition fp_cpp.h:31
@ NOTIFICATION_FRIEND_PRESENCE
Definition fp_cpp.h:30
@ NOTIFICATION_OFFLINE
Definition fp_cpp.h:26
@ NOTIFICATION_MY_REQUEST_ADDED
Definition fp_cpp.h:35
@ NOTIFICATION_MY_REQUEST_UPDATED
Definition fp_cpp.h:37
@ NOTIFICATION_FRIEND_REMOVED
Definition fp_cpp.h:34
@ NOTIFICATION_PREFERENCE
Definition fp_cpp.h:27
@ NOTIFICATION_MY_REQUEST_REMOVED
Definition fp_cpp.h:36
@ NOTIFICATION_REQUEST_ADDED
Definition fp_cpp.h:41
@ NOTIFICATION_FRIEND_PROFILE
Definition fp_cpp.h:32
@ NOTIFICATION_BLACKLIST_UPDATED
Definition fp_cpp.h:40
@ NOTIFICATION_FRIEND_OFFLINE
Definition fp_cpp.h:29
@ NOTIFICATION_BLACKLIST_REMOVED
Definition fp_cpp.h:39
TODO: find member types and names.
Definition fp_cpp.h:158
TODO: find member types and names.
Definition fp_cpp.h:165
TODO: find member types and names.
Definition fp_cpp.h:172
uint32_t PrincipalId
Definition client_cpp.h:25
uint64_t LocalFriendCode
Definition client_cpp.h:23
static constexpr size_t AccountIdSize
Definition client_cpp.h:29
static constexpr size_t MiiNameSize
Definition client_cpp.h:32
Definition ac_cpp.h:16
int32_t BOOL
Definition wut_types.h:7