Nucleus
Barry Basic object manager 5201ba5 (3 years, 3 months ago)
diff --git a/include/nucleus/object.h b/include/nucleus/object.h
new file mode 100644
index 0000000..bcd7c9a
--- /dev/null
+++ b/include/nucleus/object.h
@@ -0,0 +1,25 @@
+#ifndef _NUCLEUS_OBJECT_H
+#define _NUCLEUS_OBJECT_H
+
+typedef struct ObjectType ObjectType;
+typedef struct Object Object;
+
+/* Object Type */
+struct ObjectType {
+ unsigned int count;
+ unsigned int usage;
+ void *(*new)(void);
+ void (*delete)(Object *);
+};
+
+/* Object */
+struct Object {
+ ObjectType *type;
+ unsigned int usage;
+};
+
+void *get(void *addr);
+void put(void *addr);
+void *new(ObjectType *type);
+
+#endif