mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-04-25 14:07:46 +00:00
Added a linkshell representation class
This commit is contained in:
parent
ebd11f1a7c
commit
c9c86dacef
2 changed files with 157 additions and 0 deletions
95
src/servers/Server_Zone/Linkshell/Linkshell.cpp
Normal file
95
src/servers/Server_Zone/Linkshell/Linkshell.cpp
Normal file
|
@ -0,0 +1,95 @@
|
|||
#include "Linkshell.h"
|
||||
|
||||
Core::Linkshell::Linkshell( uint32_t id,
|
||||
const std::string &name,
|
||||
uint32_t masterId,
|
||||
const std::set<uint32_t> &members,
|
||||
const std::set<uint32_t> &leaders,
|
||||
const std::set<uint32_t> &invites ) :
|
||||
m_linkshellId( id ),
|
||||
m_name( name ),
|
||||
m_masterCharacterId( masterId ),
|
||||
m_memberIds( members ),
|
||||
m_leaderIds( leaders ),
|
||||
m_inviteIds( invites )
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
uint32_t Core::Linkshell::getId() const
|
||||
{
|
||||
return m_linkshellId;
|
||||
}
|
||||
|
||||
uint32_t Core::Linkshell::getMasterId() const
|
||||
{
|
||||
return m_masterCharacterId;
|
||||
}
|
||||
|
||||
const std::set< uint32_t >& Core::Linkshell::getMemberIdList() const
|
||||
{
|
||||
return m_memberIds;
|
||||
}
|
||||
|
||||
std::set< uint32_t >& Core::Linkshell::getMemberIdList()
|
||||
{
|
||||
return m_memberIds;
|
||||
}
|
||||
|
||||
const std::string& Core::Linkshell::getName() const
|
||||
{
|
||||
return m_name;
|
||||
}
|
||||
|
||||
const std::set< uint32_t >& Core::Linkshell::getLeaderIdList() const
|
||||
{
|
||||
return m_leaderIds;
|
||||
}
|
||||
|
||||
std::set< uint32_t >& Core::Linkshell::getLeaderIdList()
|
||||
{
|
||||
return m_leaderIds;
|
||||
}
|
||||
|
||||
const std::set< uint32_t >& Core::Linkshell::getInviteIdList() const
|
||||
{
|
||||
return m_inviteIds;
|
||||
}
|
||||
|
||||
std::set< uint32_t > &Core::Linkshell::getInviteIdList()
|
||||
{
|
||||
return m_inviteIds;
|
||||
}
|
||||
|
||||
void Core::Linkshell::addMember( uint32_t memberId )
|
||||
{
|
||||
m_memberIds.insert( memberId );
|
||||
}
|
||||
|
||||
void Core::Linkshell::removeMember( uint32_t memberId )
|
||||
{
|
||||
m_memberIds.erase( memberId );
|
||||
}
|
||||
|
||||
void Core::Linkshell::addLeader( uint32_t memberId )
|
||||
{
|
||||
m_leaderIds.insert( memberId );
|
||||
}
|
||||
|
||||
void Core::Linkshell::removeLeader( uint32_t memberId )
|
||||
{
|
||||
m_leaderIds.erase( memberId );
|
||||
}
|
||||
|
||||
void Core::Linkshell::addInvite( uint32_t memberId )
|
||||
{
|
||||
m_inviteIds.insert( memberId );
|
||||
}
|
||||
|
||||
void Core::Linkshell::removeInvite( uint32_t memberId )
|
||||
{
|
||||
m_inviteIds.erase( memberId );
|
||||
}
|
||||
|
||||
|
||||
|
62
src/servers/Server_Zone/Linkshell/Linkshell.h
Normal file
62
src/servers/Server_Zone/Linkshell/Linkshell.h
Normal file
|
@ -0,0 +1,62 @@
|
|||
#ifndef CORE_LINKSHELL_H
|
||||
#define CORE_LINKSHELL_H
|
||||
|
||||
#include <Server_Common/Common.h>
|
||||
#include <set>
|
||||
|
||||
namespace Core
|
||||
{
|
||||
|
||||
class Linkshell
|
||||
{
|
||||
private:
|
||||
/*! unique ID of the linkshell */
|
||||
uint32_t m_linkshellId;
|
||||
/*! ID of the master character */
|
||||
uint32_t m_masterCharacterId;
|
||||
/*! ID list of all linkshell members */
|
||||
std::set< uint32_t > m_memberIds;
|
||||
/*! Name of the linkshell */
|
||||
std::string m_name;
|
||||
/*! List of member IDs with leader rank */
|
||||
std::set< uint32_t > m_leaderIds;
|
||||
/*! list of IDs of pending character invites */
|
||||
std::set< uint32_t > m_inviteIds;
|
||||
|
||||
public:
|
||||
Linkshell( uint32_t id,
|
||||
const std::string& name,
|
||||
uint32_t masterId,
|
||||
const std::set< uint32_t >& members,
|
||||
const std::set< uint32_t >& leaders,
|
||||
const std::set< uint32_t >& invites );
|
||||
|
||||
uint32_t getId() const;
|
||||
|
||||
const std::string& getName() const;
|
||||
|
||||
uint32_t getMasterId() const;
|
||||
|
||||
const std::set< uint32_t >& getMemberIdList() const;
|
||||
std::set< uint32_t >& getMemberIdList();
|
||||
|
||||
const std::set< uint32_t >& getLeaderIdList() const;
|
||||
std::set< uint32_t >& getLeaderIdList();
|
||||
|
||||
const std::set< uint32_t >& getInviteIdList() const;
|
||||
std::set< uint32_t >& getInviteIdList();
|
||||
|
||||
void addMember( uint32_t memberId );
|
||||
void removeMember( uint32_t memberId );
|
||||
|
||||
void addLeader( uint32_t memberId );
|
||||
void removeLeader( uint32_t memberId );
|
||||
|
||||
void addInvite( uint32_t memberId );
|
||||
void removeInvite( uint32_t memberId );
|
||||
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
#endif //SAPPHIRE_LINKSHELL_H
|
Loading…
Add table
Reference in a new issue