CTR Pia  4.11.3
Game Communication Engine
local.h
1 /*---------------------------------------------------------------------------*
2  Project: Pia
3  File: local.h
4 
5  Copyright Nintendo. 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 
14 
15 #pragma once
16 
17 #include <pia/definitions.h>
18 
19 /*!
20  @namespace nn::pia::local
21  @brief Represents the <tt>PiaLocal</tt> namespace.
22 
23  @date 2014-04-04 Removed the <tt>UdsNode</tt> function. Use the <tt>LocalNetwork</tt> function instead.
24  @date 2012-10-29 Categorized member functions to improve readability of the API reference.
25  @date 2012-10-19 Modified comments in the header field in accordance with changes to the format of the API reference.
26  @date 2012-07-19 Changed the name of the "NEX Local Communication Linking Feature" to "NetZ Local Communication Linking Feature."
27  @date 2012-07-10 Deleted old <tt>Result</tt>-related codes that had been left in the <tt>local</tt> namespace for compatibility reasons.
28  @date 2012-06-01 Revised the description of parameters (second parameter) passed to the <tt>local::UdsUpdateEventCallback</tt> function.
29  @date 2012-05-01 Added the header files included in <tt>local.h</tt>. All headers required to use the <tt>local</tt> module are included if you include <tt>local.h</tt>. (This does not include the NEX local network link feature.)
30  @date 2012-04-10 Initial version. Revision histories are listed individually for Pia 1.7.0 or later.
31 */
32 namespace nn
33 {
34 namespace pia
35 {
36 namespace local
37 {
38 /*! @name Finish Initialization
39  @{
40 */
41 
42 /*!
43  @brief Initializes the <tt>local</tt> module.
44 
45  @details Execute the <tt>nn::pia::common::Initialize</tt> function in advance.
46 
47  @return Returns a <tt>Result</tt> value indicating success if initialization succeeds.
48 
49  @retval ResultInvalidState Indicates that <tt>nn::pia::common</tt> has not been initialized.
50  @retval ResultAlreadyInitialized Indicates that the module is already initialized.
51 */
52 nn::Result Initialize();
53 
54 /*!
55  @brief Gets whether the <tt>local</tt> module is initialized.
56 
57  @return Returns <tt>true</tt> if initialized, or <tt>false</tt> otherwise.
58 */
59 bool IsInitialized(void);
60 
61 /*!
62  @brief Declares the start of setup.
63 
64  @details Call this function before initializing objects in the <tt>local</tt> module (before calling <tt>@ref LocalNetwork::CreateInstance</tt> and <tt>@ref LocalNetwork::Initialize</tt>).
65 
66  @attention This function does not operate correctly if it is called during another module's setup processing.
67  After calling the <tt>@ref BeginSetup</tt> function, perform initialization in the <tt>local</tt> module, and promptly call the <tt>@ref EndSetup</tt> function to complete setup.
68 
69  @return Returns a <tt>Result</tt> value indicating success if it is called at the right time.
70 
71  @retval ResultNotInitialized Indicates that the <tt>local</tt> module has not been initialized.
72  @retval ResultInvalidState Indicates that the function was called at the wrong time.
73 */
74 nn::Result BeginSetup(void);
75 
76 /*!
77  @brief Declares the end of setup.
78 
79  @details Call this function after initializing objects below the <tt>local</tt> module (after calling <tt>@ref LocalNetwork::CreateInstance</tt> and <tt>@ref LocalNetwork::Initialize</tt>).
80  Calling this function configures memory to be used by the <tt>local</tt> module singletons and optimizes memory management within the library.
81 
82  @attention This function does not operate correctly if it is called during another module's setup processing.
83  After calling the <tt>@ref BeginSetup</tt> function, perform initialization in the <tt>local</tt> module, and promptly call the <tt>@ref EndSetup</tt> function to complete setup.
84 
85  @return Returns a <tt>Result</tt> value indicating success if it is called at the right time.
86 
87  @retval ResultNotInitialized Indicates that the <tt>local</tt> module has not been initialized.
88  @retval ResultInvalidState Indicates that the function was called at the wrong time.
89 */
90 nn::Result EndSetup(void);
91 
92 /// @cond PRIVATE
93 bool IsDuringSetup(void);
94 /// @endcond
95 
96 /*!
97  @brief Finalizes the <tt>local</tt> module.
98 
99  @details Processing of all <tt>PiaLocal</tt> modules must be finalized before executing this function.
100  Calling this function has no effect if the <tt>@ref nn::pia::local::Initialize</tt> function has not been called.
101 */
102 void Finalize(void);
103 /*!
104  end of Finish Initialization section.
105  @}
106 */
107 }
108 }
109 }
110 
111 #include <pia/local/local_LocalNetwork.h>
112 #include <pia/local/local_UdsNetworkSetting.h>
113 #include <pia/local/local_UdsNetworkFactory.h>
114 #include <pia/local/local_LocalFacade.h>
115 #include <pia/local/local_LocalSessionInfo.h>
116 #include <pia/local/local_LocalSessionTypes.h>
117 #include <pia/local/local_LocalSessionSearchCriteria.h>
118 #include <pia/local/local_LocalSessionStationInfo.h>
119 #include <pia/local/local_UdsCreateSessionSetting.h>
120 #include <pia/local/local_UdsJoinSessionSetting.h>
121 #include <pia/local/local_UdsSessionInfo.h>
Definition: assert.h:115
nn::Result Initialize()
Initializes the local module.
void Finalize(void)
Finalizes the local module.
nn::Result EndSetup(void)
Declares the end of setup.
bool IsInitialized(void)
Gets whether the local module is initialized.
nn::Result BeginSetup(void)
Declares the start of setup.