17 #include <pia/inet/inet_LanSessionTypes.h> 18 #include <pia/transport/transport_StationConnectionInfo.h> 19 #include <pia/session/session_ISessionInfo.h> 32 class LanSessionInfo :
public session::ISessionInfo
36 virtual ~LanSessionInfo();
38 virtual u32 GetGameMode()
const;
39 virtual u32 GetSessionId()
const;
40 virtual u32 GetCurrentParticipants()
const;
41 virtual u32 GetMinParticipants()
const;
42 virtual u32 GetMaxParticipants()
const;
43 virtual bool IsOpened()
const;
44 virtual nn::Result GetAttribute(u32* pAttribute, u8 idx)
const;
45 virtual LanSessionType GetSessionType()
const;
46 virtual nn::Result GetDescription(
wchar_t* pBuffer,
size_t size)
const;
47 virtual nn::Result GetDescriptionSize(
size_t* pSize)
const;
48 virtual nn::Result GetApplicationDataBuf(
void* pBuffer,
size_t size);
49 virtual nn::Result GetApplicationDataSize(
size_t* pSize);
51 virtual transport::StationConnectionInfo& GetStationConnectionInfo();
53 nn::Result Serialize(bit8* pBuffer,
size_t* pDataSize,
size_t bufferSize)
const;
54 nn::Result Deserialize(
const bit8* pData,
size_t dataSize);
55 size_t GetSerializedSize()
const;
57 virtual void SetGameMode(u32 gameMode);
58 virtual void SetSessionId(u32 sessionId);
59 virtual void SetCurrentParticipants(u32 participants);
60 virtual void SetMinParticipants(u32 participants);
61 virtual void SetMaxParticipants(u32 participants);
62 virtual void SetOpen(
bool isOpened);
63 virtual void SetSessionType(LanSessionType type);
64 virtual void SetAttribute(u32 attribute, u8 idx);
65 virtual void SetDescription(
const void* pDesc,
size_t size);
66 virtual void SetApplicationData(
const void* pData,
size_t size);
67 virtual void SetStationConnectionInfo(
const transport::StationConnectionInfo& info);
69 virtual void Trace(u64 flag);
71 virtual void Copy(
const LanSessionInfo& lanSessionInfo);
76 u32 m_CurrentParticipants;
77 u32 m_MinParticipants;
78 u32 m_MaxParticipants;
81 u32 m_Attribute[LAN_ATTRIBUTE_MAX_SIZE];
82 LanSessionType m_SessionType;
83 wchar_t m_Description[LAN_DESCRIPTION_DATA_BUFFER_MAX_SIZE];
84 size_t m_DescriptionSize;
85 u8 m_ApplicationData[LAN_APPLICATION_DATA_BUFFER_MAX_SIZE];
86 size_t m_ApplicationDataSize;
88 transport::StationConnectionInfo m_StationConnectionInfo;
90 LanSessionInfo(
const LanSessionInfo& r);
91 LanSessionInfo& operator=(
const LanSessionInfo& r);