## Struct template sink_factory

boost::log::sink_factory

## Synopsis

    // In header: <boost/log/utility/setup/from_settings.hpp>

    template<typename CharT>
    struct sink_factory {
      // types
      typedef CharT                               char_type;         // Character type.
      typedef std::basic_string< char_type >      string_type;       // String type.
      typedef basic_settings_section< char_type > settings_section;  // Settings section type.

      // construct/copy/destruct
      sink_factory() = default;
      sink_factory(sink_factory const &) = delete;
      sink_factory & operator=(sink_factory const &) = delete;
      ~sink_factory();

      // public member functions
      virtual shared_ptr< sinks::sink > create_sink(settings_section const &) = 0;
    };

## Description

Sink factory base interface

### `sink_factory` public construct/copy/destruct

1.     sink_factory() = default;

   Default constructor

2.     sink_factory(sink_factory const &) = delete;

3.     sink_factory & operator=(sink_factory const &) = delete;

4.     ~sink_factory();

   Virtual destructor

### `sink_factory` public member functions

1.     virtual shared_ptr< sinks::sink >
       create_sink(settings_section const & settings) = 0;

   The function creates a formatter for the specified attribute.

   Parameters: |
   `settings` | Sink parameters