Home | History | Annotate | Download | only in Breakpoint
      1 //===-- Stoppoint.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_Stoppoint_h_
     11 #define liblldb_Stoppoint_h_
     12 
     13 // C Includes
     14 // C++ Includes
     15 // Other libraries and framework includes
     16 // Project includes
     17 #include "lldb/lldb-private.h"
     18 #include "lldb/Core/UserID.h"
     19 
     20 namespace lldb_private {
     21 
     22 class Stoppoint
     23 {
     24 public:
     25     //------------------------------------------------------------------
     26     // Constructors and Destructors
     27     //------------------------------------------------------------------
     28     Stoppoint();
     29 
     30     virtual
     31     ~Stoppoint();
     32 
     33     //------------------------------------------------------------------
     34     // Methods
     35     //------------------------------------------------------------------
     36     virtual void
     37     Dump (Stream *) = 0;
     38 
     39     virtual bool
     40     IsEnabled () = 0;
     41 
     42     virtual void
     43     SetEnabled (bool enable) = 0;
     44 
     45     lldb::break_id_t
     46     GetID () const;
     47 
     48     void
     49     SetID (lldb::break_id_t bid);
     50 
     51 protected:
     52     lldb::break_id_t m_bid;
     53 
     54 private:
     55     //------------------------------------------------------------------
     56     // For Stoppoint only
     57     //------------------------------------------------------------------
     58     DISALLOW_COPY_AND_ASSIGN (Stoppoint);
     59 };
     60 
     61 } // namespace lldb_private
     62 
     63 #endif  // liblldb_Stoppoint_h_
     64