Added support for zip files.
[cake.git] / rom / oop / privatestubs.c
blob0b2d58ed2a6708c3430c4138eb57d10da32dd905
1 /*
2 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc: Stubs for private methods.
6 Lang: english
7 */
8 #include <proto/oop.h>
9 #include <oop/oop.h>
10 #include "private.h"
11 #include "intern.h"
13 #undef DEBUG
14 #define DEBUG 0
15 #include <aros/debug.h>
17 #define OOPBase (OOP_OOPBASE(o))
19 #ifndef AROS_CREATE_ROM
20 # define STATIC_MID static OOP_MethodID mid
21 #else
22 # define STATIC_MID OOP_MethodID mid = 0
23 #endif
25 BOOL meta_allocdisptabs(OOP_Object *o, OOP_Class *super, struct OOP_InterfaceDescr *ifdescr)
27 STATIC_MID;
28 struct P_meta_allocdisptabs p;
30 if (!mid)
31 mid = OOP_GetMethodID(IID_Meta, MO_meta_allocdisptabs);
33 p.mid = mid;
34 p.superclass = super;
35 p.ifdescr = ifdescr;
37 return ( OOP_DoMethod(o, (OOP_Msg)&p) );
40 VOID meta_freedisptabs(OOP_Object *o)
42 STATIC_MID;
43 struct P_meta_freedisptabs p;
45 if (!mid)
46 mid = OOP_GetMethodID(IID_Meta, MO_meta_freedisptabs);
48 p.mid = mid;
50 OOP_DoMethod(o, (OOP_Msg)&p);
52 return;
57 struct IFMethod *meta_iterateifs(OOP_Object *o, IPTR *iterval_ptr, STRPTR *interface_id_ptr, ULONG *num_methods_ptr)
59 STATIC_MID;
60 struct P_meta_iterateifs p;
62 if (!mid)
63 mid = OOP_GetMethodID(IID_Meta, MO_meta_iterateifs);
65 p.mid = mid;
66 p.iterval_ptr = iterval_ptr;
67 p.interface_id_ptr = interface_id_ptr;
68 p.num_methods_ptr = num_methods_ptr;
70 return (struct IFMethod *)OOP_DoMethod(o, (OOP_Msg)&p);
74 struct IFMethod *meta_getifinfo(OOP_Object *o, STRPTR interface_id, ULONG *num_methods_ptr)
76 STATIC_MID;
77 struct P_meta_getifinfo p;
79 if (!mid)
80 mid = OOP_GetMethodID(IID_Meta, MO_meta_getifinfo);
82 p.mid = mid;
83 p.interface_id = interface_id;
84 p.num_methods_ptr = num_methods_ptr;
86 return (struct IFMethod *)OOP_DoMethod(o, (OOP_Msg)&p);
90 #undef OOPBase
92 struct IFMethod *meta_findmethod(OOP_Object *o, OOP_MethodID method_to_find, struct Library *OOPBase)
94 STATIC_MID;
95 struct P_meta_findmethod p;
97 if (!mid)
98 mid = OOP_GetMethodID(IID_Meta, MO_meta_findmethod);
100 p.mid = mid;
101 p.method_to_find = method_to_find;
103 return (struct IFMethod *)OOP_DoMethod(o, (OOP_Msg)&p);