nx_metadata_sdk  1.0
Metadata SDK
i_plugin_diagnostic_event.h
1 // Copyright 2018-present Network Optix, Inc. Licensed under MPL 2.0: www.mozilla.org/MPL/2.0/
2 
3 #pragma once
4 
5 #include <nx/sdk/interface.h>
6 
7 namespace nx {
8 namespace sdk {
9 
14 class IPluginDiagnosticEvent: public nx::sdk::Interface<IPluginDiagnosticEvent>
15 {
16 public:
17  static auto interfaceId() { return makeId("nx::sdk::IPluginDiagnosticEvent"); }
18 
19  enum class Level
20  {
21  info,
22  warning,
23  error,
24  };
25 
26  virtual Level level() const = 0;
27  virtual const char* caption() const = 0;
28  virtual const char* description() const = 0;
29 };
30 
31 } // namespace sdk
32 } // namespace nx
Definition: i_plugin_diagnostic_event.h:14
Definition: interface.h:28
Definition: apple_utils.h:6
static constexpr const InterfaceId * makeId(const char(&charArray)[len])
Definition: i_ref_countable.h:78