strusModule  0.17
traceModule.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014 Patrick P. Frey
3  *
4  * This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7  */
10 #ifndef _STRUS_MODULE_TRACE_HPP_INCLUDED
11 #define _STRUS_MODULE_TRACE_HPP_INCLUDED
13 #include <string>
14 
16 namespace strus
17 {
18 
20 class TraceLoggerInterface;
22 class ErrorBufferInterface;
23 
26 {
29  typedef TraceLoggerInterface* (*CreateTraceLogger)( const std::string& config, ErrorBufferInterface* errorhnd);
30 
31  const char* title;
33 };
34 
35 
38  :public ModuleEntryPoint
39 {
42  explicit TraceModule( const TraceLoggerConstructor* traceLoggerConstructors_);
43 
45 
46 private:
47  void init( const TraceLoggerConstructor* traceLoggerConstructors_);
48 };
49 }//namespace
50 #endif
51 
const char * title
title of the trace logger
Definition: traceModule.hpp:31
Entry point of a module with signature and version info to verify correctness of the dynamic linking...
Definition: moduleEntryPoint.hpp:19
CreateTraceLogger create
constructor
Definition: traceModule.hpp:32
Structure that contains all trace module objects.
Definition: traceModule.hpp:37
Structure describing a logger for method call traces.
Definition: traceModule.hpp:25
TraceLoggerInterface *(* CreateTraceLogger)(const std::string &config, ErrorBufferInterface *errorhnd)
Definition: traceModule.hpp:29
const TraceLoggerConstructor * traceLoggerConstructors
0 terminated list of trace Loggers
Definition: traceModule.hpp:44
TraceModule(const TraceLoggerConstructor *traceLoggerConstructors_)
Trace module constructor.
Header with object types needed for declaration of a strus module.