X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Utils%2FLogger%2FStreamRegistry.cci;h=531b0e063f39d3ffc6900b7e86a0b1bef92b4757;hb=6927c87144ca23845065e3c23e37c75f5f059cf3;hp=5bb5b742c22c97efd3b3cb2874def91cb160cd42;hpb=61419d9a2e1060f7ede22fa19fd9d0b401bbc87a;p=senf.git diff --git a/Utils/Logger/StreamRegistry.cci b/Utils/Logger/StreamRegistry.cci index 5bb5b74..531b0e0 100644 --- a/Utils/Logger/StreamRegistry.cci +++ b/Utils/Logger/StreamRegistry.cci @@ -1,8 +1,8 @@ // $Id$ // -// Copyright (C) 2007 -// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS) -// Kompetenzzentrum fuer Satelitenkommunikation (SatCom) +// Copyright (C) 2007 +// Fraunhofer Institute for Open Communication Systems (FOKUS) +// Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund // // This program is free software; you can redistribute it and/or modify @@ -34,24 +34,19 @@ /////////////////////////////////////////////////////////////////////////// // senf::log::StreamRegistry -prefix_ std::string const & -senf::log::StreamRegistry::SelectName::operator()(Registry::value_type const & v) - const -{ - return v.first; -} - prefix_ senf::log::StreamRegistry::StreamRegistry() {} prefix_ senf::log::StreamRegistry::iterator senf::log::StreamRegistry::begin() { - return boost::make_transform_iterator(registry_.begin(), SelectName()); + return boost::make_transform_iterator(registry_.begin(), + ::__gnu_cxx::select1st()); } prefix_ senf::log::StreamRegistry::iterator senf::log::StreamRegistry::end() { - return boost::make_transform_iterator(registry_.end(), SelectName()); + return boost::make_transform_iterator(registry_.end(), + ::__gnu_cxx::select1st()); } prefix_ void senf::log::StreamRegistry::registerStream(detail::StreamBase const & stream) @@ -59,6 +54,13 @@ prefix_ void senf::log::StreamRegistry::registerStream(detail::StreamBase const registry_.insert( std::make_pair(stream.v_name(), &stream) ); } +prefix_ senf::log::detail::StreamBase const * +senf::log::StreamRegistry::lookup(std::string const & name) +{ + Registry::iterator i (registry_.find(name)); + return i == registry_.end() ? 0 : i->second; +} + /////////////////////////////////////////////////////////////////////////// // senf::log::detail::StreamBase