Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Aug 23, 2011, 12:45:53 AM (13 years ago)
Author:
landauf
Message:

merged output branch back to trunk.

Changes:

  • you have to include util/Output.h instead of util/Debug.h
  • COUT(x) is now called orxout(level)
  • output levels are now defined by an enum instead of numbers. see util/Output.h for the definition
  • it's possible to use output contexts with orxout(level, context). see util/Output.h for some common contexts. you can define more contexts
  • you must use 'endl' at the end of an output message, '\n' does not flush the message

Output levels:

  • instead of COUT(0) use orxout()
  • instead of COUT(1) use orxout(user_error) or orxout(internal_error)
  • instead of COUT(2) use orxout(user_warning) or orxout(internal_warning)
  • instead of COUT(3) use orxout(user_status/user_info) or orxout(internal_status/internal_info)
  • instead of COUT(4) use orxout(verbose)
  • instead of COUT(5) use orxout(verbose_more)
  • instead of COUT(6) use orxout(verbose_ultra)

Guidelines:

  • user_* levels are for the user, visible in the console and the log-file
  • internal_* levels are for developers, visible in the log-file
  • verbose_* levels are for debugging, only visible if the context of the output is activated

Usage in C++:

  • orxout() << "message" << endl;
  • orxout(level) << "message" << endl;
  • orxout(level, context) << "message" << endl;

Usage in Lua:

  • orxout("message")
  • orxout(orxonox.level.levelname, "message")
  • orxout(orxonox.level.levelname, "context", "message")

Usage in Tcl (and in the in-game-console):

  • orxout levelname message
  • orxout_context levelname context message
  • shortcuts: log message, error message, warning message, status message, info message, debug message
Location:
code/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • code/trunk

  • code/trunk/src/libraries/core/Language.cc

    r7401 r8858  
    3535
    3636#include <fstream>
    37 #include "util/Debug.h"
     37#include "util/Output.h"
    3838#include "util/StringUtils.h"
    3939#include "Core.h"
     
    131131        }
    132132
    133         COUT(2) << "Warning: Language entry " << label << " is duplicate in " << getFilename(this->defaultLanguage_) << '!' << std::endl;
     133        orxout(internal_warning, context::language) << "Language entry " << label << " is duplicate in " << getFilename(this->defaultLanguage_) << '!' << endl;
    134134        return it->second;
    135135    }
     
    142142    void Language::addEntry(const LanguageEntryLabel& label, const std::string& entry)
    143143    {
    144         COUT(5) << "Language: Called addEntry with\n  label: " << label << "\n  entry: " <<  entry << std::endl;
     144        orxout(verbose, context::language) << "Called addEntry with" << '\n' << "label: " << label << '\n' << "entry: " <<  entry << endl;
    145145        std::map<std::string, LanguageEntry*>::const_iterator it = this->languageEntries_.find(label);
    146146        if (it == this->languageEntries_.end())
     
    179179        {
    180180            // Uh, oh, an undefined entry was requested: return the default string
    181             COUT(2) << "Warning: Language entry \"" << label << "\" not found!" << std::endl;
     181            orxout(internal_warning, context::language) << "Language entry \"" << label << "\" not found!" << endl;
    182182            return this->defaultLocalisation_;
    183183        }
     
    201201    void Language::readDefaultLanguageFile()
    202202    {
    203         COUT(4) << "Read default language file." << std::endl;
     203        orxout(internal_info, context::language) << "Read default language file." << endl;
    204204
    205205        const std::string& filepath = PathConfig::getConfigPathString() + getFilename(this->defaultLanguage_);
     
    216216        if (!file.is_open())
    217217        {
    218             COUT(1) << "An error occurred in Language.cc:" << std::endl;
    219             COUT(1) << "Error: Couldn't open file " << getFilename(this->defaultLanguage_) << " to read the default language entries!" << std::endl;
     218            orxout(internal_error, context::language) << "An error occurred in Language.cc:" << endl;
     219            orxout(internal_error, context::language) << "Couldn't open file " << getFilename(this->defaultLanguage_) << " to read the default language entries!" << endl;
    220220            return;
    221221        }
     
    237237                else
    238238                {
    239                     COUT(2) << "Warning: Invalid language entry \"" << lineString << "\" in " << getFilename(this->defaultLanguage_) << std::endl;
     239                    orxout(internal_warning, context::language) << "Invalid language entry \"" << lineString << "\" in " << getFilename(this->defaultLanguage_) << endl;
    240240                }
    241241            }
     
    250250    void Language::readTranslatedLanguageFile()
    251251    {
    252         COUT(4) << "Read translated language file (" << Core::getInstance().getLanguage() << ")." << std::endl;
     252        orxout(internal_info, context::language) << "Read translated language file (" << Core::getInstance().getLanguage() << ")." << endl;
    253253
    254254        const std::string& filepath = PathConfig::getConfigPathString() + getFilename(Core::getInstance().getLanguage());
     
    260260        if (!file.is_open())
    261261        {
    262             COUT(1) << "An error occurred in Language.cc:" << std::endl;
    263             COUT(1) << "Error: Couldn't open file " << getFilename(Core::getInstance().getLanguage()) << " to read the translated language entries!" << std::endl;
     262            orxout(internal_error, context::language) << "An error occurred in Language.cc:" << endl;
     263            orxout(internal_error, context::language) << "Couldn't open file " << getFilename(Core::getInstance().getLanguage()) << " to read the translated language entries!" << endl;
    264264            Core::getInstance().resetLanguage();
    265             COUT(3) << "Info: Reset language to " << this->defaultLanguage_ << '.' << std::endl;
     265            orxout(internal_info, context::language) << "Reset language to " << this->defaultLanguage_ << '.' << endl;
    266266            return;
    267267        }
     
    291291                else
    292292                {
    293                     COUT(2) << "Warning: Invalid language entry \"" << lineString << "\" in " << getFilename(Core::getInstance().getLanguage()) << std::endl;
     293                    orxout(internal_warning, context::language) << "Invalid language entry \"" << lineString << "\" in " << getFilename(Core::getInstance().getLanguage()) << endl;
    294294                }
    295295            }
     
    304304    void Language::writeDefaultLanguageFile() const
    305305    {
    306         COUT(4) << "Language: Write default language file." << std::endl;
     306        orxout(verbose, context::language) << "Write default language file." << endl;
    307307
    308308        const std::string& filepath = PathConfig::getConfigPathString() + getFilename(this->defaultLanguage_);
     
    314314        if (!file.is_open())
    315315        {
    316             COUT(1) << "An error occurred in Language.cc:" << std::endl;
    317             COUT(1) << "Error: Couldn't open file " << getFilename(this->defaultLanguage_) << " to write the default language entries!" << std::endl;
     316            orxout(internal_error, context::language) << "An error occurred in Language.cc:" << endl;
     317            orxout(internal_error, context::language) << "Couldn't open file " << getFilename(this->defaultLanguage_) << " to write the default language entries!" << endl;
    318318            return;
    319319        }
     
    322322        for (std::map<std::string, LanguageEntry*>::const_iterator it = this->languageEntries_.begin(); it != this->languageEntries_.end(); ++it)
    323323        {
    324             file << it->second->getLabel() << '=' << it->second->getDefault() << std::endl;
     324            file << it->second->getLabel() << '=' << it->second->getDefault() << endl;
    325325        }
    326326
Note: See TracChangeset for help on using the changeset viewer.