X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fprob.hh;h=7e39582da64fbc8947ff3c4428f95ed8bc65db16;hb=3d8089a42af6304edb8dad56220e845c84832bb2;hp=719c140651e1e8aac903b6182d7f9fa3e259d86d;hpb=b37e3f652677ae0298423db9fa0e552e5fce0c92;p=lilypond.git diff --git a/lily/include/prob.hh b/lily/include/prob.hh index 719c140651..7e39582da6 100644 --- a/lily/include/prob.hh +++ b/lily/include/prob.hh @@ -3,13 +3,15 @@ source file of the GNU LilyPond music typesetter - (c) 2004--2006 Jan Nieuwenhuizen + (c) 2004--2009 Jan Nieuwenhuizen */ #ifndef PROPERTY_OBJECT_HH #define PROPERTY_OBJECT_HH #include "stencil.hh" +#include "virtual-methods.hh" + /* A formatted "system" (A block of titling also is a Property_object) @@ -18,9 +20,10 @@ formatted content of the grob is put into a Property_object. Page-breaking handles Property_object objects. */ + class Prob { - DECLARE_SMOBS (Prob,); + DECLARE_SMOBS (Prob); DECLARE_CLASSNAME(Prob); void init_vars (); @@ -36,14 +39,19 @@ protected: public: Prob (SCM, SCM); Prob (Prob const &); - virtual std::string name () const; + virtual string name () const; SCM type () const { return type_; } - SCM get_property_alist (bool mutble) const; + SCM get_property_alist (bool _mutable) const; SCM internal_get_property (SCM sym) const; + void instrumented_set_property (SCM, SCM, const char*, int, const char*); void internal_set_property (SCM sym, SCM val); }; + DECLARE_UNSMOB(Prob,prob); + SCM ly_prob_set_property_x (SCM system, SCM sym, SCM value); -SCM ly_prob_property (SCM system, SCM sym, SCM dfault); +SCM ly_prob_property (SCM prob, SCM sym, SCM val); +SCM ly_prob_type_p (SCM obj, SCM sym); + #endif /* PROPERTY_OBJECT_HH */