]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/protected-scm.hh
release: 1.5.19
[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
14 #include "lily-guile.hh"
15
16 /*
17   Mix GUILE GC with C++ ctors and dtors. 
18  */
19 class Protected_scm
20 {
21   SCM object_;
22 public:
23   Protected_scm ();
24   Protected_scm (SCM);
25   Protected_scm (Protected_scm const &);
26   ~Protected_scm ();
27   Protected_scm &operator = (SCM);
28   Protected_scm &operator = ( Protected_scm const&);
29   operator SCM () const;
30   SCM to_SCM () const;
31 };
32
33 #endif /* PROTECTED_SCM_HH */