FireBirdLib - Topfield TMS PVR TAP Programming Library
CrashCheck_Startup.c
Go to the documentation of this file.
1#include "FBLib_debug.h"
2
3void CrashCheck_Startup(char *TAPName, tCrashCheckStatus *CCStatus)
4{
6
7 int RebootCount = 0;
8 INILOCATION INILocation;
9
10 if(TAPName)
11 {
13 HDD_ChangeDir("/ProgramFiles/Settings");
14
15 INILocation = INIOpenFile(CRASHCHECKINI, NULL);
16 RebootCount = INIGetInt(TAPName, 0, 0, 100);
17 RebootCount++;
18 INISetInt(TAPName, RebootCount);
19 if(INILocation == INILOCATION_NewFile) INILocation = INILOCATION_AtSettings;
20 INISaveFile(CRASHCHECKINI, INILocation, NULL);
22
24 }
25
26 if(CCStatus)
27 {
28 if(RebootCount < 2) *CCStatus = CCS_Ok;
29 else if(RebootCount < 4) *CCStatus = CCS_RebootDetected;
30 else *CCStatus = CCS_ExcessiveRebootsDetected;
31 }
32
33 TRACEEXIT();
34}
void CrashCheck_Startup(char *TAPName, tCrashCheckStatus *CCStatus)
#define CRASHCHECKINI
Definition: FBLib_debug.h:9
bool HDD_ChangeDir(const char *Dir)
Definition: HDD_ChangeDir.c:5
void INICloseFile(void)
Definition: INICloseFile.c:5
long int INIGetInt(char *Key, long int DefaultValue, long int MinValue, long int MaxValue)
Definition: INIGetInt.c:7
INILOCATION INIOpenFile(char *FileName, char *AppName)
Definition: INIOpenFile.c:9
bool INISaveFile(char *FileName, INILOCATION INILocation, char *AppName)
Definition: INISaveFile.c:6
void INISetInt(char *Key, long int Value)
Definition: INISetInt.c:4
bool HDD_TAP_PushDir(void)
#define TRACEEXIT()
Definition: libFireBird.h:1244
INILOCATION
Definition: libFireBird.h:2000
@ INILOCATION_AtSettings
Definition: libFireBird.h:2005
@ INILOCATION_NewFile
Definition: libFireBird.h:2002
#define TRACEENTER()
Definition: libFireBird.h:1243
tCrashCheckStatus
Definition: libFireBird.h:1248
@ CCS_Ok
Definition: libFireBird.h:1249
@ CCS_RebootDetected
Definition: libFireBird.h:1250
@ CCS_ExcessiveRebootsDetected
Definition: libFireBird.h:1251
bool HDD_TAP_PopDir(void)
Definition: HDD_TAP_PopDir.c:3