Home | History | Annotate | Download | only in ELF
      1 //===-- SymbolVendorELF.h ------------------------------------*- C++ -*-===//
      2 //
      3 //                     The LLVM Compiler Infrastructure
      4 //
      5 // This file is distributed under the University of Illinois Open Source
      6 // License. See LICENSE.TXT for details.
      7 //
      8 //===----------------------------------------------------------------------===//
      9 
     10 #ifndef liblldb_SymbolVendorELF_h_
     11 #define liblldb_SymbolVendorELF_h_
     12 
     13 #include "lldb/lldb-private.h"
     14 #include "lldb/Symbol/SymbolVendor.h"
     15 
     16 class SymbolVendorELF : public lldb_private::SymbolVendor
     17 {
     18 public:
     19     //------------------------------------------------------------------
     20     // Static Functions
     21     //------------------------------------------------------------------
     22     static void
     23     Initialize();
     24 
     25     static void
     26     Terminate();
     27 
     28     static lldb_private::ConstString
     29     GetPluginNameStatic();
     30 
     31     static const char *
     32     GetPluginDescriptionStatic();
     33 
     34     static lldb_private::SymbolVendor*
     35     CreateInstance (const lldb::ModuleSP &module_sp, lldb_private::Stream *feedback_strm);
     36 
     37     //------------------------------------------------------------------
     38     // Constructors and Destructors
     39     //------------------------------------------------------------------
     40     SymbolVendorELF (const lldb::ModuleSP &module_sp);
     41 
     42     virtual
     43     ~SymbolVendorELF();
     44 
     45     //------------------------------------------------------------------
     46     // PluginInterface protocol
     47     //------------------------------------------------------------------
     48     virtual lldb_private::ConstString
     49     GetPluginName();
     50 
     51     virtual uint32_t
     52     GetPluginVersion();
     53 
     54 private:
     55     DISALLOW_COPY_AND_ASSIGN (SymbolVendorELF);
     56 };
     57 
     58 #endif  // liblldb_SymbolVendorELF_h_
     59