source: ThirdParty/CodePatterns/src/Helpers/unittests/stubs/loggerStub.cpp

Candidate_v1.6.1
Last change on this file was 41e8e2, checked in by Frederik Heber <heber@…>, 8 years ago

Merge commit '084729c5923f0123e695fbe2548b393288c1f13d' as 'ThirdParty/CodePatterns'

  • Property mode set to 100644
File size: 1.8 KB
Line 
1/*
2 * Project: MoleCuilder
3 * Description: creates and alters molecular systems
4 * Copyright (C) 2010 University of Bonn. All rights reserved.
5 * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
6 */
7
8/*
9 * loggerStub.cpp
10 *
11 * Created on: Apr 06, 2011
12 * Author: heber
13 */
14
15// include config.h
16#ifdef HAVE_CONFIG_H
17#include <config.h>
18#endif
19
20#include <sstream>
21
22#include "CodePatterns/logger.hpp"
23#include "CodePatterns/Singleton_impl.hpp"
24
25
26int logger::verbosity = 2;
27ostream* logger::nix = NULL;
28ostream* logger::defaultout = NULL;
29ostream* logger::out = NULL;
30
31/**
32 * Constructor. Do not use this function. Use getInstance() instead.
33 *
34 * \return logger instance
35 */
36logger::logger()
37{
38 nix = new stringstream;
39 defaultout = new stringstream;
40 out = defaultout;
41};
42
43/**
44 * Destructor. Better use purgeInstance().
45 */
46logger::~logger()
47{
48 delete nix;
49 delete defaultout;
50 out = NULL;
51}
52
53CONSTRUCT_SINGLETON(logger)
54
55/**
56 * Sets the verbosity.
57 *
58 * \param verbosityLevel verbosity
59 */
60void logger::setVerbosity(int verbosityLevel)
61{}
62
63/**
64 * Gets the verbosity.
65 *
66 * \return verbosity level
67 */
68int logger::getVerbosity()
69{
70 return 0;
71}
72
73/** Sets a new output stream.
74 *
75 * \param _newout new output stream, if NULL we set to defaultout
76 */
77void logger::setOutputStream(ostream *_newout)
78{
79 if(_newout != NULL)
80 out = _newout;
81 else
82 out = defaultout;
83}
84
85/**
86 * Operator for the Binary(arg) call.
87 * Constructs temporary a Verbose class object, wherein the Binary is stored.
88 * Then << is called, which calls Binary's print which adds the tabs and logs
89 * the stream.
90 * \param &ost stream to extend
91 * \param &m pointer to created Binary object
92 * \return &ost
93 */
94ostream& operator<<(class logger& l, const Verbose& v)
95{
96 return *l.nix;
97};
98ostream& operator<<(class logger* l, const Verbose& v)
99{
100 return *l->nix;
101};
102
Note: See TracBrowser for help on using the repository browser.