CTR Pia  4.11.3
Game Communication Engine
session_JoinSessionSetting.h
1 /*---------------------------------------------------------------------------*
2  Project: Pia
3  File: session_JoinSessionSetting.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/session/session_definitions.h>
18 
19 #include <pia/session/session_types.h>
20 
21 namespace nn
22 {
23 namespace pia
24 {
25 namespace session
26 {
27 
28 class ISessionInfo;
29 /*!
30  @brief Base class that manages settings specific to session joining.
31  @details This class is never instantiated by an application. Use a class that inherits this class.
32  @date 2014-02-27 Initial version.
33 
34 @if CTR_DOC
35  @see nn::pia::local::UdsJoinSessionSetting
36 @endif
37  @see nn::pia::inet::NexJoinSessionSetting
38 */
40 {
41 public:
42  // The destructor.
43  virtual ~JoinSessionSetting();
44 
45 /*!
46  @cond PRIVATE
47  @brief Gets information for the target session to join.
48  @return Returns the target session information.
49 */
50  virtual const ISessionInfo* GetSessionInfoPtr() const;
51  //! @endcond
52 
53 /*!
54  @brief Sets target session information.
55  @details Sets target session information.
56  Set the session information that was found using <tt>@ref Session::BrowseSessionAsync</tt>.
57  @param[in] pSessionInfo The target session's information.
58 
59  @see Session::JoinSessionAsync, Session::BrowseSessionAsync
60 */
61  virtual void SetSessionInfoPtr(ISessionInfo* pSessionInfo);
62 
63 /*!
64  @cond PRIVATE
65  @brief Prints information that is useful for debugging.
66 */
67  virtual void Trace(u64 flag) const;
68  //! @endcond
69 
70 protected:
71  ISessionInfo* m_pSessionInfo;
72 
73  // The constructor.
75 
76 private:
77  // The copy constructor is sealed.
79 
80  // The assignment operator is sealed.
81  JoinSessionSetting& operator=(const JoinSessionSetting&);
82 };
83 }
84 }
85 } // end of namespace nn::pia::session
Definition: assert.h:115
An interface to the session&#39;s information.
Definition: session_ISessionInfo.h:32
Base class that manages settings specific to session joining.
Definition: session_JoinSessionSetting.h:39
virtual void SetSessionInfoPtr(ISessionInfo *pSessionInfo)
Sets target session information.
This is the common base class used inside the Pia library.
Definition: common_RootObject.h:40