16  namespace diagnostics {
 
  110#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  120#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  136      template<
typename object>
 
  138#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  140        write_event_cache(event_cache);
 
  152      template<
typename object>
 
  154#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  156        write_event_cache(event_cache);
 
  168      template<
typename ...objects>
 
  170#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  172        write_event_cache(event_cache);
 
  184#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  186        write_event_cache(event_cache);
 
  199#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  201        write_event_cache(event_cache);
 
  214      template<
typename ...objects>
 
  216#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  218        write_event_cache(event_cache);
 
  231      template<
typename activity_
id_type>
 
  233#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  235        write_event_cache(event_cache);
 
  241      template <
typename object>
 
  243#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  251      template <
typename object>
 
  253#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  264      template <
typename object>
 
  266#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  274      template <
typename object>
 
  276#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  286      template<
typename object>
 
  288#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  310#if !defined(NDEBUG) || defined(DEBUG) || defined(TRACE) 
  311        need_indent_ = 
false;
 
  312        for (
unsigned int i = 0; 
i < indent_level_; ++
i)
 
  320      unsigned int indent_level_ = 0;
 
  321      unsigned int indent_size_ = 4;
 
  322      bool is_thread_safe_ = 
false;
 
  324      bool need_indent_ = 
true;
 
Provides trace event data specific to a thread and a process.
Definition: trace_event_cache.h:22
 
Provides the abstract base class for the listeners who monitor trace and debug output.
Definition: trace_listener.h:28
 
void trace_data(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id, const std::vector< object > &data)
Writes trace information, a data object and event information to the listener specific output.
Definition: trace_listener.h:153
 
void need_indent(bool need_indent)
Sets a value indicating whether to indent the output.
 
virtual void flush()
When overridden in a derived class, flushes the output buffer.
Definition: trace_listener.h:126
 
void thread_safe(bool thread_safe)
Sets a value indicating whether the trace listener is thread safe.
 
trace_listener(const xtd::ustring &name)
Initializes a new instance of the trace_listener class using the specified name as the listener.
 
virtual void write_line(const xtd::ustring &message)=0
Writes the message to the listener you create when you implement the trace_listener class followed by...
 
virtual void trace_event(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id)
Writes trace and event information to the listener specific output.
Definition: trace_listener.h:183
 
virtual bool is_thread_safe() const
Gets a value indicating whether the trace listener is thread safe.
 
void trace_event(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id, const xtd::ustring &format, const objects &... args)
Writes trace information, a formatted array of objects and event information to the listener specific...
Definition: trace_listener.h:215
 
virtual void trace_event(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id, const xtd::ustring &message)
Writes trace information, a message, and event information to the listener specific output.
Definition: trace_listener.h:198
 
virtual void close()
When overridden in a derived class, closes the output stream so it no longer receives tracing or debu...
 
void write(const object &o, const xtd::ustring &category)
Writes a category name and the value of the object's ToString method to the listener you create when ...
Definition: trace_listener.h:252
 
trace_listener()=default
Initializes a new instance of the trace_listener class.
 
virtual void write(const xtd::ustring &message)=0
Writes the message to the listener you create when you implement the trace_listener class.
 
void trace_data(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id, const objects &... data)
Writes trace information, an array of data objects and event information to the listener specific out...
Definition: trace_listener.h:169
 
void trace_output_options(const trace_options &trace_output_options)
Sets the trace output options.
 
void trace_data(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, const xtd::diagnostics::trace_event_type &event_type, int id, const object &data)
Writes trace information, a data object and event information to the listener specific output.
Definition: trace_listener.h:137
 
virtual void fail(const xtd::ustring &message)
Emits an error message to the listener you create when you implement the TraceListener class.
Definition: trace_listener.h:109
 
unsigned int indent_size() const
Gets the number of spaces in an indent.
 
virtual void write_indent()
Writes the indent to the listener you create when you implement this class, and resets the NeedIndent...
Definition: trace_listener.h:309
 
unsigned int indent_level() const
Gets the indent level.
 
void trace_transfer(const xtd::diagnostics::trace_event_cache &event_cache, const xtd::ustring &source, int id, const xtd::ustring &message, const activity_id_type &related_activity_id)
Writes trace information, a message, a related activity identity and event information to the listene...
Definition: trace_listener.h:232
 
virtual void fail(const xtd::ustring &message, const xtd::ustring &detail_message)
Emits the specified error message.
Definition: trace_listener.h:119
 
void indent_level(unsigned int indent_level)
Sets the indent level.
 
bool need_indent() const
Gets a value indicating whether to indent the output.
 
void write_line(const object &o)
Writes the value of the object's ToString method to the listener you create when you implement the Tr...
Definition: trace_listener.h:265
 
void write_line(const object &o, const xtd::ustring &category)
Writes a category name and the value of the object's ToString method to the listener you create when ...
Definition: trace_listener.h:275
 
const trace_options & trace_output_options() const
Gets the trace output options.
 
void write(const object &o)
Writes the value of the object's ToString method to the listener you create when you implement the Tr...
Definition: trace_listener.h:242
 
void indent_size(unsigned int indent_size)
Sets the number of spaces in an indent.
 
const xtd::ustring & name() const
Gets or sets a name for this TraceListener.
 
void name(const xtd::ustring &name)
Sets a name for this TraceListener.
 
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition: object.h:26
 
Represents text as a sequence of UTF-8 code units.
Definition: ustring.h:48
 
static ustring join(const ustring separator, const collection_t &values) noexcept
Concatenates a specified separator string between each element of a specified object array,...
Definition: ustring.h:842
 
trace_options
Specifies trace data options to be written to the trace output.
Definition: trace_options.h:18
 
trace_event_type
Identifies the type of event that has caused the trace.
Definition: trace_event_type.h:18
 
@ none
Do not write any elements.
 
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition: system_report.h:17
 
Contains xtd::diagnostics::trace_event_cache class.
 
Contains xtd::diagnostics::trace_event_type enum class.
 
Contains xtd::diagnostics::trace_options enum class.