1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-30 05:07:46 +00:00

Minimal project for zone

This commit is contained in:
Mordred Admin 2018-06-06 16:36:54 +02:00
parent b9363d834d
commit 34f3b36b9f
6 changed files with 147 additions and 3 deletions

View file

@ -44,7 +44,7 @@ configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/src/common/Version.cpp.in"
#add_subdirectory( "src/libraries/sapphire/datReader" )
#add_subdirectory( "src/libraries/sapphire/mysqlConnector" )
add_subdirectory( "src/common" )
#add_subdirectory( "src/servers" )
add_subdirectory( "src/sapphire_zone" )
#add_subdirectory( "src/tools/exd_common_gen" )
#add_subdirectory( "src/tools/exd_struct_gen" )

View file

@ -25,8 +25,10 @@ ExternalProject_Add( mysqlConnector_external
INSTALL_DIR ${MYSQLCONNECTOR_ROOT}/bin
BUILD_COMMAND ${BUILD_EXEC} )
message( ${MYSQLCONNECTOR_ROOT}/src/MysqlConnector/src/ )
add_library( mysqlConnector STATIC IMPORTED )
set_target_properties( mysqlConnector PROPERTIES IMPORTED_LOCATION ${MYSQLCONNECTOR_LIB_DIR}/mysqlConnector.a )
set_target_properties( mysqlConnector PROPERTIES IMPORTED_LOCATION ${MYSQLCONNECTOR_ROOT}/src/MysqlConnector/src/libmysqlConnector.a )
add_dependencies( mysqlConnector mysqlConnector_external )
#############################################################################
@ -46,7 +48,7 @@ ExternalProject_Add( xivdat_external
BUILD_COMMAND ${BUILD_EXEC} )
add_library( xivdat STATIC IMPORTED )
set_target_properties( xivdat PROPERTIES IMPORTED_LOCATION ${XIVDAT_LIB_DIR}/xivdat.a )
set_target_properties( xivdat PROPERTIES IMPORTED_LOCATION ${XIVDAT_ROOT}/src/XivDat/src/libxivdat.a )
add_dependencies( xivdat xivdat_external )
#############################################################################

View file

@ -0,0 +1,24 @@
cmake_minimum_required(VERSION 3.0.2)
cmake_policy(SET CMP0015 NEW)
cmake_policy(SET CMP0014 OLD)
project( sapphire_zone )
file(GLOB SERVER_PUBLIC_INCLUDE_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
/*.h
)
file(GLOB SERVER_SOURCE_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}
*.c*
)
add_executable( sapphire_zone ${SERVER_PUBLIC_INCLUDE_FILES} ${SERVER_SOURCE_FILES} )
target_link_libraries( sapphire_zone common )
if (UNIX)
target_link_libraries( sapphire_zone pthread )
target_link_libraries( sapphire_zone dl )
endif()
target_include_directories( sapphire_zone PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}" )

View file

@ -0,0 +1,63 @@
#include "ZoneServer.h"
#include <Version.h>
#include <Logging/Logger.h>
#include <Config/XMLConfig.h>
#include <MySqlBase.h>
#include <Connection.h>
#include <Network/Connection.h>
#include <Network/Hive.h>
#include <Exd/ExdDataGenerated.h>
#include <Network/PacketContainer.h>
#include <Database/DbLoader.h>
#include <Database/CharaDbConnection.h>
#include <Database/DbWorkerPool.h>
#include <Database/PreparedStatement.h>
#include <Util/Util.h>
#include <boost/make_shared.hpp>
#include <thread>
Core::ServerZone::ServerZone( const std::string& configPath ) :
m_configPath( configPath ),
m_bRunning( true ),
m_lastDBPingTime( 0 )
{
}
Core::ServerZone::~ServerZone()
{
}
bool Core::ServerZone::loadSettings( int32_t argc, char* argv[] )
{
return true;
}
void Core::ServerZone::run( int32_t argc, char* argv[] )
{
}
void Core::ServerZone::printBanner() const
{
}
void Core::ServerZone::mainLoop()
{
while( isRunning() )
{
this_thread::sleep_for( chrono::milliseconds( 50 ) );
auto currTime = Util::getTimeSeconds();
}
}
bool Core::ZoneServer::isRunning() const
{
return m_bRunning;
}

View file

@ -0,0 +1,46 @@
#ifndef __GAMESERVER_H
#define __GAMESERVER_H
#include <Common.h>
#include <boost/shared_ptr.hpp>
#include <mutex>
#include <map>
namespace Core {
class ServerZone
{
public:
ServerZone( const std::string& configPath );
~ServerZone();
void run( int32_t argc, char* argv[] );
bool loadSettings( int32_t argc, char* argv[] );
void mainLoop();
bool isRunning() const;
void printBanner() const;
private:
uint16_t m_port;
std::string m_ip;
int64_t m_lastDBPingTime;
bool m_bRunning;
std::string m_configPath;
std::map< uint32_t, uint32_t > m_zones;
};
}
#endif

View file

@ -0,0 +1,9 @@
#include <stdio.h>
#include "ZoneServer.h"
int main()
{
return 0;
}