]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/protected-scm.hh
patch::: 1.5.11.jcn2
[lilypond.git] / lily / include / protected-scm.hh
1 /*   
2   protected-scm.hh -- declare Protected_scm
3   
4   source file of the GNU LilyPond music typesetter
5   
6   (c) 1998--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
7   
8  */
9
10 #ifndef PROTECTED_SCM_HH
11 #define PROTECTED_SCM_HH
12
13 #include <libguile.h>
14
15 /*
16   Mix GUILE GC with C++ ctors and dtors. 
17  */
18 class Protected_scm
19 {
20   SCM object_;
21 public:
22   Protected_scm ();
23   Protected_scm (SCM);
24   Protected_scm (Protected_scm const &);
25   ~Protected_scm ();
26   Protected_scm &operator = (SCM);
27   Protected_scm &operator = ( Protected_scm const&);
28   operator SCM () const;
29   SCM to_SCM () const;
30 };
31
32 #endif /* PROTECTED_SCM_HH */