全局结构体
- 1. BOOT_OPTION(BootOption)
- 2. sSysLogFilePath
- 3. sIsEnableLogFile
- 4. sHalApiIsReady
- 5. sHalApiLogCallback
- 6. sHalApiHardType
- 7. HardType
- 8. sIsInitReady
- 9. SYS_CONFIG_DATABASE(sSysConfigDatabase)
- 10. PCM_AUTOSCAN_CONFIG(PcmAutoScan)
- 11. TT_FSU_CONFIG_EX(FsuConfigEx)
- 12. sOutLevelLimit
- 13. sSaveLevelLimit
- 14. sSaveDays
- 15. SYS_NET_ADV_CONFIG(NetAdvSet)
- 16. sPtrNetServerSafeReboot
- 17. IPCONFCMDEX(SysNetSet)
- 18. SYS_NET_IF_CONFIG(SysNetIfConfig)
- 19. TT_FSU_CONFIG(FsuConfig)
- 20. TT_FSU_CONFIG(FsuConfig)
- 21. WATCHDOG_SERVER(sWatchdogServer)
1. BOOT_OPTION(BootOption)
命令行:/dvs/VideoCodec workmode=PM5000TT
ProcessCmdLineArg(argc,argv,&BootOption);
typedef struct tBOOT_OPTION {BOOL IsGetConfig; // 0BOOL IsNFS_Boot; // 0BOOL IsDynamicIP; // 0BOOL IsSetEthAddr; // 0BOOL IsBackgroundMode; // 1BOOL IsNetComMode; // 0BOOL bIsEnableSwitchMode; // 0BOOL bIsSwitchMode; // 0BOOL bIsSwitchMaster; // 0BOOL bIsStartSecondEth; // 0BOOL bIsStartSwitchServer; // 0BOOL bIsSetSecondEthHwAddr; // 0BOOL bIsWireless3G; // 1BOOL dwVpnMode; // 0DWORD m_dwVpnConfigMode; // 0BOOL bIsPM5000TT; // 1BYTE EthAddr[6]; // {0,0,0,0,0,0}DWORD DevType; // 0DWORD DevIP; // 0DWORD NetMask; // 0DWORD Gateway; // 0DWORD NetIfMode; // 0DWORD ConfigObjID; // 0DWORD GpioMapMode; // 6 }BOOT_OPTION,*PBOOT_OPTION; BOOT_OPTION BootOption;
2. sSysLogFilePath
执行:
JSYA_LES_InitLogPath(SYS_LOG_FILE_PATH)
static char sSysLogFilePath[1024]; // "/srv/ftp/PIC/logs/"
3. sIsEnableLogFile
执行:
JSYA_LES_InitLogPath(SYS_LOG_FILE_PATH)
static BOOL sIsEnableLogFile=FALSE; // FALSE
4. sHalApiIsReady
执行:
HalApi_Init(HAL_API_HARD_TYPE_PM5000TT,JSYA_LES_LogPrintf);
static HAL_API_BOOL sHalApiIsReady=HAL_API_FALSE; //1
5. sHalApiLogCallback
执行:
HalApi_Init(HAL_API_HARD_TYPE_PM5000TT,JSYA_LES_LogPrintf);
static PHAL_API_LOG_FUNC sHalApiLogCallback=HalApiDummyLog; //JSYA_LES_LogPrintf 是打印日志函数
6. sHalApiHardType
执行:
HalApi_Init(HAL_API_HARD_TYPE_PM5000TT,JSYA_LES_LogPrintf);
static unsigned int sHalApiHardType=HAL_API_HARD_TYPE_PM5000TT; //HAL_API_HARD_TYPE_PM5000TT = 0
7. HardType
执行:
HardType=HalApi_GetSysHardType();
DWORD HardType; // 0
8. sIsInitReady
执行:
ConfigServerConfigDataBaseInit(&DefaultInit);
static BOOL sIsInitReady=FALSE; //1
9. SYS_CONFIG_DATABASE(sSysConfigDatabase)
/data/.BaseNetConfSyncFlag
存储值为1(基础网络配置同步标志)/etc/resolv.conf
中添加相应的 DNS 的 IP
执行:
ConfigServerConfigDataBaseInit(&DefaultInit);
typedef struct tSYS_CONFIG_DATABASE {DWORD /*4*/ dwDatabaseVerify; //0(默认) DWORD /*4*/ dwDatabaseSize; //11500(默认) DWORD /*4*/ dwDatabaseID; //0x10090723(默认)/* SYSNETCONF = 24 */U32(SYSNETCONF) SysNetConfig.IPAddr; //192.168.1.50(默认) | 192.168.1.123("/data/config.db"->SuConfigExTable)U32(SYSNETCONF) SysNetConfig.IPMask; //255.255.255.0(默认) | 255.255.255.0("/data/config.db"->SuConfigExTable)U32(SYSNETCONF) SysNetConfig.GateWay; //192.168.1.50(默认) | 192.168.1.64 ("/data/config.db"->SuConfigExTable)U32(SYSNETCONF) SysNetConfig.DevType; //0x01010B01(默认)U16(SYSNETCONF) SysNetConfig.wReserved; //0(默认) | 4(执行:ConfigServerBindGatewayToSecondEthEnable(TRUE))U8 (SYSNETCONF) SysNetConfig.EthAddr[6];//{0x00,0x20,0x7B,0x00,0x00,0x00}(默认) | {0x00,0x20,0x7B,0x00,0x01,0x23}("/data/config.db"->fsuinfotable)/* SYS_NET_MANAGER_CONFIG = 36*/U32(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevDebugServerIP; //INADDR_BROADCAST(默认)U32(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevManagerServerIP; //0(默认)U32(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevLogServerIP; //0(默认)U32(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevVideoMultiCastIP; //0(默认) U32(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevNTP_ServerIP; //0(默认) U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevDebugServerPort; //50011(默认)U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevManagerServerPort; //9006(默认)U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevLogServerPort; //9005(默认)U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevVideoMultiCastPort; //0(默认) U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevNTP_ServerPort; //123(默认) U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevManagerPollTimer; //10(默认)U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevNTP_PollTimer; //64(默认)U16(SYS_NET_MANAGER_CONFIG) SysNetManagerConfig.DevBaseNetInfoTimer; //65535(默认) /* SYS_AVD_CON_DATABASE = 1264*/ U32(SYS_AVD_CON_DATABASE) SysCodecConfig.UserID; //0U32(SYS_AVD_CON_DATABASE.REMOTENETMODECONCMD) SysCodecConfig.RemoteNetMode.AudioMode; //1(默认) U32(SYS_AVD_CON_DATABASE.REMOTENETMODECONCMD) SysCodecConfig.RemoteNetMode.NetMode; //1(默认)U32(SYS_AVD_CON_DATABASE.LOCALUSERCONCMD) SysCodecConfig.LocalUser[2].UserLevel; //0U32(SYS_AVD_CON_DATABASE.NETMODECONCMD) SysCodecConfig.LocalNetMode[2].DestDevIPID; //0U32(SYS_AVD_CON_DATABASE.NETMODECONCMD) SysCodecConfig.LocalNetMode[2].NetType; //0U32(SYS_AVD_CON_DATABASE.LOCALVIDEOAUDIOCONCMD) SysCodecConfig.LocalVideoAudio[2].AudioMode; //0U32(SYS_AVD_CON_DATABASE.LOCALVIDEOAUDIOCONCMD) SysCodecConfig.LocalVideoAudio[2].VideoFormat; //0U32(SYS_AVD_CON_DATABASE.LOCALVIDEOAUDIOCONCMD) SysCodecConfig.LocalVideoAudio[2].VideoBitRate; //0 U32(SYS_AVD_CON_DATABASE.LOCALVIDEOAUDIOCONCMD) SysCodecConfig.LocalVideoAudio[2].VideoQuality; //0 U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD) SysCodecConfig.SerConfig.LocalSerNum; //8(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD) SysCodecConfig.SerConfig.RemoteSerNum; //8(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].WorkMode; //{0x300 ... 0x300}(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].BaudRate; //{192 ... 192 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].SerUnit; //{1 ... 8 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].Parity; //{'N' ... 'N' }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].DataBit; //{8 ... 8 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.LocalSerTable[8].StopBit; //{1 ... 1 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].WorkMode; //{0x300 ... 0x300}(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].BaudRate; //{192 ... 192 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].SerUnit; //{1 ... 8 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].Parity; //{'N' ... 'N' }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].DataBit; //{8 ... 8 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD.SERCONFIG) SysCodecConfig.SerConfig.RemoteSerTable[8].StopBit; //{1 ... 1 }(默认)U32(SYS_AVD_CON_DATABASE.SERTIMECONFIGCMD) SysCodecConfig.SerTimeConfig.SerNum; //8(默认)U16(SYS_AVD_CON_DATABASE.SERTIMECONFIGCMD.SERTIMECONFIG) SysCodecConfig.SerTimeConfig.SerTimeTable[8].ResponseTime; //{0 ... 0 }(默认)U16(SYS_AVD_CON_DATABASE.SERTIMECONFIGCMD.SERTIMECONFIG) SysCodecConfig.SerTimeConfig.SerTimeTable[8].RecvTimeout; //{10 ... 10 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX) SysCodecConfig.SerConfigEx.LocalSerNumEx; //32(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX) SysCodecConfig.SerConfigEx.RemoteSerNumEx; //7(默认) U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].WorkMode; //{0x300 ... 0x300 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].wReserved; //{0 ... 0 }(默认)U32(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].BaudRate; //{9600 ... 9600 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].SerUnit; //{1 ... 32 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].Parity; //{'N' ... 'N' }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].DataBit; //{8 ... 8 }(默认) U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].StopBit; //{1 ... 1 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].ResponseTime; //{0 ... 0 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.LocalSerTableEx[32].RecvTimeout; //{10 ... 10 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].WorkMode; //{0x300 ... 0x300 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].wReserved; //{0 ... 0 }(默认)U32(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].BaudRate; //{9600 ... 9600 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].SerUnit; //{1 ... 32 }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].Parity; //{'N' ... 'N' }(默认)U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].DataBit; //{8 ... 8 }(默认) U8 (SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].StopBit; //{1 ... 1 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].ResponseTime;//{0 ... 0 }(默认)U16(SYS_AVD_CON_DATABASE.SERCONFIGCMD_EX.SERCONFIG_EX) SysCodecConfig.SerConfigEx.RemoteSerTableEx[32].RecvTimeout; //{10 ... 10 }(默认)/* SYS_NET_ADV_CONFIG = 208*/DWORD(SYS_NET_ADV_CONFIG) SysNetAdvConfig.dwNetIfMode; //0(默认)