1 /*---------------------------------------------------------------------------*
2   Project:  Horizon
3   File:     ac_Api.h
4 
5   Copyright (C)2009-2012 Nintendo Co., Ltd.  All rights reserved.
6 
7   These coded instructions, statements, and computer programs contain
8   proprietary information of Nintendo of America Inc. and/or Nintendo
9   Company Ltd., and are protected by Federal copyright law. They may
10   not be disclosed to third parties or copied or duplicated in any form,
11   in whole or in part, without the prior written consent of Nintendo.
12 
13   $Rev: 46687 $
14  *---------------------------------------------------------------------------*/
15 
16 #ifndef NN_AC_CTR_AC_API_H_
17 #define NN_AC_CTR_AC_API_H_
18 
19 /* Please see man pages for details
20 
21 */
22 
23 #include <nn/os/os_Event.h>
24 #include <nn/ac/ac_Result.h>
25 #include <nn/ac/CTR/ac_Types.h>
26 
27 #ifdef __cplusplus
28 
29 namespace nn {
30 namespace ac {
31 namespace CTR {
32 
33     /* Please see man pages for details
34 
35 
36 
37 
38 
39 
40 
41 
42 
43 
44 
45     */
46     Result Initialize();
47 
48     /* Please see man pages for details
49 
50 
51 
52 
53 
54 
55     */
56     Result Finalize();
57 
58     /* Please see man pages for details
59 
60 
61 
62     */
63     bool IsInitialized();
64 
65     /* Please see man pages for details
66 
67 
68 
69 
70 
71 
72 
73 
74 
75 
76 
77 
78 
79 
80     */
81     Result CreateDefaultConfig( Config* config );
82 
83     /* Please see man pages for details
84 
85 
86 
87 
88 
89 
90 
91 
92 
93 
94 
95 
96 
97 
98     */
99     Result DebugSetApType( Config* config, u32 aptype );
100 
101     /* Please see man pages for details
102 
103 
104 
105 
106 
107 
108 
109 
110 
111 
112 
113 
114 
115 
116 
117 
118 
119     */
120     Result DebugSetNetworkArea( Config* config, NetworkArea networkArea );
121 
122     /* Please see man pages for details
123 
124 
125 
126 
127 
128 
129 
130 
131 
132 
133 
134 
135 
136 
137 
138 
139 
140 
141 
142 
143 
144 
145 
146 
147 
148 
149 
150 
151 
152 
153 
154 
155 
156 
157 
158 
159 
160 
161 
162 
163 
164 
165 
166 
167     */
168     Result Connect( Config& config );
169 
170     /* Please see man pages for details
171 
172 
173 
174 
175 
176 
177 
178 
179 
180 
181 
182 
183 
184 
185 
186 
187 
188 
189 
190 
191 
192 
193 
194 
195 
196 
197 
198 
199 
200 
201 
202 
203 
204 
205     */
206     Result ConnectAsync( Config& config, os::Event* event );
207 
208     /* Please see man pages for details
209 
210 
211 
212 
213 
214 
215 
216 
217 
218 
219 
220 
221 
222 
223 
224 
225 
226 
227 
228 
229 
230 
231 
232 
233 
234     */
235     Result GetConnectResult();
236 
237     /* Please see man pages for details
238 
239 
240 
241 
242 
243 
244 
245 
246 
247 
248 
249 
250 
251 
252 
253 
254 
255 
256 
257 
258     */
259     Result CancelConnectAsync();
260 
261     /* Please see man pages for details
262 
263 
264 
265 
266 
267 
268 
269 
270 
271 
272 
273     */
274     Result GetLinkLevel( LinkLevel* linkLevel );
275 
276     /* Please see man pages for details
277 
278 
279 
280 
281 
282 
283 
284     */
285     LinkLevel GetLinkLevel();
286 
287     /* Please see man pages for details
288 
289 
290 
291 
292 
293 
294 
295 
296 
297 
298 
299 
300 
301 
302 
303 
304     */
305     Result DebugSetNetworkSetting1( const u8 ssid[], u8 ssidLength, SecurityMode securityMode, const u8 key[], u8 keyLen );
306 
307     /* Please see man pages for details
308 
309 
310 
311 
312 
313 
314 
315 
316 
317 
318     */
319     Result Close();
320 
321     /* Please see man pages for details
322 
323 
324 
325 
326 
327 
328 
329 
330 
331 
332 
333 
334 
335 
336 
337     */
338     Result CloseAsync( os::Event* event );
339 
340     /* Please see man pages for details
341 
342 
343 
344 
345 
346 
347 
348 
349 
350 
351     */
352     Result GetCloseResult();
353 
354     /* Please see man pages for details
355 
356 
357 
358 
359 
360 
361 
362 
363 
364 
365 
366 
367     */
368     Result GetLastErrorCode( u32* errorCode );
369 
370     /* Please see man pages for details
371 
372 
373 
374 
375 
376 
377 
378 
379 
380 
381 
382     */
383     Result GetLastDetailErrorCode( u32* errorCode );
384 
385     /* Please see man pages for details
386 
387 
388 
389 
390 
391 
392 
393 
394 
395 
396 
397     */
398     bool IsConnected();
399 
400     /* Please see man pages for details
401 
402 
403 
404 
405 
406 
407 
408 
409 
410 
411 
412 
413 
414     */
415     Result GetConnectingNetworkArea( NetworkArea* area );
416 
417     /* Please see man pages for details
418 
419 
420 
421 
422 
423 
424 
425 
426 
427 
428 
429 
430 
431 
432 
433 
434 
435 
436     */
437     Result GetConnectingApType( ApType* apType );
438 
439     /* Please see man pages for details
440 
441 
442 
443 
444 
445 
446 
447 
448 
449 
450     */
451     Result GetConnectingNintendoZoneBeaconSubset( NintendoZoneBeaconSubset* beacon );
452 
453     /* Please see man pages for details
454 
455 
456 
457 
458 
459 
460 
461 
462 
463 
464     */
465     Result GetConnectingHotspotSubset( HotspotSubset* hotspot );
466 
467     /* Please see man pages for details
468 
469 
470 
471 
472 
473 
474 
475 
476     */
477     Result RegisterDisconnectEvent(nn::os::Event* event);
478 
479     namespace
480     {
481         const char PORT_NAME_USER[]      = "ac:u";
482     }
483 }
484 }
485 }
486 
487 #endif // __cplusplus
488 
489 // Below is the C declaration
490 
491 #include <nn/util/detail/util_CLibImpl.h>
492 
493 /* Please see man pages for details
494 
495 
496 
497 
498 
499 */
500 
501 /* Please see man pages for details
502 
503 */
504 NN_EXTERN_C nnResult nnacInitialize(void);
505 
506 /* Please see man pages for details
507 
508 */
509 NN_EXTERN_C nnResult nnacFinalize(void);
510 
511 /* Please see man pages for details
512 
513 */
514 NN_EXTERN_C nnResult nnacCreateDefaultConfig( nnacConfig* config );
515 
516 /* Please see man pages for details
517 
518 */
519 NN_EXTERN_C nnResult nnacDebugSetNetworkArea( nnacConfig* config, nnacNetworkArea networkArea );
520 
521 /* Please see man pages for details
522 
523 */
524 NN_EXTERN_C nnResult nnacConnect( nnacConfig* config );
525 
526 /* Please see man pages for details
527 
528 */
529 NN_EXTERN_C nnResult nnacConnectAsync( nnacConfig* config, nnosEvent* event );
530 
531 /* Please see man pages for details
532 
533 */
534 NN_EXTERN_C nnResult nnacCancelConnectAsync(void);
535 
536 /* Please see man pages for details
537 
538 */
539 NN_EXTERN_C nnResult nnacGetConnectResult(void);
540 
541 /* Please see man pages for details
542 
543 */
544 NN_EXTERN_C nnResult nnacDebugSetNetworkSetting1( const u8 ssid[], u8 ssidLength, nnacSecurityMode securityMode, const u8 key[], u8 keyLen );
545 
546 /* Please see man pages for details
547 
548 */
549 NN_EXTERN_C nnResult nnacDebugFlushNetworkSetting(void);
550 
551 /* Please see man pages for details
552 
553 */
554 NN_EXTERN_C nnResult nnacClose(void);
555 
556 /* Please see man pages for details
557 
558 */
559 NN_EXTERN_C nnResult nnacCloseAsync( nnosEvent* event );
560 
561 /* Please see man pages for details
562 
563 */
564 NN_EXTERN_C nnResult nnacGetCloseResult(void);
565 
566 /* Please see man pages for details
567 
568 */
569 NN_EXTERN_C nnResult nnacGetLinkLevel( nnacLinkLevel* linkLevel );
570 
571 /* Please see man pages for details
572 
573 */
574 NN_EXTERN_C nnResult nnacGetLastErrorCode( u32* errorCode );
575 
576 /* Please see man pages for details
577 
578 */
579 NN_EXTERN_C nnResult nnacGetLastDetailErrorCode( u32* errorCode );
580 
581 /* Please see man pages for details
582 
583 */
584 NN_EXTERN_C nnResult nnacGetConnectingApType( nnacApType* apType );
585 
586 /* Please see man pages for details
587 
588 */
589 NN_EXTERN_C nnResult nnacGetConnectingNintendoZoneBeaconSubset( nnacNintendoZoneBeaconSubset* beacon );
590 
591 /* Please see man pages for details
592 
593 */
594 NN_EXTERN_C nnResult nnacGetConnectingHotspotSubset( nnacHotspotSubset* hotspot );
595 
596 /* Please see man pages for details
597 
598 */
599 NN_EXTERN_C nnResult nnacRegisterDisconnectEvent( nnosEvent* event );
600 
601 /*
602 
603 */
604 
605 #endif  // ifndef NN_AC_CTR_AC_API_H_
606