1 #include "LogFile.h"
2
3 #include "RAI.h"
4 #include "LegacyCpp/IAICallback.h"
5
6 #include <string>
7 //#include <fstream>
8 //#include <stdlib.h>
9 //#include <iostream>
10 #include <stdio.h>
11
12 using std::string;
13
cLogFile(IAICallback * cb,string sFilename,bool bAppend)14 cLogFile::cLogFile(IAICallback* cb, string sFilename, bool bAppend)
15 {
16 string sFilename_w;
17 const bool located = cRAI::LocateFile(cb, sFilename, sFilename_w, true);
18 if (!located) {
19 throw 11;
20 }
21
22 if( bAppend )
23 logFile = fopen(sFilename_w.c_str(), "a");
24 // logFile = new ofstream();
25 // logFile->open( logFileName.c_str(), ios::app );
26 else
27 logFile = fopen(sFilename_w.c_str(), "w");
28 // ofstream oLog( logFileName.c_str() );
29 // oLog.close();
30
31 /*
32 pFile = fopen(logFileName.c_str(),"wt");
33 fclose(pFile);
34 */
35 }
36
~cLogFile()37 cLogFile::~cLogFile()
38 {
39 fclose(logFile);
40 // logFile->close();
41 // delete logFile;
42 }
43
operator <<(float message)44 cLogFile& cLogFile::operator<<(float message)
45 {
46 if( message - int(message) > 0.0 )
47 {
48 if( message < 1.0 && message > 0.0 )
49 fprintf(logFile, "%1.3f", message);
50 else
51 fprintf(logFile, "%1.2f", message);
52 }
53 else
54 fprintf(logFile, "%1.0f", message);
55 return *this;
56 }
57 /*
58 cLogFile& cLogFile::operator<<(int message)
59 {
60 fprintf(logFile, "%i", message);
61 return *this;
62 }
63 */
operator <<(string message)64 cLogFile& cLogFile::operator<<(string message)
65 {
66 fprintf(logFile, "%s", message.c_str());
67 return *this;
68 }
69
70 /*
71 void cLogFile::Write(string message)
72 {
73 fprintf(logFile, "%s", message.c_str());
74 // fputs(message.c_str(),logFile);
75 // *logFile<<message.c_str();
76 // logFile->flush();
77 }
78
79 void cLogFile::Write(float message)
80 {
81 if( message - int(message) > 0.0 )
82 fprintf(logFile, "%1.2f", message);
83 else
84 fprintf(logFile, "%1.0f", message);
85 // *logFile<<message;
86 // logFile->flush();
87 }
88
89 void cLogFile::Write(int message)
90 {
91 // *logFile<<message;
92 // logFile->flush();
93 }
94 */
95