Nemiver  0.3
nmv-expr-monitor.h
Go to the documentation of this file.
1 //Author: Dodji Seketeli
2 /*
3  *This file is part of the Nemiver project
4  *
5  *Nemiver is free software; you can redistribute
6  *it and/or modify it under the terms of
7  *the GNU General Public License as published by the
8  *Free Software Foundation; either version 2,
9  *or (at your option) any later version.
10  *
11  *Nemiver is distributed in the hope that it will
12  *be useful, but WITHOUT ANY WARRANTY;
13  *without even the implied warranty of
14  *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15  *See the GNU General Public License for more details.
16  *
17  *You should have received a copy of the
18  *GNU General Public License along with Nemiver;
19  *see the file COPYING.
20  *If not, write to the Free Software Foundation,
21  *Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
22  *
23  *See COPYRIGHT file copyright information.
24  */
25 #ifndef __NMV_EXPR_MONITOR_H__
26 #define __NMV_EXPR_MONITOR_H__
27 
29 #include "common/nmv-object.h"
30 #include "nmv-i-perspective.h"
31 #include "nmv-i-debugger.h"
32 
33 NEMIVER_BEGIN_NAMESPACE (nemiver)
34 
35 class NEMIVER_API ExprMonitor : public nemiver::common::Object {
43  // Non copyable
44  ExprMonitor (const ExprMonitor&);
45  ExprMonitor& operator= (const ExprMonitor&);
46 
47  struct Priv;
49 
50  protected:
51  ExprMonitor ();
52 
53  public:
54  ExprMonitor (IDebugger &a_dbg,
55  IPerspective &a_perspective);
56  virtual ~ExprMonitor ();
57  Gtk::Widget& widget ();
58  void add_expression (const IDebugger::VariableSafePtr a_expr);
59  void add_expressions (const IDebugger::VariableList &a_exprs);
60  bool expression_is_monitored (const IDebugger::Variable &a_expr) const;
61  void remove_expression (const IDebugger::VariableSafePtr a_expr);
62  void remove_expressions (const IDebugger::VariableList &a_exprs);
63  void re_init_widget (bool a_remember_variables);
64 };// end ExprMonitor
65 
66 NEMIVER_END_NAMESPACE (nemiver)
67 
68 #endif // __NMV_EXPR_MONITOR_H__
nmv-safe-ptr-utils.h
nemiver::common::Object
Definition: nmv-object.h:43
nemiver
Definition: nmv-address.h:31
NEMIVER_API
#define NEMIVER_API
Definition: nmv-api-macros.h:53
nemiver::common::Object::operator=
Object & operator=(Object const &)
nemiver::common::Object::m_priv
SafePtr< ObjectPriv > m_priv
Definition: nmv-object.h:47
nmv-i-perspective.h
nmv-i-debugger.h
nmv-object.h
nemiver::common::SafePtr
Definition: nmv-safe-ptr.h:71