LSSTApplications
10.0+286,10.0+36,10.0+46,10.0-2-g4f67435,10.1+152,10.1+37,11.0,11.0+1,11.0-1-g47edd16,11.0-1-g60db491,11.0-1-g7418c06,11.0-2-g04d2804,11.0-2-g68503cd,11.0-2-g818369d,11.0-2-gb8b8ce7
LSSTDataManagementBasePackage
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
home
lsstsw
stack
Linux64
pex_logging
11.0+1
include
lsst
pex
logging
LogDestination.h
Go to the documentation of this file.
1
// -*- lsst-c++ -*-
2
3
/*
4
* LSST Data Management System
5
* Copyright 2008, 2009, 2010 LSST Corporation.
6
*
7
* This product includes software developed by the
8
* LSST Project (http://www.lsst.org/).
9
*
10
* This program is free software: you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation, either version 3 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the LSST License Statement and
21
* the GNU General Public License along with this program. If not,
22
* see <http://www.lsstcorp.org/LegalNotices/>.
23
*/
24
30
#ifndef LSST_PEX_LOGDESTINATION_H
31
#define LSST_PEX_LOGDESTINATION_H
32
33
#include "
lsst/pex/logging/LogFormatter.h
"
34
#include "
lsst/pex/logging/threshold/enum.h
"
35
36
#include <string>
37
#include <ostream>
38
#include <boost/shared_ptr.hpp>
39
40
namespace
lsst {
41
namespace
pex {
42
namespace
logging {
43
44
// forward declaration of LogRecord
45
class
LogRecord;
46
64
class
LogDestination
{
65
public
:
66
77
LogDestination
(std::ostream *strm,
78
const
boost::shared_ptr<LogFormatter>& formatter,
79
int
threshold=
threshold::PASS_ALL
);
80
84
LogDestination
(
const
LogDestination
& that);
85
89
virtual
~LogDestination
();
90
94
LogDestination
&
operator=
(
const
LogDestination
& that);
95
99
int
getThreshold
()
const
{
return
_threshold
; }
100
106
void
setThreshold
(
int
threshold) {
_threshold
= threshold; }
107
118
bool
write
(
const
LogRecord
& rec);
119
120
protected
:
121
int
_threshold
;
// the stream's threshold
122
std::ostream *
_strm
;
// the output stream
123
boost::shared_ptr<LogFormatter>
_frmtr
;
// the formatter to use
124
};
125
126
}}}
// end lsst::pex::logging
127
128
#endif // LSST_PEX_LOGDESTINATION_H
lsst::pex::logging::LogDestination
an encapsulation of a logging stream that will filter messages based on their volume (importance) lev...
Definition:
LogDestination.h:64
lsst::pex::logging::LogDestination::operator=
LogDestination & operator=(const LogDestination &that)
lsst::pex::logging::LogDestination::_threshold
int _threshold
Definition:
LogDestination.h:121
lsst::pex::logging::LogDestination::write
bool write(const LogRecord &rec)
lsst::pex::logging::LogDestination::LogDestination
LogDestination(std::ostream *strm, const boost::shared_ptr< LogFormatter > &formatter, int threshold=threshold::PASS_ALL)
create a destination with a threshold.
lsst::pex::logging::LogRecord
a container for constructing a single Log record
Definition:
LogRecord.h:99
lsst::pex::logging::LogDestination::_frmtr
boost::shared_ptr< LogFormatter > _frmtr
Definition:
LogDestination.h:123
enum.h
definitions of reusable enumerations
lsst::pex::logging::threshold::PASS_ALL
Definition:
enum.h:48
lsst::pex::logging::LogDestination::~LogDestination
virtual ~LogDestination()
LogFormatter.h
definitions of the LogFormatter.h abstract class and its implementing classes, BriefFormatter, NetLoggerFormatter
lsst::pex::logging::LogDestination::_strm
std::ostream * _strm
Definition:
LogDestination.h:122
lsst::pex::logging::LogDestination::setThreshold
void setThreshold(int threshold)
Definition:
LogDestination.h:106
lsst::pex::logging::LogDestination::getThreshold
int getThreshold() const
Definition:
LogDestination.h:99
Generated on Thu Sep 24 2015 02:29:23 for LSSTApplications by
1.8.5