aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/tools/old_objects.h
diff options
context:
space:
mode:
authorMax Horn2009-02-16 00:16:58 +0000
committerMax Horn2009-02-16 00:16:58 +0000
commit7ecb41027c2ed21b6a53ab6d60a57873c96b4f85 (patch)
tree0a766bc0296148b7c60ed60e3d24a48bc39c6542 /engines/sci/tools/old_objects.h
parent87bfde321f7ac505b797efa7ed72f087fd5e9b42 (diff)
downloadscummvm-rg350-7ecb41027c2ed21b6a53ab6d60a57873c96b4f85.tar.gz
scummvm-rg350-7ecb41027c2ed21b6a53ab6d60a57873c96b4f85.tar.bz2
scummvm-rg350-7ecb41027c2ed21b6a53ab6d60a57873c96b4f85.zip
SCI: Moved old_objects.* to tools, as it is only used by tools/scriptdump.cpp, as far as I can tell
svn-id: r38333
Diffstat (limited to 'engines/sci/tools/old_objects.h')
-rw-r--r--engines/sci/tools/old_objects.h47
1 files changed, 47 insertions, 0 deletions
diff --git a/engines/sci/tools/old_objects.h b/engines/sci/tools/old_objects.h
new file mode 100644
index 0000000000..e13e2a5c32
--- /dev/null
+++ b/engines/sci/tools/old_objects.h
@@ -0,0 +1,47 @@
+#ifndef OLD_OBJECTS_H
+#define OLD_OBJECTS_H
+
+#include "common/scummsys.h"
+#include "engine/sci/include/sciresource.h"
+#include "engine/sci/include/util.h"
+
+typedef FLEXARRAY(script_opcode, int number;) script_method;
+
+typedef struct object_ {
+ /*These are based on cached selector values, and set to the values
+ *the selectors had at load time. If the selectors are changed in
+ *instances, inconsistency will follow*/
+ struct object_* parent;
+ const char* name;
+
+ FLEXARRAY_NOEXTRA(struct object_*) children;
+
+ /*No flexarray, size the size is known from the start*/
+ script_method** methods;
+ int method_count;
+
+ int selector_count;
+ int* selector_numbers;
+} object;
+
+typedef struct {
+ int id;
+ object* classID;
+ byte* heap;
+ int offset;
+} instance;
+
+extern object **object_map, *object_root;
+extern int max_object;
+
+#define SCRIPT_PRINT_METHODS 1
+#define SCRIPT_PRINT_CHILDREN 2
+#define SCRIPT_PRINT_SELECTORS 3
+void printObject(object* obj, int flags);
+
+int loadObjects(resource_mgr_t *resmgr);
+void freeObject(object*);
+
+extern const char* globals[];
+
+#endif