Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Mar 4, 2013, 10:47:26 PM (12 years ago)
Author:
landauf
Message:

small refactoring: un-singletonized ConsoleWriter, LogWriter, and MemoryWriter - instead the instances are now kept by OutputManager

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/testing/src/libraries/util/output/OutputManager.cc

    r9533 r9536  
    8888        static OutputManager& instance = OutputManager::getInstance();
    8989
    90         static MemoryWriter& memoryWriterInstance = MemoryWriter::getInstance(); (void)memoryWriterInstance;
    91         static ConsoleWriter& consoleWriterInstance = ConsoleWriter::getInstance(); (void)consoleWriterInstance;
    92         static LogWriter& logWriterInstance = LogWriter::getInstance(); (void)logWriterInstance;
    93 
     90        static MemoryWriter& memoryWriterInstance = OutputManager::getInstance().getMemoryWriter(); (void)memoryWriterInstance;
     91        static ConsoleWriter& consoleWriterInstance = OutputManager::getInstance().getConsoleWriter(); (void)consoleWriterInstance;
     92        static LogWriter& logWriterInstance = OutputManager::getInstance().getLogWriter(); (void)logWriterInstance;
     93
     94        return instance;
     95    }
     96
     97    /**
     98     * @brief Returns the main instance of MemoryWriter which is managed by the OutputManager singleton.
     99     * @note If OutputManager is ever un-singletonized, this instance must not remain static.
     100     */
     101    MemoryWriter& OutputManager::getMemoryWriter()
     102    {
     103        static MemoryWriter instance;
     104        return instance;
     105    }
     106
     107    /**
     108     * @brief Returns the main instance of ConsoleWriter which is managed by the OutputManager singleton.
     109     * @note If OutputManager is ever un-singletonized, this instance must not remain static.
     110     */
     111    ConsoleWriter& OutputManager::getConsoleWriter()
     112    {
     113        static ConsoleWriter instance;
     114        return instance;
     115    }
     116
     117    /**
     118     * @brief Returns the main instance of LogWriter which is managed by the OutputManager singleton.
     119     * @note If OutputManager is ever un-singletonized, this instance must not remain static.
     120     */
     121    LogWriter& OutputManager::getLogWriter()
     122    {
     123        static LogWriter instance;
    94124        return instance;
    95125    }
Note: See TracChangeset for help on using the changeset viewer.