AM Daemon ライブラリリファレンス
PlayEndParam.h
[詳解]
1 /// @file
2 /// @brief プレイ終了に用いるパラメータを保持するクラス PlayEndParam のヘッダ。
3 ///
4 /// Copyright(C)SEGA
5 
6 #ifndef AMDAEMON_PLAYENDPARAM_H
7 #define AMDAEMON_PLAYENDPARAM_H
8 
9 #include "amdaemon/env.h"
11 
12 #include <utility>
13 
14 namespace amdaemon
15 {
16 /// @addtogroup g_sequence
17 /// @{
18 
19  /// @brief プレイ終了に用いるパラメータを保持するクラス。
20  /// @see Sequence#endPlay
22  {
23  public:
24  /// コンストラクタ。
26 
27  /// @brief コピーコンストラクタ。
28  /// @param[in] src コピー元。
29  PlayEndParam(const PlayEndParam& src) : PlayParamHolder(src) { }
30 
31  /// @brief ムーブコンストラクタ。
32  /// @param[in] src ムーブ元。
33  PlayEndParam(PlayEndParam&& src) : PlayParamHolder(std::move(src)) { }
34 
35  /// @brief コピー代入演算子のオーバロード。
36  /// @param[in] r 右辺値。
37  /// @return 自身の参照。
39  {
41  return *this;
42  }
43 
44  /// @brief ムーブ代入演算子のオーバロード。
45  /// @param[in] r 右辺値。
46  /// @return 自身の参照。
48  {
49  PlayParamHolder::operator=(std::move(r));
50  return *this;
51  }
52 
53  // 下記は暗黙の定義を用いる。
54  //‾PlayEndParam() = default;
55 
56  /// @brief ALL.Net課金プレイ開始パラメータを設定する。
57  /// @param[in] kindCode 種別コード。 0 以上 654 以下。
58  /// @param[in] statusCode 状態コード。 0 以上 99 以下。
59  /// @see AccountingUnit#beginPlay
60  ///
61  /// @exception Exception
62  /// - 引数 kindCode に 654 より大きい値を指定した場合。
63  /// - 引数 statusCode に 99 より大きい値を指定した場合。
64  ///
65  /// このパラメータを設定するとALL.Net課金プレイ開始処理が行われるようになる。
66  ///
67  /// Sequence クラスのメンバ関数 Sequence#getPlayAccountingTiming の戻り値によって
68  /// 下記のような違いがある。
69  ///
70  /// - 戻り値が PlayAccountingTiming::Normal である場合
71  /// - このパラメータは無視される。
72  /// - 戻り値が PlayAccountingTiming::AtBegin である場合
73  /// - このパラメータは無視される。
74  /// - 戻り値が PlayAccountingTiming::AtEnd である場合
75  /// - このパラメータを設定した場合、メンバ関数 #setAccountingEnd によって
76  /// ALL.Net課金プレイ終了パラメータも設定しなければならない。
77  void setAccountingBegin(std::uint32_t kindCode, std::uint32_t statusCode)
78  {
79  PlayParamHolder::setAccountingBegin(kindCode, statusCode);
80  }
81 
82  /// @brief ALL.Net課金プレイ終了パラメータを設定する。
83  /// @param[in] kindCode 種別コード。 0 以上 654 以下。
84  /// @param[in] statusCode 状態コード。 0 以上 99 以下。
85  /// @param[in] itemCount 商品数。 0 以上 255 以下。 0 ならば課金しない。
86  /// @see AccountingUnit#endPlay
87  ///
88  /// @exception Exception
89  /// - 引数 kindCode に 654 より大きい値を指定した場合。
90  /// - 引数 statusCode に 99 より大きい値を指定した場合。
91  /// - 引数 itemCount に 255 より大きい値を指定した場合。
92  ///
93  /// このパラメータを設定するとALL.Net課金プレイ終了処理が行われるようになる。
94  ///
95  /// Sequence クラスのメンバ関数 Sequence#getPlayAccountingTiming の戻り値によって
96  /// 下記のような違いがある。
97  ///
98  /// - 戻り値が PlayAccountingTiming::Normal である場合
99  /// - プレイ開始時やコンティニュー時に課金プレイを開始済みである場合、
100  /// 必ずこのパラメータを設定しなければならない。
101  /// - 課金プレイ中ではない場合、このパラメータは無視される。
102  /// - 戻り値が PlayAccountingTiming::AtBegin である場合
103  /// - このパラメータは無視される。
104  /// - 戻り値が PlayAccountingTiming::AtEnd である場合
105  /// - このパラメータを設定した場合、メンバ関数 #setAccountingBegin によって
106  /// ALL.Net課金プレイ開始パラメータも設定しなければならない。
108  std::uint32_t kindCode,
109  std::uint32_t statusCode,
110  std::uint32_t itemCount)
111  {
112  PlayParamHolder::setAccountingEnd(kindCode, statusCode, itemCount);
113  }
114 
115  private:
116  /// @brief 内部パラメータを取得する。
117  /// @return 内部パラメータ。
118  /// @note ライブラリ内部で用いられる。アプリ側から利用する必要はない。
119  const InnerPlayParam& getInnerParam() const final override
120  {
122  }
123  };
124 
125 /// @}
126 } // namespace amdaemon
127 
128 #endif // AMDAEMON_PLAYENDPARAM_H
void setAccountingBegin(std::uint32_t kindCode, std::uint32_t statusCode)
ALL.Net課金プレイ開始パラメータを設定する。
PlayEndParam()
コンストラクタ。
Definition: PlayEndParam.h:25
PlayEndParam(const PlayEndParam &src)
コピーコンストラクタ。
Definition: PlayEndParam.h:29
Definition: AccessCode.h:202
Daemonライブラリの環境定義を行うヘッダ。
PlayEndParam & operator=(PlayEndParam &&r)
ムーブ代入演算子のオーバロード。
Definition: PlayEndParam.h:47
PlayEndParam & operator=(const PlayEndParam &r)
コピー代入演算子のオーバロード。
Definition: PlayEndParam.h:38
AM Daemon ライブラリクラス群の基底名前空間。
Definition: Log.h:13
virtual const InnerPlayParam & getInnerParam() const
内部パラメータを取得する。
void setAccountingEnd(std::uint32_t kindCode, std::uint32_t statusCode, std::uint32_t itemCount)
ALL.Net課金プレイ終了パラメータを設定する。
Definition: PlayEndParam.h:107
プレイ状態変更に用いるパラメータを保持する基底クラス PlayParamHolder のヘッダ。
プレイ状態変更に用いるパラメータを保持する基底クラス。
Definition: PlayParamHolder.h:32
PlayParamHolder & operator=(const PlayParamHolder &r)
コピー代入演算子のオーバロード。
プレイ終了に用いるパラメータを保持するクラス。
Definition: PlayEndParam.h:21
void setAccountingEnd(std::uint32_t kindCode, std::uint32_t statusCode, std::uint32_t itemCount)
ALL.Net課金プレイ終了パラメータを設定する。
PlayEndParam(PlayEndParam &&src)
ムーブコンストラクタ。
Definition: PlayEndParam.h:33
void setAccountingBegin(std::uint32_t kindCode, std::uint32_t statusCode)
ALL.Net課金プレイ開始パラメータを設定する。
Definition: PlayEndParam.h:77