📄 main.h
字号:
/*
main.h
*/
#if !defined(FCDDATARECEIVER_INCLUDED_MAIN_)
#define FCDDATARECEIVER_INCLUDED_MAIN_
#define _WIN32_
#ifdef _WIN32_
#undef _LINUX_
#include <windows.h>
#endif
#ifdef _LINUX_
#undef _WIN32_
typedef int SOCKET;
typedef unsigned char BYTE;
typedef unsigned long DWORD;
#define FALSE 0
#define SOCKET_ERROR (-1)
#define INVALID_SOCKET (SOCKET)(~0)
typedef void *HANDLE;
#endif
#include <stdio.h>
#include <assert.h>
#include <io.h>
#include <string>
#include <map>
#include <vector>
#include <deque>
#include <time.h>
#include <fstream>
#include <direct.h>
#include <iostream>
using namespace std;
//////////////////////////////////////////////////////
const int DEALAFTERRECVCNT = 50; //接收数据的次数,到达数后处理
const int ONEITEMMAXLENGTH = 256; //设定接收到的数据单条最大的字节数
typedef vector<string> VCTString;
typedef vector<unsigned int> VCTUINT;
typedef deque<unsigned int>DQUINT;
typedef map<string, void*> mapStringToPtr;
struct FCDINFORMATION
{
unsigned long serial; //序号
char cpyid[8]; //公司ID
char carid[24]; //车辆ID
char datatime[16];//日期时间
double coorx84; //84X坐标
double coory84; //84Y坐标
long coorx02; //02X坐标
long coory02; //02Y坐标
float speed; //速度
unsigned short direct; //方向
unsigned long status; //状态
unsigned long events; //事件
int height; //高度
};
struct DATAFIXLENFOMAT //固定长度数据结构
{
char cType; //字段类型
unsigned int uBeginByte; //开始位置
unsigned int uLength; //长度
};
struct DATAUNFIXFORMAT //非固定长度数据结构
{
char cType; //字段类型
char cSymbol; //分隔符
};
struct DATACHANGE //数值改变
{
int iPlace; //在VECTOR中的位置,
char cOperator; //操作符:+,-,×,/
float fNumber; //操作数
};
struct REFORMATPARA
{
string IPAddress;
unsigned short Port;
int Protocol;
int isServer;
string UserName;
string PsWord;
string selfIP;
unsigned short selfport;
int IsFixLen;
vector <DATAFIXLENFOMAT> vctDataFixFormat;
vector <DATAUNFIXFORMAT> DataUnFixFormat;
vector <DATACHANGE> vctDataChange;
VCTUINT vctDataOrder;
string OutputFormat;
string BgnSymbol;
string EndSymbol;
string DataTimeFormat;
int DataTimeAdd;
int SaveOrgData;
int SaveErrData;
string OrgSavePath;
string ErrSavePath;
string LogSavePath;
};
//////////////////////////////////////////////////////
//INI 文件的内容
#define INIFILENAME "Config.ini"
#define SEC_AREACONF "各地输入配置"
#define SEC_SENDTOINFO "DataSendto"
#define KEY_SECTIONNAME "SECTIONNAME"
#define KEY_IP "IPAddr" //ip address
#define KEY_PORT "Port" //port number
#define KEY_PROTOCOL "Protocol" //UDP,TCP or HTTP, FTP
#define KEY_ISSERVER "IsServer" //if working as a server
#define KEY_USERID "UserID"
#define KEY_PSWORD "pw"
#define KEY_SELFIP "selfIP"
#define KEY_SELFPORT "selfport"
#define KEY_IFFIXLEN "IfFixLengthData" //是否为固定长度的数据
#define KEY_DATAFORMAT "DataFormat" //数据的格式
#define KEY_DATAStart "DataStart" //记录数据的开始标志
#define KEY_DATAEnd "DataEnd" //记录数据的结束标志
#define KEY_DATAChang "DataChange" //数据转换
#define KEY_DATAORDER "DataOPOrder" //输出顺序
#define KEY_DATAOPFORM "DataOpFormat" //数据输出格式
#define KEY_DATATIMEFORMAT "DateTimeFormat"
#define KEY_DATEADD "DateAdd" //加时间的小时数
#define KEY_SAVEORIGINAL "SaveOriginalData" //是否保存原始数据
#define KEY_SAVEERRDATA "SaveErrorData" //是否保存错误数据
#define KEY_ORIPATH "OrgDataPath" //原始数据保存路径
#define KEY_ERRPATH "ErrDataPath" //错误数据保存路径
#define KEY_LOGPATH "LogPath" //log文件保存路径
#define KEY_DATASENDTO "Sendto"
//////////////////////////////////////////////////////
#endif // !defined(FCDDATARECEIVER_INCLUDED_MAIN_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -