/************************************************************************************* Grid physics library, www.github.com/paboyle/Grid Source file: ./lib/Log.cc Copyright (C) 2015 Author: Antonin Portelli Author: Azusa Yamaguchi Author: Peter Boyle Author: paboyle This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. See the full license in the file "LICENSE" in the top level distribution directory *************************************************************************************/ /* END LEGAL */ #include namespace Grid { GridStopWatch Logger::StopWatch; std::ostream Logger::devnull(0); std::string Logger::BLACK("\033[30m"); std::string Logger::RED("\033[31m"); std::string Logger::GREEN("\033[32m"); std::string Logger::YELLOW("\033[33m"); std::string Logger::BLUE("\033[34m"); std::string Logger::PURPLE("\033[35m"); std::string Logger::CYAN("\033[36m"); std::string Logger::WHITE("\033[37m"); std::string Logger::NORMAL("\033[0;39m"); GridLogger GridLogError (1,"Error",Logger::RED); GridLogger GridLogWarning (1,"Warning",Logger::YELLOW); GridLogger GridLogMessage (1,"Message",Logger::BLACK); GridLogger GridLogDebug (1,"Debug",Logger::PURPLE); GridLogger GridLogPerformance(1,"Performance",Logger::GREEN); GridLogger GridLogIterative (1,"Iterative",Logger::BLUE); GridLogger GridLogIntegrator (1,"Integrator",Logger::BLUE); void GridLogConfigure(std::vector &logstreams) { GridLogError.Active(0); GridLogWarning.Active(0); GridLogMessage.Active(0); GridLogIterative.Active(0); GridLogDebug.Active(0); GridLogPerformance.Active(0); GridLogIntegrator.Active(0); int blackAndWhite = 1; if(blackAndWhite){ Logger::BLACK = std::string(""); Logger::RED =Logger::BLACK; Logger::GREEN =Logger::BLACK; Logger::YELLOW =Logger::BLACK; Logger::BLUE =Logger::BLACK; Logger::PURPLE =Logger::BLACK; Logger::CYAN =Logger::BLACK; Logger::WHITE =Logger::BLACK; Logger::NORMAL =Logger::BLACK; } for(int i=0;i