wut  v1.5.0
Wii U Toolchain
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 
17 namespace nn
18 {
19 namespace fp
20 {
21 
22 
24 {
43 
45 };
46 struct DateTime
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 };
56 WUT_CHECK_OFFSET(DateTime, 0x00, year);
57 WUT_CHECK_OFFSET(DateTime, 0x02, month);
58 WUT_CHECK_OFFSET(DateTime, 0x03, day);
59 WUT_CHECK_OFFSET(DateTime, 0x04, hour);
60 WUT_CHECK_OFFSET(DateTime, 0x05, minutes);
61 WUT_CHECK_OFFSET(DateTime, 0x06, seconds);
62 WUT_CHECK_OFFSET(DateTime, 0x07, milliseconds);
63 WUT_CHECK_SIZE(DateTime, 0x08);
64 
65 struct GameKey
66 {
67  uint64_t titleId;
68  uint16_t unk_0x8;
69  uint32_t unk_0xC;
70 };
71 WUT_CHECK_OFFSET(GameKey, 0x00, titleId);
72 WUT_CHECK_SIZE(GameKey, 0x10);
73 
75 {
77  uint16_t unk_0x04;
80 };
81 WUT_CHECK_OFFSET(RecentPlayRecord, 0x00, principalId);
82 WUT_CHECK_OFFSET(RecentPlayRecord, 0x04, unk_0x04);
83 WUT_CHECK_OFFSET(RecentPlayRecord, 0x06, inGameName);
84 WUT_CHECK_OFFSET(RecentPlayRecord, 0x28, myMiiName);
85 WUT_CHECK_SIZE(RecentPlayRecord, 0x4C);
86 
88 {
92 };
93 WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x00, playRecord);
94 WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x50, game);
95 WUT_CHECK_OFFSET(RecentPlayRecordEx, 0x60, date);
96 WUT_CHECK_SIZE(RecentPlayRecordEx, 0x68);
97 
98 struct Preference
99 {
100  bool unk_0x00;
101  bool unk_0x01;
102  bool unk_0x02;
103  WUT_PADDING_BYTES(1);
104 };
105 WUT_CHECK_SIZE(Preference, 0x04);
106 
107 struct GameMode
108 {
110  uint32_t matchmakeSystemType; // 2 ??
111  uint32_t joinGameId;
112  uint32_t joinGameMode;
115  uint32_t joinGroupId;
116  uint8_t applicationArg[0x14];
117 };
118 WUT_CHECK_OFFSET(GameMode, 0x00, joinAvailabilityFlag);
119 WUT_CHECK_OFFSET(GameMode, 0x04, matchmakeSystemType);
120 WUT_CHECK_OFFSET(GameMode, 0x08, joinGameId);
121 WUT_CHECK_OFFSET(GameMode, 0x0C, joinGameMode);
122 WUT_CHECK_OFFSET(GameMode, 0x10, ownerPrincipalId);
123 WUT_CHECK_OFFSET(GameMode, 0x14, joinGroupId);
124 WUT_CHECK_OFFSET(GameMode, 0x18, applicationArg);
125 WUT_CHECK_SIZE(GameMode, 0x2C);
126 
127 struct Presence
128 {
130  uint8_t region;
131  uint8_t language;
132  uint8_t platform;
133 };
134 WUT_CHECK_OFFSET(Presence, 0x00, gameMode);
135 WUT_CHECK_OFFSET(Presence, 0x2C, region);
136 WUT_CHECK_OFFSET(Presence, 0x2D, language);
137 WUT_CHECK_OFFSET(Presence, 0x2E, platform);
138 WUT_CHECK_SIZE(Presence, 0x30);
139 
141 {
142  bool isOnline;
143  bool isValid;
144 };
145 WUT_CHECK_OFFSET(FriendPresence, 0x30, isOnline);
146 WUT_CHECK_OFFSET(FriendPresence, 0x31, isValid);
147 WUT_CHECK_SIZE(FriendPresence, 0x34);
148 
150 {
151  char16_t presenceText[64];
152 };
153 WUT_CHECK_OFFSET(MyPresence, 0x30, presenceText);
154 WUT_CHECK_SIZE(MyPresence, 0xB0);
155 
157 struct BasicInfo
158 {
159  WUT_UNKNOWN_BYTES(0x68);
160 };
161 WUT_CHECK_SIZE(BasicInfo, 0x68);
162 
165 {
166  WUT_UNKNOWN_BYTES(0xB0);
167 };
168 WUT_CHECK_SIZE(BlackListedPrincipal, 0xB0);
169 
171 struct Profile
172 {
173  WUT_UNKNOWN_BYTES(4);
174 };
175 WUT_CHECK_SIZE(Profile, 0x04);
176 
177 struct Comment
178 {
179  uint8_t unk_0x00; // probably bool isVisible
180  uint8_t unk_0x01; // probably bool
181  char16_t comment[17];
182 };
183 WUT_CHECK_OFFSET(Comment, 0x00, unk_0x00);
184 WUT_CHECK_OFFSET(Comment, 0x01, unk_0x01);
185 WUT_CHECK_OFFSET(Comment, 0x02, comment);
186 WUT_CHECK_SIZE(Comment, 0x24);
187 
189 {
191  WUT_UNKNOWN_BYTES(0x228);
192 };
193 WUT_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 };
208 WUT_CHECK_SIZE(FriendRequest, 0x164);
209 
210 typedef 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 
244 AddFriendRequestAsync(unsigned int, unsigned char, const char16_t *, unsigned char, const char16_t *, FPAsyncCallback, void *)
245  asm("AddFriendRequestAsync__Q2_2nn2fpFUiUcPCwT2T3PFQ2_2nn6ResultPv_vPv");
246 
247 
249 AddFriendRequestNoTitleAsync(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 
269 CheckSettingStatusAsync(unsigned char *, FPAsyncCallback, void *)
270  asm("CheckSettingStatusAsync__Q2_2nn2fpFPUcPFQ2_2nn6ResultPv_vPv");
271 
272 
275  asm("ClearLedEvent__Q2_2nn2fpFv");
276 
277 
279 DeleteFriendFlagsAsync(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 
294 DeleteSaveDirectory(unsigned int)
295  asm("DeleteSaveDirectory__Q2_2nn2fpFUi");
296 
297 
300  asm("DenyFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv");
301 
302 
304 DetectNatPropertiesAsync(unsigned char *, unsigned char *, unsigned int *, FPAsyncCallback, void *)
305  asm("DetectNatPropertiesAsync__Q2_2nn2fpFPUcT1PUiPFQ2_2nn6ResultPv_vPv");
306 
307 
310  asm("FinalizeAdmin__Q2_2nn2fpFv");
311 
312 
314 Finalize(void)
315  asm("Finalize__Q2_2nn2fpFv");
316 
317 
319 GetBasicInfoAsync(nn::fp::BasicInfo *, unsigned int *, unsigned int, FPAsyncCallback, void *)
320  asm("GetBasicInfoAsync__Q2_2nn2fpFPQ3_2nn2fp9BasicInfoPCUiUiPFQ2_2nn6ResultPv_vPv");
321 
322 
324 GetBlackListAccountId(char *outAccountIds, unsigned int *, unsigned int)
325  asm("GetBlackListAccountId__Q2_2nn2fpFPA17_cPCUiUi");
326 
327 
329 GetBlackListAdditionalTime(nn::fp::DateTime *, unsigned int *, unsigned int)
330  asm("GetBlackListAdditionalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
331 
332 
334 GetBlackListEx(nn::fp::BlackListedPrincipal *outBlackList, unsigned int *, unsigned int)
335  asm("GetBlackListEx__Q2_2nn2fpFPQ3_2nn2fp20BlackListedPrincipalPCUiUi");
336 
337 
339 GetBlackList(nn::act::PrincipalId *outBlackListPrincipalBuffer, unsigned int *outBlackListPrincipalBufferSize, unsigned int/*unk*/, unsigned int maxReadCount)
340  asm("GetBlackList__Q2_2nn2fpFPUiT1UiT3");
341 
342 
344 GetFriendAccountId(char *outAccountIdBuffer, nn::act::PrincipalId *principalBuffer, unsigned int accountIdBufferSize)
345  asm("GetFriendAccountId__Q2_2nn2fpFPA17_cPCUiUi");
346 
347 
349 GetFriendApprovalTime(nn::fp::DateTime *outDateTime, unsigned int *, unsigned int)
350  asm("GetFriendApprovalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
351 
352 
354 GetFriendComment(nn::fp::Comment *outComment, unsigned int *, unsigned int)
355  asm("GetFriendComment__Q2_2nn2fpFPQ3_2nn2fp7CommentPCUiUi");
356 
357 
359 GetFriendListAll(unsigned int *, unsigned int *, unsigned int, unsigned int)
360  asm("GetFriendListAll__Q2_2nn2fpFPUiT1UiT3");
361 
362 
364 GetFriendListEx(nn::fp::FriendData *outFriendData, nn::act::PrincipalId *principalBuffer, unsigned int count)
365  asm("GetFriendListEx__Q2_2nn2fpFPQ3_2nn2fp10FriendDataPCUiUi");
366 
367 
369 GetFriendList(nn::act::PrincipalId *outPrincipalBuffer, unsigned int *outPrincipalBufferReadCount, unsigned int unkn/*slotId maybe*/, unsigned int principalBufferSize)
370  asm("GetFriendList__Q2_2nn2fpFPUiT1UiT3");
371 
372 
374 GetFriendMii(FFLStoreData *outMiiData, nn::act::PrincipalId *principalBuffer, unsigned int count)
375  asm("GetFriendMii__Q2_2nn2fpFP12FFLStoreDataPCUiUi");
376 
377 
379 GetFriendPlayingGame(nn::fp::GameKey *outGameKey, nn::fp::GameModeDescription *outGameModeDescription, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount)
380  asm("GetFriendPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKeyPQ3_2nn2fp19GameModeDescriptionPCUiUi");
381 
382 
384 GetFriendPresenceEx(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount)
385  asm("GetFriendPresenceEx__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi");
386 
387 
389 GetFriendPresence(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int count)
390  asm("GetFriendPresence__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi");
391 
392 
394 GetFriendProfile(nn::fp::Profile *, nn::act::PrincipalId *principalBuffer, unsigned int readCount)
395  asm("GetFriendProfile__Q2_2nn2fpFPQ3_2nn2fp7ProfilePCUiUi");
396 
397 
399 GetFriendRelationship(uint8_t *outRelationshipNum, nn::act::PrincipalId *principalBuffer, unsigned int count)
400  asm("GetFriendRelationship__Q2_2nn2fpFPUcPCUiUi");
401 
402 
404 GetFriendRequestAccountId(char *outAccountIds, nn::act::PrincipalId *principalBuffer, unsigned int count)
405  asm("GetFriendRequestAccountId__Q2_2nn2fpFPA17_cPCUiUi");
406 
407 
409 GetFriendRequestListEx(nn::fp::FriendRequest *, nn::act::PrincipalId *principalBuffer, unsigned int count)
410  asm("GetFriendRequestListEx__Q2_2nn2fpFPQ3_2nn2fp13FriendRequestPCUiUi");
411 
412 
414 GetFriendRequestList(nn::act::PrincipalId *outBuffer, unsigned int *outReadCount, unsigned int/*unk*/, unsigned int count)
415  asm("GetFriendRequestList__Q2_2nn2fpFPUiT1UiT3");
416 
417 
419 GetFriendRequestMessageId(unsigned long long *outMessageIds, unsigned int *, unsigned int)
420  asm("GetFriendRequestMessageId__Q2_2nn2fpFPULPCUiUi");
421 
422 
424 GetFriendScreenName(char16_t outScreenName[nn::act::MiiNameSize], unsigned int *, unsigned int, bool, unsigned char *)
425  asm("GetFriendScreenName__Q2_2nn2fpFPA11_wPCUiUibPUc");
426 
427 
429 GetFriendSortTime(nn::fp::DateTime *, nn::act::PrincipalId *principalBuffer, unsigned int count)
430  asm("GetFriendSortTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi");
431 
432 
434 GetLastLedEvent(unsigned int *, unsigned int *)
435  asm("GetLastLedEvent__Q2_2nn2fpFPUiT1");
436 
437 
439 GetMyAccountId(char *outAccountId)
440  asm("GetMyAccountId__Q2_2nn2fpFPc");
441 
442 
445  asm("GetMyComment__Q2_2nn2fpFPQ3_2nn2fp7Comment");
446 
447 
449 GetMyMii(FFLStoreData *outMiiData)
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 
479 GetMyScreenName(char16_t *outScreenName)
480  asm("GetMyScreenName__Q2_2nn2fpFPw");
481 
482 
484 GetRecentPlayRecord(nn::fp::RecentPlayRecordEx *outPlayRecordBuffer, unsigned int *outPlayRecordBufferSize, unsigned int, unsigned int maxReadCount)
485  asm("GetRecentPlayRecord__Q2_2nn2fpFPQ3_2nn2fp18RecentPlayRecordExPUiUiT3");
486 
487 
489 GetRequestBlockSettingAsync(unsigned char *, unsigned int *, unsigned int, FPAsyncCallback, void *)
490  asm("GetRequestBlockSettingAsync__Q2_2nn2fpFPUcPCUiUiPFQ2_2nn6ResultPv_vPv");
491 
492 
493 bool
495  asm("HasLoggedIn__Q2_2nn2fpFv");
496 
497 
500  asm("InitializeAdmin__Q2_2nn2fpFv");
501 
502 
505  asm("Initialize__Q2_2nn2fpFv");
506 
507 
508 bool
510  asm("IsFriendRequestAllowed__Q2_2nn2fpFv");
511 
512 
513 bool
515  asm("IsInitializedAdmin__Q2_2nn2fpFv");
516 
517 
518 bool
520  asm("IsInitialized__Q2_2nn2fpFv");
521 
522 
523 bool
524 IsInvitation(nn::fp::GameMode *, nn::act::PrincipalId myPrincipalId, unsigned int/*unk*/)
525  asm("IsInvitation__Q2_2nn2fpFPCQ3_2nn2fp8GameModeUiT2");
526 
527 
528 bool
529 IsJoinableForFriendListViewer(nn::fp::FriendPresence *, unsigned int, unsigned long long)
530  asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUiUL");
531 
532 
533 bool
534 IsJoinableForFriendListViewer(nn::fp::Presence *, unsigned int, unsigned long long)
535  asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp8PresenceUiUL");
536 
537 
538 bool
539 IsJoinable(nn::fp::FriendPresence *, unsigned long long)
540  asm("IsJoinable__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUL");
541 
542 
543 bool
544 IsOnline(void)
545  asm("IsOnline__Q2_2nn2fpFv");
546 
547 
548 bool
550  asm("IsPreferenceValid__Q2_2nn2fpFv");
551 
552 
553 bool
555  asm("IsRecentPlayRecordCorrupted__Q2_2nn2fpFv");
556 
557 
558 bool
560  asm("IsRequestBlockForced__Q2_2nn2fpFv");
561 
562 
565  asm("LoginAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv");
566 
567 
569 Logout(void)
570  asm("Logout__Q2_2nn2fpFv");
571 
572 
574 MarkFriendRequestsAsReceivedAsync(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 
584 RemoveBlackListAsync(unsigned int, FPAsyncCallback, void *)
585  asm("RemoveBlackListAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
586 
587 
589 RemoveFriendAsync(unsigned int, FPAsyncCallback, void *)
590  asm("RemoveFriendAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv");
591 
592 
593 uint32_t
595  asm("ResultToErrorCode__Q2_2nn2fpFQ2_2nn6Result");
596 
597 
599 SetInvitationParameter(nn::fp::GameMode *, unsigned int *, unsigned int, bool)
600  asm("SetInvitationParameter__Q2_2nn2fpFPQ3_2nn2fp8GameModePCUiUib");
601 
602 
605  asm("SetLedEventMask__Q2_2nn2fpFUi");
606 
607 
609 SetNotificationHandler(uint32_t /*notificationFlags = 1 << NotificationType */, NotificationHandlerFn, void *)
610  asm("SetNotificationHandler__Q2_2nn2fpFUiPFQ3_2nn2fp16NotificationTypeUiPv_vPv");
611 
612 
614 UnlockParentalControlTemporarily(const char pinCode[5])
615  asm("UnlockParentalControlTemporarily__Q2_2nn2fpFPCc");
616 
617 
619 UpdateCommentAsync(const char16_t *, FPAsyncCallback, void *)
620  asm("UpdateCommentAsync__Q2_2nn2fpFPCwPFQ2_2nn6ResultPv_vPv");
621 
622 
624 UpdateGameModeDescription(const char16_t *description)
625  asm("UpdateGameModeDescription__Q2_2nn2fpFPCw");
626 
627 
629 UpdateGameModeEx(nn::fp::GameMode *, const char16_t *)
630  asm("UpdateGameModeEx__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
631 
632 
635  asm("UpdateGameModeForOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
636 
637 
639 UpdateGameMode(nn::fp::GameMode *, const char16_t *)
640  asm("UpdateGameMode__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw");
641 
642 
644 UpdateGameMode(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
nn::Result GetMyScreenName(char16_t *outScreenName) asm("GetMyScreenName__Q2_2nn2fpFPw")
GameMode gameMode
Definition: fp_cpp.h:129
nn::Result GetFriendMii(FFLStoreData *outMiiData, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendMii__Q2_2nn2fpFP12FFLStoreDataPCUiUi")
nn::Result GetMyPreference(nn::fp::Preference *outPreference) asm("GetMyPreference__Q2_2nn2fpFPQ3_2nn2fp10Preference")
uint64_t titleId
Definition: fp_cpp.h:67
nn::Result GetBlackListAdditionalTime(nn::fp::DateTime *, unsigned int *, unsigned int) asm("GetBlackListAdditionalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
nn::Result AddFriendAsync(char nnid[nn::act::AccountIdSize], FPAsyncCallback, void *) asm("AddFriendAsync__Q2_2nn2fpFPCcPFQ2_2nn6ResultPv_vPv")
uint32_t matchmakeSystemType
Definition: fp_cpp.h:110
nn::Result GetFriendSortTime(nn::fp::DateTime *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendSortTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
nn::Result RemoveBlackListAsync(unsigned int, FPAsyncCallback, void *) asm("RemoveBlackListAsync__Q2_2nn2fpFUiPFQ2_2nn6ResultPv_vPv")
char16_t myMiiName[nn::act::AccountIdSize]
Definition: fp_cpp.h:79
nn::Result GetFriendList(nn::act::PrincipalId *outPrincipalBuffer, unsigned int *outPrincipalBufferReadCount, unsigned int unkn, unsigned int principalBufferSize) asm("GetFriendList__Q2_2nn2fpFPUiT1UiT3")
nn::Result DeleteFriendFlagsAsync(const unsigned int *, unsigned int, unsigned int, FPAsyncCallback, void *) asm("DeleteFriendFlagsAsync__Q2_2nn2fpFPCUiUiT2PFQ2_2nn6ResultPv_vPv")
nn::Result GetMyAccountId(char *outAccountId) asm("GetMyAccountId__Q2_2nn2fpFPc")
nn::Result GetMyPresence(nn::fp::MyPresence *outMyPresence) asm("GetMyPresence__Q2_2nn2fpFPQ3_2nn2fp10MyPresence")
nn::act::PrincipalId GetMyPrincipalId(void) asm("GetMyPrincipalId__Q2_2nn2fpFv")
nn::Result CheckSettingStatusAsync(unsigned char *, FPAsyncCallback, void *) asm("CheckSettingStatusAsync__Q2_2nn2fpFPUcPFQ2_2nn6ResultPv_vPv")
nn::Result GetMyPlayingGame(nn::fp::GameKey *outPlayingGmae) asm("GetMyPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKey")
NotificationType
Definition: fp_cpp.h:24
bool IsInvitation(nn::fp::GameMode *, nn::act::PrincipalId myPrincipalId, unsigned int) asm("IsInvitation__Q2_2nn2fpFPCQ3_2nn2fp8GameModeUiT2")
nn::Result UpdateMiiAsync(FFLStoreData *, char16_t *, FPAsyncCallback, void *) asm("UpdateMiiAsync__Q2_2nn2fpFPC12FFLStoreDataPCwPFQ2_2nn6ResultPv_vPv")
nn::Result MarkFriendRequestsAsReceivedAsync(unsigned long long *, unsigned int, FPAsyncCallback, void *) asm("MarkFriendRequestsAsReceivedAsync__Q2_2nn2fpFPCULUiPFQ2_2nn6ResultPv_vPv")
nn::Result GetMyMii(FFLStoreData *outMiiData) asm("GetMyMii__Q2_2nn2fpFP12FFLStoreData")
nn::Result AddFriendRequestAsync(const nn::fp::RecentPlayRecordEx *, const char16_t *, FPAsyncCallback, void *) asm("AddFriendRequestAsync__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExPCwPFQ2_2nn6ResultPv_vPv")
nn::Result SetInvitationParameter(nn::fp::GameMode *, unsigned int *, unsigned int, bool) asm("SetInvitationParameter__Q2_2nn2fpFPQ3_2nn2fp8GameModePCUiUib")
RecentPlayRecord playRecord
Definition: fp_cpp.h:89
nn::Result ClearLedEvent(void) asm("ClearLedEvent__Q2_2nn2fpFv")
nn::Result SetLedEventMask(uint32_t) asm("SetLedEventMask__Q2_2nn2fpFUi")
uint8_t month
Definition: fp_cpp.h:49
nn::Result GetMyProfile(nn::fp::Profile *outProfile) asm("GetMyProfile__Q2_2nn2fpFPQ3_2nn2fp7Profile")
void(* NotificationHandlerFn)(nn::fp::NotificationType, nn::act::PrincipalId, void *)
Definition: fp_cpp.h:211
nn::Result GetFriendPresence(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendPresence__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi")
nn::Result AddRecentPlayRecordEx(const nn::fp::RecentPlayRecordEx *, unsigned int) asm("AddRecentPlayRecordEx__Q2_2nn2fpFPCQ3_2nn2fp18RecentPlayRecordExUi")
char16_t comment[17]
Definition: fp_cpp.h:181
bool IsJoinableForFriendListViewer(nn::fp::FriendPresence *, unsigned int, unsigned long long) asm("IsJoinableForFriendListViewer__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUiUL")
nn::Result SetNotificationHandler(uint32_t, NotificationHandlerFn, void *) asm("SetNotificationHandler__Q2_2nn2fpFUiPFQ3_2nn2fp16NotificationTypeUiPv_vPv")
uint8_t seconds
Definition: fp_cpp.h:53
nn::Result GetFriendListAll(unsigned int *, unsigned int *, unsigned int, unsigned int) asm("GetFriendListAll__Q2_2nn2fpFPUiT1UiT3")
uint32_t joinGameMode
Definition: fp_cpp.h:112
uint8_t platform
Definition: fp_cpp.h:132
bool IsOnline(void) asm("IsOnline__Q2_2nn2fpFv")
nn::Result InitializeAdmin(void) asm("InitializeAdmin__Q2_2nn2fpFv")
uint8_t region
Definition: fp_cpp.h:130
uint16_t year
Definition: fp_cpp.h:48
nn::Result DetectNatPropertiesAsync(unsigned char *, unsigned char *, unsigned int *, FPAsyncCallback, void *) asm("DetectNatPropertiesAsync__Q2_2nn2fpFPUcT1PUiPFQ2_2nn6ResultPv_vPv")
uint8_t milliseconds
Definition: fp_cpp.h:54
nn::Result GetFriendRequestListEx(nn::fp::FriendRequest *, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRequestListEx__Q2_2nn2fpFPQ3_2nn2fp13FriendRequestPCUiUi")
nn::Result GetFriendComment(nn::fp::Comment *outComment, unsigned int *, unsigned int) asm("GetFriendComment__Q2_2nn2fpFPQ3_2nn2fp7CommentPCUiUi")
uint8_t unk_0x00
Definition: fp_cpp.h:179
nn::Result DeleteSaveDirectory(unsigned int) asm("DeleteSaveDirectory__Q2_2nn2fpFUi")
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 GetBlackList(nn::act::PrincipalId *outBlackListPrincipalBuffer, unsigned int *outBlackListPrincipalBufferSize, unsigned int, unsigned int maxReadCount) asm("GetBlackList__Q2_2nn2fpFPUiT1UiT3")
char16_t presenceText[64]
Definition: fp_cpp.h:151
nn::Result GetFriendRelationship(uint8_t *outRelationshipNum, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRelationship__Q2_2nn2fpFPUcPCUiUi")
uint8_t day
Definition: fp_cpp.h:50
nn::Result Logout(void) asm("Logout__Q2_2nn2fpFv")
nn::act::PrincipalId ownerPrincipalId
only set when joinAvailabilityFlag is TRUE
Definition: fp_cpp.h:114
uint8_t minutes
Definition: fp_cpp.h:52
nn::Result AcceptFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("AcceptFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
BOOL joinAvailabilityFlag
Definition: fp_cpp.h:109
nn::Result GetFriendRequestAccountId(char *outAccountIds, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendRequestAccountId__Q2_2nn2fpFPA17_cPCUiUi")
nn::Result UpdateGameModeForOverlayApplication(nn::fp::GameMode *, const char16_t *) asm("UpdateGameModeForOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
nn::Result GetBlackListAccountId(char *outAccountIds, unsigned int *, unsigned int) asm("GetBlackListAccountId__Q2_2nn2fpFPA17_cPCUiUi")
nn::Result FinalizeAdmin(void) asm("FinalizeAdmin__Q2_2nn2fpFv")
nn::Result GetFriendPresenceEx(nn::fp::FriendPresence *, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount) asm("GetFriendPresenceEx__Q2_2nn2fpFPQ3_2nn2fp14FriendPresencePCUiUi")
uint32_t joinGroupId
Definition: fp_cpp.h:115
nn::Result Initialize(void) asm("Initialize__Q2_2nn2fpFv")
bool IsInitializedAdmin(void) asm("IsInitializedAdmin__Q2_2nn2fpFv")
nn::Result GetLastLedEvent(unsigned int *, unsigned int *) asm("GetLastLedEvent__Q2_2nn2fpFPUiT1")
nn::Result LoginAsync(FPAsyncCallback, void *) asm("LoginAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv")
nn::Result UpdateCommentAsync(const char16_t *, FPAsyncCallback, void *) asm("UpdateCommentAsync__Q2_2nn2fpFPCwPFQ2_2nn6ResultPv_vPv")
bool HasLoggedIn(void) asm("HasLoggedIn__Q2_2nn2fpFv")
uint16_t unk_0x8
Definition: fp_cpp.h:68
nn::Result Finalize(void) asm("Finalize__Q2_2nn2fpFv")
char16_t inGameName[nn::act::AccountIdSize]
Definition: fp_cpp.h:78
nn::Result AddFriendRequestNoTitleAsync(unsigned int, unsigned char, const char16_t *, unsigned char, const char16_t *, FPAsyncCallback, void *) asm("AddFriendRequestNoTitleAsync__Q2_2nn2fpFUiUcPCwT2T3PFQ2_2nn6ResultPv_vPv")
nn::Result RegisterAccountAsync(FPAsyncCallback, void *) asm("RegisterAccountAsync__Q2_2nn2fpFPFQ2_2nn6ResultPv_vPv")
nn::Result GetRecentPlayRecord(nn::fp::RecentPlayRecordEx *outPlayRecordBuffer, unsigned int *outPlayRecordBufferSize, unsigned int, unsigned int maxReadCount) asm("GetRecentPlayRecord__Q2_2nn2fpFPQ3_2nn2fp18RecentPlayRecordExPUiUiT3")
nn::Result DenyFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("DenyFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result AddRecentPlayRecord(const nn::fp::RecentPlayRecord *, unsigned int) asm("AddRecentPlayRecord__Q2_2nn2fpFPCQ3_2nn2fp16RecentPlayRecordUi")
bool IsRequestBlockForced(void) asm("IsRequestBlockForced__Q2_2nn2fpFv")
nn::Result DeleteFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("DeleteFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendRequestList(nn::act::PrincipalId *outBuffer, unsigned int *outReadCount, unsigned int, unsigned int count) asm("GetFriendRequestList__Q2_2nn2fpFPUiT1UiT3")
nn::Result GetFriendAccountId(char *outAccountIdBuffer, nn::act::PrincipalId *principalBuffer, unsigned int accountIdBufferSize) asm("GetFriendAccountId__Q2_2nn2fpFPA17_cPCUiUi")
nn::Result UpdatePlayingGame(nn::fp::GameKey *, unsigned int) asm("UpdatePlayingGame__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi")
nn::Result GetRequestBlockSettingAsync(unsigned char *, unsigned int *, unsigned int, FPAsyncCallback, void *) asm("GetRequestBlockSettingAsync__Q2_2nn2fpFPUcPCUiUiPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendRequestMessageId(unsigned long long *outMessageIds, unsigned int *, unsigned int) asm("GetFriendRequestMessageId__Q2_2nn2fpFPULPCUiUi")
uint8_t language
Definition: fp_cpp.h:131
bool IsInitialized(void) asm("IsInitialized__Q2_2nn2fpFv")
nn::Result GetBlackListEx(nn::fp::BlackListedPrincipal *outBlackList, unsigned int *, unsigned int) asm("GetBlackListEx__Q2_2nn2fpFPQ3_2nn2fp20BlackListedPrincipalPCUiUi")
nn::Result DeleteRecentPlayRecordAll(void) asm("DeleteRecentPlayRecordAll__Q2_2nn2fpFv")
uint8_t applicationArg[0x14]
Definition: fp_cpp.h:116
uint32_t joinGameId
Definition: fp_cpp.h:111
nn::Result UpdatePreferenceAsync(nn::fp::Preference *, FPAsyncCallback, void *) asm("UpdatePreferenceAsync__Q2_2nn2fpFPCQ3_2nn2fp10PreferencePFQ2_2nn6ResultPv_vPv")
nn::Result CancelFriendRequestAsync(nn::act::LocalFriendCode, FPAsyncCallback, void *) asm("CancelFriendRequestAsync__Q2_2nn2fpFULPFQ2_2nn6ResultPv_vPv")
nn::Result GetMyComment(nn::fp::Comment *outComment) asm("GetMyComment__Q2_2nn2fpFPQ3_2nn2fp7Comment")
nn::Result UnlockParentalControlTemporarily(const char pinCode[5]) asm("UnlockParentalControlTemporarily__Q2_2nn2fpFPCc")
bool IsFriendRequestAllowed(void) asm("IsFriendRequestAllowed__Q2_2nn2fpFv")
nn::Result UpdatePlayingOverlayApplication(nn::fp::GameKey *, unsigned int) asm("UpdatePlayingOverlayApplication__Q2_2nn2fpFPCQ3_2nn2fp7GameKeyUi")
nn::Result AddBlackListAsync(nn::act::PrincipalId, nn::fp::GameKey *, FPAsyncCallback, void *) asm("AddBlackListAsync__Q2_2nn2fpFUiPCQ3_2nn2fp7GameKeyPFQ2_2nn6ResultPv_vPv")
nn::Result UpdateGameMode(nn::fp::GameMode *, const char16_t *) asm("UpdateGameMode__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
nn::Result UpdateGameModeEx(nn::fp::GameMode *, const char16_t *) asm("UpdateGameModeEx__Q2_2nn2fpFPCQ3_2nn2fp8GameModePCw")
bool IsRecentPlayRecordCorrupted(void) asm("IsRecentPlayRecordCorrupted__Q2_2nn2fpFv")
bool IsJoinable(nn::fp::FriendPresence *, unsigned long long) asm("IsJoinable__Q2_2nn2fpFPCQ3_2nn2fp14FriendPresenceUL")
uint8_t hour
Definition: fp_cpp.h:51
nn::Result UpdateGameModeDescription(const char16_t *description) asm("UpdateGameModeDescription__Q2_2nn2fpFPCw")
nn::Result GetFriendPlayingGame(nn::fp::GameKey *outGameKey, nn::fp::GameModeDescription *outGameModeDescription, nn::act::PrincipalId *principalBuffer, unsigned int maxReadCount) asm("GetFriendPlayingGame__Q2_2nn2fpFPQ3_2nn2fp7GameKeyPQ3_2nn2fp19GameModeDescriptionPCUiUi")
nn::Result GetFriendProfile(nn::fp::Profile *, nn::act::PrincipalId *principalBuffer, unsigned int readCount) asm("GetFriendProfile__Q2_2nn2fpFPQ3_2nn2fp7ProfilePCUiUi")
nn::Result GetFriendListEx(nn::fp::FriendData *outFriendData, nn::act::PrincipalId *principalBuffer, unsigned int count) asm("GetFriendListEx__Q2_2nn2fpFPQ3_2nn2fp10FriendDataPCUiUi")
nn::Result GetFriendScreenName(char16_t outScreenName[nn::act::MiiNameSize], unsigned int *, unsigned int, bool, unsigned char *) asm("GetFriendScreenName__Q2_2nn2fpFPA11_wPCUiUibPUc")
nn::Result GetBasicInfoAsync(nn::fp::BasicInfo *, unsigned int *, unsigned int, FPAsyncCallback, void *) asm("GetBasicInfoAsync__Q2_2nn2fpFPQ3_2nn2fp9BasicInfoPCUiUiPFQ2_2nn6ResultPv_vPv")
nn::Result GetFriendApprovalTime(nn::fp::DateTime *outDateTime, unsigned int *, unsigned int) asm("GetFriendApprovalTime__Q2_2nn2fpFPQ3_2nn2fp8DateTimePCUiUi")
void(* FPAsyncCallback)(nn::Result, void *)
Definition: fp_cpp.h:210
uint32_t ResultToErrorCode(nn::Result) asm("ResultToErrorCode__Q2_2nn2fpFQ2_2nn6Result")
bool IsPreferenceValid(void) asm("IsPreferenceValid__Q2_2nn2fpFv")
nn::Result RemoveFriendAsync(unsigned int, FPAsyncCallback, void *) asm("RemoveFriendAsync__Q2_2nn2fpFUiPFQ2_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:15
int32_t BOOL
Definition: wut_types.h:7