X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Fsoftware%2FDEVEL%2Fmathml_editor%2Fsrc%2FALogger.hh;fp=helm%2Fsoftware%2FDEVEL%2Fmathml_editor%2Fsrc%2FALogger.hh;h=7843dbc883e0c0fbf890168beab6594ba9d20a71;hb=d43522a6d38fcb9081a3f0352088377bc0555231;hp=0000000000000000000000000000000000000000;hpb=9a9c95ebabbb1d4d7dce627ed1baea130ea98766;p=helm.git diff --git a/helm/software/DEVEL/mathml_editor/src/ALogger.hh b/helm/software/DEVEL/mathml_editor/src/ALogger.hh new file mode 100644 index 000000000..7843dbc88 --- /dev/null +++ b/helm/software/DEVEL/mathml_editor/src/ALogger.hh @@ -0,0 +1,53 @@ +/* This file is part of EdiTeX, an editor of mathematical + * expressions based on TeX syntax. + * + * Copyright (C) 2002-2003 Luca Padovani , + * 2003 Paolo Marinelli . + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library 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 + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * For more information, please visit the project's home page + * http://helm.cs.unibo.it/editex/ + * or send an email to + */ + +#ifndef __ALogger_hh__ +#define __ALogger_hh__ + +#include + +class ALogger +{ +public: + enum Level { Error, Warning, Info, Debug }; + + ALogger(void) { level = Error; } + virtual ~ALogger() { } + void debug(const std::string& msg) { if (level >= Debug) message(Debug, msg); } + void info(const std::string& msg) { if (level >= Info) message(Info, msg); } + void warning(const std::string& msg) { if (level >= Warning) message(Warning, msg); } + void error(const std::string& msg) { if (level >= Error) message(Error, msg); } + + Level verbosity(void) const { return level; } + void verbosity(Level lvl) { level = lvl; } + +protected: + virtual void message(Level, const std::string&) = 0; + +private: + Level level; +}; + +#endif // __ALogger_hh__