logger.cpp 1.51 KB
/***************************************************************************
 *   Universidade Federal da Paraíba                                       *
 *   Copyright (C) 2014 by Laboratório de Aplicações de Vídeo Digital      *
 *                                                                         *
 *   Centro de Informática - UFPB - Campus I                               *
 *   João Pessoa - PB - Brasil                                             *
 *                                                                         *
 *   Author: Erickson Silva (erickson.silva@lavid.ufpb.br)                 *
 *                                                                         *
 **************************************************************************/    

#include "logger.h"

namespace Util {

    Logger* Logger::m_pInstance = NULL; 
	
    Logger::Logger(){
    }

    Logger* Logger::Instance(){
       if (!m_pInstance)   // Only allow one instance of class to be generated.
          m_pInstance = new Logger;

       return m_pInstance;
    }

           
    void Logger::openLogFile(){
        file.open("vlibras_user/vlibras-core/log/log", ios_base::app);
    }


    void Logger::closeLogFile(){
        file.close();
    }

    char* Logger::getTime(){
		time_t curtime;
   		time(&curtime);
        return ctime(&curtime);
    }

    void Logger::writeLog(char* exception){
        this->openLogFile();
        file << getTime();
        file << exception << "\n\n\r";
        this->closeLogFile();
    }

}