56 lines
1.4 KiB
C++
56 lines
1.4 KiB
C++
#ifndef _GD_CPP_H_
|
||
#define _GD_CPP_H_
|
||
|
||
#include "GdCPP_Exports.h"
|
||
#include <atlstr.h> // for CString
|
||
// 常用标准C++库
|
||
#include <cstdint>
|
||
#include <string>
|
||
#include <vector>
|
||
#include <list>
|
||
#include <filesystem>
|
||
namespace fs = std::filesystem;
|
||
|
||
// 常用功能
|
||
#include "AlignSize.h"
|
||
#include "CTic.h"
|
||
#include "properties.h"
|
||
#include "sVersion.h" // 放在这目的是让GdCpp的sVersion优先于IGrabber目录里的
|
||
#include "StringHelper.h"
|
||
|
||
// 常用第三方库函数
|
||
#include "json\ksjson.h"
|
||
#include "spdlog/spdlog.h"
|
||
#include "spdlog/fmt/chrono.h" // support for user defined types
|
||
#include "spdlog/fmt/fmt.h"
|
||
#include "spdlog/fmt/ostr.h" // support for user defined types
|
||
#include "spdlog/fmt/xchar.h"
|
||
#include "spdlog/fmt/bundled/printf.h"
|
||
|
||
#include "Tools.h"
|
||
|
||
#ifdef SPDLOG_COMPILED_LIB
|
||
#ifdef _DEBUG
|
||
#pragma comment(lib, "spdlogd.lib")
|
||
#else
|
||
#pragma comment(lib, "spdlog.lib")
|
||
#endif
|
||
#endif
|
||
|
||
/**
|
||
*
|
||
* 定义宏PURE_VIRTUAL_CLASS,加在一个纯虚类前面,告诉VC编译器不创建虚表,减小生成的代码,
|
||
* 并避免链接错误"error LNK2001: 无法解析的外部符号 __purecall"
|
||
*
|
||
* 对于linux下的GCC编译器不需要这个指定,PURE_VIRTUAL_CLASS定义为空,
|
||
*/
|
||
|
||
#ifndef PURE_VIRTUAL_CLASS
|
||
#ifdef _MSC_VER // VC编译器
|
||
#define PURE_VIRTUAL_CLASS __declspec(novtable)
|
||
#else // 其它编译器
|
||
#define PURE_VIRTUAL_CLASS
|
||
#endif
|
||
#endif
|
||
|
||
#endif //_KS_CPP_H_
|