- First LibNode V3 implementation test...

- Not fully implemented.
- Have to switch to the second one.
This commit is contained in:
2024-06-12 12:43:26 +02:00
parent 8e14ba08bf
commit c51bb5090c
3 changed files with 549 additions and 9 deletions

View File

@@ -143,7 +143,7 @@ typedef int DST_Flags;
#define DSD_DATASTRUCT_STATUS_VALID 0x0002
#define DSD_DATASTRUCT_STATUS_INVALID 0x0003
#define DSD_DATASTRUCT_STATUS_MSK ( DSD_DATASTRUCT_STATUS_UNKNOWN | DSD_DATASTRUCT_STATUS_TEMPORARY | DSD_DATASTRUCT_STATUS_VALID | DSD_DATASTRUCT_STATUS_INVALID)
#define DSD_DATASTRUCT_STATUS_RMSK ( DSD_DATASTRUCT_STATUS_MSK
#define DSD_DATASTRUCT_STATUS_RMSK ( DSD_DATASTRUCT_STATUS_MSK ^ 0xffff)
#define DSD_DATASTRUCT_STATUS_VALUE_UNKNOWN_IS( V) ( ( V) == DSD_DATASTRUCT_STATUS_UNKNOWN)
#define DSD_DATASTRUCT_STATUS_VALUE_TEMPORARY( V) ( ( V) == DSD_DATASTRUCT_STATUS_TEMPORARY)
@@ -156,12 +156,16 @@ typedef int DST_Flags;
typedef struct DST_Root
{
char Name[ DSD_NAME_SIZE];
char Heap_Name[ DSD_NAME_SIZE];
struct NDT_Root;
// char Name[ DSD_NAME_SIZE];
char Heap_Name[ DSD_NAME_SIZE];
int OpenSemId; /* Indique le nombre de processus ayant ouvert la struture */
short Heap_Owner; /* Indique si la structure est propriétaire du heap sous-jacent */
short Status; /* Indique si la structure est valide ou non */
NDT_Root ND_Root;
// short Status; /* Indique si la structure est valide ou non */
// NDT_Root ND_Root;
} DST_Root;
/*
@@ -248,6 +252,36 @@ typedef struct DST_RootDescZ
/*------------------------------------------------------------------------------*/
/* DataStruct handlers */
/*------------------------------------------------------------------------------*/
NDT_Handler DSG_DataStruct_Handlers[ NDD_HANDLER_NB] =
{
{ "", /* Manager function name */
NULL}, /* Manager function pointer */
{ "DS_Handler_Init", /* Init function name */
NULL}, /* Init function pointer */
{ "SM_Base_Alloc", /* Alloc function name */
NULL}, /* Alloc function pointer */
{ "SM_Base_Free", /* Free function name */
NULL}, /* Free function pointer */
{ "DS_Handler_Open", /* Open function name */
NULL}, /* Open function pointer */
{ "", /* Close function name */
NULL}, /* Close function pointer */
{ "DS_Handler_Info", /* Info function name */
NULL}, /* Info function pointer */
{ "", /* Lock function name */
NULL}, /* Lock function pointer */
{ "", /* Unlock function name */
NULL} /* Unlock function pointer */
};
/* Définition des alias de l'API */
#ifndef DS_MODE