home *** CD-ROM | disk | FTP | other *** search
- ;/*
- F_Create.rexx LIB Feelin:LIBS/Feelin/Dataspace.fc 1 04
- Quit
- */
-
- #include "Private.h"
-
- struct FeelinBase *FeelinBase;
- struct Library *IFFParseBase;
-
- ///METHODS
- F_METHOD(void,DS_New);
- F_METHOD(void,DS_Dispose);
- F_METHOD(void,DS_Add);
- F_METHOD(void,DS_Remove);
- F_METHOD(void,DS_Find);
- F_METHOD(void,DS_Clear);
- F_METHOD(void,DS_WriteIFF);
- F_METHOD(void,DS_ReadIFF);
- //+
-
- ///EXIT
- F_EXIT()
- {
- if (IFFParseBase)
- {
- CloseLibrary(IFFParseBase); IFFParseBase = NULL;
- }
- }
- //+
- ///INIT
- F_INIT()
- {
- if (IFFParseBase = OpenLibrary("iffparse.library",40L))
- {
- return TRUE;
- }
- return FALSE;
- }
- //+
- ///QUERY
- F_QUERY()
- {
- FeelinBase = Feelin;
-
- switch (Which)
- {
- case FV_Query_ClassTags:
- {
- static struct FeelinDynamicEntry Methods[] =
- {
- "Add",0, "Remove",0, "Find",0, "Clear",0, "Merge",0,
- "ReadIFF",0, "WriteIFF",0, NULL
- };
-
- static struct FeelinDynamicEntry Attributes[] =
- {
- "Pool",0, NULL
- };
-
- static struct FeelinMethodEntry Handlers[] =
- {
- (FMethod) DS_New, 0, FM_New,
- (FMethod) DS_Dispose, 0, FM_Dispose,
-
- (FMethod) DS_Add, (STRPTR) ~FM_Dataspace_Add, 0,
- (FMethod) DS_Remove, (STRPTR) ~FM_Dataspace_Remove, 0,
- (FMethod) DS_Find, (STRPTR) ~FM_Dataspace_Find, 0,
- (FMethod) DS_Clear, (STRPTR) ~FM_Dataspace_Clear, 0,
-
- (FMethod) DS_WriteIFF, (STRPTR) ~FM_Dataspace_WriteIFF, 0,
- (FMethod) DS_ReadIFF, (STRPTR) ~FM_Dataspace_ReadIFF, 0,
-
- NULL
- };
-
- static struct TagItem Tags[] =
- {
- FA_Class_LODSize, (ULONG) sizeof (struct LocalObjectData),
- FA_Class_Methods, (ULONG) Methods,
- FA_Class_Attributes, (ULONG) Attributes,
- FA_Class_MethodsTable, (ULONG) Handlers,
-
- FA_Class_Init, (ULONG) FCC_Init,
- FA_Class_Exit, (ULONG) FCC_Exit,
-
- TAG_DONE
- };
-
- return Tags;
- }
- }
- return NULL;
- };
- //+
-