1254721Semaste//===-- Stoppoint.h ---------------------------------------------*- C++ -*-===//
2254721Semaste//
3353358Sdim// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4353358Sdim// See https://llvm.org/LICENSE.txt for license information.
5353358Sdim// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6254721Semaste//
7254721Semaste//===----------------------------------------------------------------------===//
8254721Semaste
9254721Semaste#ifndef liblldb_Stoppoint_h_
10254721Semaste#define liblldb_Stoppoint_h_
11254721Semaste
12321369Sdim#include "lldb/Utility/UserID.h"
13254721Semaste#include "lldb/lldb-private.h"
14254721Semaste
15254721Semastenamespace lldb_private {
16254721Semaste
17314564Sdimclass Stoppoint {
18254721Semastepublic:
19314564Sdim  // Constructors and Destructors
20314564Sdim  Stoppoint();
21254721Semaste
22314564Sdim  virtual ~Stoppoint();
23254721Semaste
24314564Sdim  // Methods
25314564Sdim  virtual void Dump(Stream *) = 0;
26254721Semaste
27314564Sdim  virtual bool IsEnabled() = 0;
28254721Semaste
29314564Sdim  virtual void SetEnabled(bool enable) = 0;
30254721Semaste
31314564Sdim  lldb::break_id_t GetID() const;
32254721Semaste
33314564Sdim  void SetID(lldb::break_id_t bid);
34254721Semaste
35254721Semasteprotected:
36314564Sdim  lldb::break_id_t m_bid;
37254721Semaste
38254721Semasteprivate:
39314564Sdim  // For Stoppoint only
40314564Sdim  DISALLOW_COPY_AND_ASSIGN(Stoppoint);
41254721Semaste};
42254721Semaste
43254721Semaste} // namespace lldb_private
44254721Semaste
45314564Sdim#endif // liblldb_Stoppoint_h_
46