CTR-Pia  5.4.3
Game Communication Engine
 全て クラス ネームスペース 関数 変数 型定義 列挙型 列挙型の値 ページ
sync_Api.h
1 /*--------------------------------------------------------------------------------*
2  Copyright (C)Nintendo All rights reserved.
3 
4  These coded instructions, statements, and computer programs contain proprietary
5  information of Nintendo and/or its licensed developers and are protected by
6  national and international copyright laws. They may not be disclosed to third
7  parties or copied or duplicated in any form, in whole or in part, without the
8  prior written consent of Nintendo.
9 
10  The content herein is highly confidential and should be handled accordingly.
11  *--------------------------------------------------------------------------------*/
12 
13 
14 #pragma once
15 
16 #include <nn/pia/sync/sync_Definitions.h>
17 
18 
19 // sync モジュールの非メンバ関数群です。
20 
21 namespace nn
22 {
23 namespace pia
24 {
25 namespace sync
26 {
27 /*! @name 初期化終了処理
28  @{
29  */
30 
31 /*!
32  @brief PiaSync モジュールを初期化します。
33  事前に @ref nn::pia::common::Initialize を実行する必要があります。
34 
35  @details sync モジュールが動的に確保し使用するメモリは @ref nn::pia::common::Initialize で渡したメモリから
36  確保されます。
37 
38  @return この API を適切なタイミングで呼び出していれば、成功の Result が返されます。
39  @retval nn::pia::ResultInvalidState 既にこの関数を実行し、初期化が完了している状態です。
40  */
42 
43 /*!
44  @brief セットアップの開始を宣言します。
45 
46  @details sync モジュール以下の初期化処理を実行する前に呼び出す必要があります。
47 
48  @attention 別のモジュールのセットアップ処理とバッティングすると正しく動作しません。<br>
49  @ref sync::BeginSetup 呼び出し後、sync モジュール以下の初期化処理を行い、速やかに @ref sync::EndSetup を呼び出してセットアップを完了する必要があります。
50 
51  @return この API を適切なタイミングで呼び出していれば、成功の Result が返されます。
52  @retval nn::pia::ResultNotInitialized sync::Initialize が呼ばれていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
53  @retval nn::pia::ResultInvalidState セットアップ期間中に再度呼び出しています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
54  */
55 Result BeginSetup(void);
56 
57 /*!
58  @cond PRIVATE
59  @brief 現在セットアップ期間中かを確認します。
60 
61  @details 本関数は内部処理のために用意したものですので、アプリケーションが呼び出す必要はありません。
62  <br>
63  @return @ref sync::BeginSetup 実行から @ref sync::EndSetup までの期間であれば true を返します。
64  */
65 bool IsSetupNow(void);
66 /** @endcond */
67 
68 /*!
69  @brief セットアップの終了を宣言します。
70 
71  @details sync モジュール以下の初期化処理を実行する後に呼び出す必要があります。<br>
72  この API 呼び出しにより、sync モジュールのシングルトンなどが消費するメモリを確定し、ライブラリ内部でのメモリ管理を最適化します。
73 
74  @attention 別のモジュールのセットアップ処理とバッティングすると正しく動作しません。<br>
75  @ref sync::BeginSetup 呼び出し後、sync モジュール以下の初期化処理を行い、速やかに @ref sync::EndSetup を呼び出してセットアップを完了する必要があります。
76 
77  @return この API を適切なタイミングで呼び出していれば、成功の Result が返されます。
78 
79  @retval nn::pia::ResultNotInitialized sync::Initialize が呼ばれていません。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
80  @retval nn::pia::ResultInvalidState この関数を呼び出すタイミングが誤っています。プログラミングエラーです。このエラーが返らないようにソースコードを修正してください。
81  */
82 Result EndSetup(void);
83 
84 /*!
85  @brief PiaSync モジュールが初期化された状態であるかどうかを返します。
86 
87  @return 初期化されていれば true、されていなければ false が返されます。
88  */
89 bool IsInitialized(void);
90 
91 /*!
92  @brief PiaSync モジュールを終了します。
93  @ref nn::pia::common::Finalize を実行する前に実行する必要があります。
94 
95  @details 本関数を実行する前に PiaSync モジュールのすべての処理を終了しておく必要があります。
96  なお、@ref sync::Initialize を実行していない状態では何もしません。
97  */
98 void Finalize(void);
99 /*!
100  end of name 初期化終了処理
101  @}
102  */
103 }
104 }
105 }