aboutsummaryrefslogtreecommitdiff
path: root/shared/toxy/plusbob.h
diff options
context:
space:
mode:
Diffstat (limited to 'shared/toxy/plusbob.h')
-rw-r--r--shared/toxy/plusbob.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/shared/toxy/plusbob.h b/shared/toxy/plusbob.h
index bdfe356..391e5c1 100644
--- a/shared/toxy/plusbob.h
+++ b/shared/toxy/plusbob.h
@@ -1,4 +1,4 @@
-/* Copyright (c) 2003 krzYszcz and others.
+/* Copyright (c) 2003-2005 krzYszcz and others.
* For information on usage and redistribution, and for a DISCLAIMER OF ALL
* WARRANTIES, see the file, "LICENSE.txt," in this distribution. */
@@ -12,9 +12,10 @@ EXTERN_STRUCT _plusbob;
EXTERN_STRUCT _plusenv;
#define t_plusenv struct _plusenv
+/* LATER move to plusbob.c */
struct _plusbob
{
- t_symbol bob_tag; /* common value for all bob types */
+ t_symbol *bob_stub; /* points back to stub = symbol, pointer-to-here */
t_plustype *bob_type; /* our type */
t_plustype *bob_root; /* our base type directly derived from t_plusbob */
t_pd *bob_owner;
@@ -37,7 +38,11 @@ struct _plusenv
typedef void (*t_plustypefn)(void *);
-int plustag_isvalid(t_symbol *s, t_pd *caller);
+t_plusbob *plustag_isvalid(t_symbol *tag, t_pd *caller);
+t_plusbob *plustag_validtype(t_symbol *tag, t_symbol *tname, t_pd *caller);
+t_plusbob *plustag_validroot(t_symbol *tag, t_symbol *rname, t_pd *caller);
+t_symbol *plustag_typename(t_symbol *tag, int validate, t_pd *caller);
+t_symbol *plustag_rootname(t_symbol *tag, int validate, t_pd *caller);
t_plustype *plustype_new(t_plustype *base, t_symbol *name, size_t sz,
t_plustypefn deletefn,
@@ -57,10 +62,6 @@ void plusbob_detachownedchildren(t_plusbob *bob, t_plusbob *newparent,
void plusbob_setowner(t_plusbob *bob, t_pd *owner);
t_pd *plusbob_getowner(t_plusbob *bob);
void outlet_plusbob(t_outlet *o, t_plusbob *bob);
-int plustag_validtype(t_symbol *tag, t_symbol *tname, t_pd *caller);
-int plustag_validroot(t_symbol *tag, t_symbol *rname, t_pd *caller);
-t_symbol *plustag_typename(t_symbol *tag, int validate, t_pd *caller);
-t_symbol *plustag_rootname(t_symbol *tag, int validate, t_pd *caller);
t_plusenv *plusenv_create(t_plustype *tp, t_plusbob *parent, t_symbol *id);
t_plusenv *plusenv_find(t_symbol *id, t_plusenv *defenv);