stos: ob: Add object definition
Signed-off-by: Chloe M. <chloe@mensia.org>
This commit is contained in:
@@ -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 <stdef.h>
|
||||||
|
|
||||||
|
/* 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_ */
|
||||||
Reference in New Issue
Block a user