diff options
Diffstat (limited to 'lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h')
-rw-r--r-- | lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h b/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h deleted file mode 100644 index 5dcb37b04ea..00000000000 --- a/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h +++ /dev/null @@ -1,164 +0,0 @@ -//===-- StructuredDataDarwinLog.h -------------------------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - - -#ifndef StructuredDataDarwinLog_h -#define StructuredDataDarwinLog_h - -#include "lldb/Target/StructuredDataPlugin.h" - -#include <mutex> - -// Forward declarations -namespace sddarwinlog_private -{ - class EnableCommand; -} - -namespace lldb_private -{ - -class StructuredDataDarwinLog : public StructuredDataPlugin -{ - friend sddarwinlog_private::EnableCommand; - -public: - - // ------------------------------------------------------------------------- - // Public static API - // ------------------------------------------------------------------------- - - static void - Initialize(); - - static void - Terminate(); - - static const ConstString& - GetStaticPluginName(); - - // ------------------------------------------------------------------------- - /// Return whether the DarwinLog functionality is enabled. - /// - /// The DarwinLog functionality is enabled if the user expicitly enabled - /// it with the enable command, or if the user has the setting set - /// that controls if we always enable it for newly created/attached - /// processes. - /// - /// @return - /// True if DarwinLog support is/will be enabled for existing or - /// newly launched/attached processes. - // ------------------------------------------------------------------------- - static bool - IsEnabled(); - - // ------------------------------------------------------------------------- - // PluginInterface API - // ------------------------------------------------------------------------- - - ConstString - GetPluginName() override; - - uint32_t - GetPluginVersion() override; - - // ------------------------------------------------------------------------- - // StructuredDataPlugin API - // ------------------------------------------------------------------------- - - bool - SupportsStructuredDataType(const ConstString &type_name) override; - - void - HandleArrivalOfStructuredData(Process &process, - const ConstString &type_name, - const StructuredData::ObjectSP - &object_sp) override; - - Error - GetDescription(const StructuredData::ObjectSP &object_sp, - lldb_private::Stream &stream) override; - - - bool - GetEnabled(const ConstString &type_name) const override; - - void - ModulesDidLoad(Process &process, ModuleList &module_list) override; - -private: - - // ------------------------------------------------------------------------- - // Private constructors - // ------------------------------------------------------------------------- - - StructuredDataDarwinLog(const lldb::ProcessWP &process_wp); - - // ------------------------------------------------------------------------- - // Private static methods - // ------------------------------------------------------------------------- - - static lldb::StructuredDataPluginSP - CreateInstance(Process &process); - - static void - DebuggerInitialize(Debugger &debugger); - - static bool - InitCompletionHookCallback(void *baton, StoppointCallbackContext *context, - lldb::user_id_t break_id, - lldb::user_id_t break_loc_id); - - static Error - FilterLaunchInfo(ProcessLaunchInfo &launch_info, Target *target); - - // ------------------------------------------------------------------------- - // Internal helper methods used by friend classes - // ------------------------------------------------------------------------- - void - SetEnabled(bool enabled); - - void - AddInitCompletionHook(Process &process); - - // ------------------------------------------------------------------------- - // Private methods - // ------------------------------------------------------------------------- - - void - DumpTimestamp(Stream &stream, uint64_t timestamp); - - size_t - DumpHeader(Stream &stream, const StructuredData::Dictionary &event); - - size_t - HandleDisplayOfEvent(const StructuredData::Dictionary &event, - Stream &stream); - - // ------------------------------------------------------------------------- - /// Call the enable command again, using whatever settings were initially - /// made. - // ------------------------------------------------------------------------- - - void - EnableNow(); - - // ------------------------------------------------------------------------- - // Private data - // ------------------------------------------------------------------------- - bool m_recorded_first_timestamp; - uint64_t m_first_timestamp_seen; - bool m_is_enabled; - std::mutex m_added_breakpoint_mutex; - bool m_added_breakpoint; -}; - -} - -#endif /* StructuredDataPluginDarwinLog_hpp */ |