#include "stdafx.h"
#include "CApp.h"


CApp* SSingleton<CApp>::ms_Singleton = NULL;

CApp::CApp() : m_is_out(0), m_userinfo(nullptr), m_proxy_mode(PROXY_MODE::sys_mode), m_route_mode(ROUT_MODE::cn_mode)
{

}

CApp::~CApp()
{
	UnInit();
}

void CApp::Init()
{
	if (!m_userinfo)
	{
		m_userinfo = new CUserInfo();
	}

}

void CApp::UnInit() {
	if (m_userinfo)
	{
		delete m_userinfo;
		m_userinfo = NULL;
	}
}

bool CApp::DataToUserInfo(std::string data)
{
	if (m_userinfo)
	{
		return m_userinfo->Init(data);
	}
	return false;
}

CUserInfo* CApp::GetUserinfo()
{
	return m_userinfo;
}

void CApp::SetOut(int out)
{
	m_is_out = out;
}

int CApp::GetOut()
{
	return m_is_out;
}

void CApp::SetSysMode(PROXY_MODE mode)
{
	m_proxy_mode = mode;
}

PROXY_MODE CApp::GetSysMode()
{
	return m_proxy_mode;
}

void CApp::SetRouteMode(ROUT_MODE mode)
{
	m_route_mode = mode;
}

ROUT_MODE CApp::GetRouteMode()
{
	return m_route_mode;
}
