CTR-Pia  5.4.3
Game Communication Engine
 全て クラス ネームスペース 関数 変数 型定義 列挙型 列挙型の値 ページ
local_LdnSessionSearchCriteria.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/local/local_Definitions.h>
17 #include <nn/pia/local/local_LocalSessionSearchCriteria.h>
18 
19 #if NN_PIA_NINTENDOSDK
20 
21 #include <nn/pia/local/local_LdnNetworkSetting.h>
22 
23 namespace nn
24 {
25 namespace pia
26 {
27 namespace local
28 {
29 /*!
30  @brief LDN ライブラリ(ローカル通信)を利用したネットワークのセッションを検索する際に使用する検索条件のクラスです。
31  @details 検索結果として得られるセッションの最大数は nn::pia::session::Session::CreateInstance 呼び出し時に
32  指定する nn::pia::session::Session::Setting 構造体の browsedSessionInfoListNum の値になります。
33  */
34 class LdnSessionSearchCriteria : public LocalSessionSearchCriteria
35 {
36 public:
37  // コンストラクタ。
38  LdnSessionSearchCriteria()
39  : LocalSessionSearchCriteria(),
40  m_LdnScanNetworkSetting()
41  {
42  }
43 
44  // デストラクタ。
45  virtual ~LdnSessionSearchCriteria()
46  {
47  }
48 
49  virtual const LocalScanNetworkSetting* GetLocalScanNetworkSetting() const
50  {
51  return &m_LdnScanNetworkSetting;
52  }
53 
54  /*!
55  @brief 検索時のフィルタリング条件を指定します。
56  @param[in] scanFilterType 検索時のフィルタリング条件です。
57  */
58  void SetScanFilterType(LdnScanFilterType scanFilterType)
59  {
60  m_LdnScanNetworkSetting.scanFilterType = scanFilterType;
61  }
62 
63  /*!
64  @brief 検索条件にローカル通信識別子を指定します。指定するローカル通信識別子はアプリケーション管理データに登録されている必要があります。
65  @param[in] localCommunicationId 検索条件に指定するローカル通信識別子です。
66  */
67  void SetLocalCommunicationId(uint64_t localCommunicationId)
68  {
69  m_LdnScanNetworkSetting.localCommunicationId = localCommunicationId;
70  }
71 
72  /*!
73  @brief 検索条件にシーン識別子を指定します。
74  @param[in] sceneId 検索条件に指定するシーン識別子です。
75  */
76  void SetSceneId(uint16_t sceneId)
77  {
78  m_LdnScanNetworkSetting.sceneId = sceneId;
79  }
80 
81  /*!
82  @brief 検索条件にチャンネルを指定します。
83  @param[in] channel 検索条件に指定するチャンネルです。0(自動), 1,6,11ch のいずれかを指定する必要があります。製品機で指定した場合は無視され、常に 0(自動)になります。開発機では 5GHz 帯の 36,40,44,48ch も指定できます。5GHz 帯は 0 を指定してもスキャンの対象になりません。
84  */
85  void SetChannel(int16_t channel)
86  {
87  m_LdnScanNetworkSetting.channel = channel;
88  }
89 
90  /*!
91  @cond PRIVATE
92  */
93  virtual bool IsHit(const LocalNetworkDescription* pDescription) const;
94  //!@endcond
95 
96  /*!
97  @brief 代入演算子です。
98  @param[in] rhs 代入するオブジェクトです。
99  @return 本オブジェクトへの参照。
100  */
101  LdnSessionSearchCriteria& operator=(const LdnSessionSearchCriteria& rhs);
102 
103  /*!
104  @brief 設定をコピーします。
105  @param[in] rhs コピー元のオブジェクトです。
106  */
107  void Copy(const LdnSessionSearchCriteria& rhs);
108 
109  /*!
110  @brief コピーコンストラクタ。。
111  @param[in] rhs コピー元のオブジェクトです。
112  */
113  LdnSessionSearchCriteria(const LdnSessionSearchCriteria& rhs);
114 
115  /*!
116  @brief 設定をリセットします。
117  */
118  virtual void Reset();
119 
120  // デバッグに有用な情報をプリント。
121  virtual void Trace(uint64_t flag) const
122  {
123  NN_PIA_UNUSED(flag);
124  }
125 
126 protected:
127  LdnScanNetworkSetting m_LdnScanNetworkSetting;
128 
129 private:
130 };
131 }
132 }
133 } // end of namespace nn::pia::local
134 #endif