00001 // 00002 // plumbing - C++ wrapper facades for Berkeley sockets 00003 // Copyright (C) 2009 Peter Miller 00004 // 00005 // This program is free software; you can redistribute it and/or modify it 00006 // under the terms of the GNU General Public License, version 3, as published 00007 // by the Free Software Foundation. 00008 // 00009 // This program is distributed in the hope that it will be useful, but WITHOUT 00010 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 00011 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 00012 // more details. 00013 // 00014 // You should have received a copy of the GNU General Public License along 00015 // with this program. If not, see <http://www.gnu.org/licenses/>. 00016 // 00017 00018 #ifndef LIBPLUMBING_LOGGING_TEE_H 00019 #define LIBPLUMBING_LOGGING_TEE_H 00020 00021 #include <libplumbing/logging.h> 00022 00023 namespace plumbing { 00024 00029 class logging_tee: 00030 public logging 00031 { 00032 public: 00036 virtual ~logging_tee(); 00037 00041 logging_tee(logging *lhs, logging *rhs); 00042 00043 protected: 00044 // See base class for documentation. 00045 void deliver_message_text(const char *txt); 00046 00047 private: 00052 logging *lhs; 00053 00058 logging *rhs; 00059 00063 logging_tee(); 00064 00068 logging_tee(const logging_tee &); 00069 00073 logging_tee &operator=(const logging_tee &); 00074 }; 00075 00076 } 00077 00078 #endif // LIBPLUMBING_LOGGING_TEE_H 00079 // vim: set ts=8 sw=4 et