diff --git a/paw/stos/head/ob/object.h b/paw/stos/head/ob/object.h new file mode 100644 index 0000000..6908fc2 --- /dev/null +++ b/paw/stos/head/ob/object.h @@ -0,0 +1,41 @@ +/* + * Copyright (c) 2026, Chloe M. + * Provided under the BSD-3 clause. + * + * Description: Object manager + * Author: Chloe M. + */ + +#ifndef _OB_OBJECT_H_ +#define _OB_OBJECT_H_ 1 + +#include + +/* Maximum size of system object names */ +#define OBJECT_NAMESZ 32 + +/* + * Represents valid object types + * + * @OBJECT_DIRECTORY: Object is directory + */ +typedef enum { + OBJECT_DIRECTORY +} OBJECT_TYPE; + +/* + * Represents a Slut Technology system object + * + * @Name: Name of object + * @RefCount: Object reference count + * @Type: Object type + * @Data: Object data + */ +typedef struct { + CHAR Name[OBJECT_NAMESZ]; + ULONG RefCount; + OBJECT_TYPE Type; + VOID *Data; +} ST_OBJECT; + +#endif /* !_OB_OBJECT_H_ */