From 352c9b2035e32e56f10f261d94955d97f4ab0f1c Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 9 Nov 1999 22:07:23 +0000 Subject: This patch adds the basic framework for the ITRON 3.0 API implementation for RTEMS. --- cpukit/itron/include/rtems/itron/README | 10 +++ cpukit/itron/include/rtems/itron/config.h | 63 ++++++++++++++ cpukit/itron/include/rtems/itron/eventflags.h | 58 +++++++++++++ cpukit/itron/include/rtems/itron/fmempool.h | 59 +++++++++++++ cpukit/itron/include/rtems/itron/intr.h | 28 ++++++ cpukit/itron/include/rtems/itron/itronapi.h | 27 ++++++ cpukit/itron/include/rtems/itron/mbox.h | 58 +++++++++++++ cpukit/itron/include/rtems/itron/msgbuffer.h | 60 +++++++++++++ cpukit/itron/include/rtems/itron/network.h | 28 ++++++ cpukit/itron/include/rtems/itron/object.h | 117 ++++++++++++++++++++++++++ cpukit/itron/include/rtems/itron/port.h | 58 +++++++++++++ cpukit/itron/include/rtems/itron/semaphore.h | 56 ++++++++++++ cpukit/itron/include/rtems/itron/sysmgmt.h | 28 ++++++ cpukit/itron/include/rtems/itron/task.h | 88 +++++++++++++++++++ cpukit/itron/include/rtems/itron/time.h | 28 ++++++ cpukit/itron/include/rtems/itron/vmempool.h | 59 +++++++++++++ 16 files changed, 825 insertions(+) create mode 100644 cpukit/itron/include/rtems/itron/README create mode 100644 cpukit/itron/include/rtems/itron/config.h create mode 100644 cpukit/itron/include/rtems/itron/eventflags.h create mode 100644 cpukit/itron/include/rtems/itron/fmempool.h create mode 100644 cpukit/itron/include/rtems/itron/intr.h create mode 100644 cpukit/itron/include/rtems/itron/itronapi.h create mode 100644 cpukit/itron/include/rtems/itron/mbox.h create mode 100644 cpukit/itron/include/rtems/itron/msgbuffer.h create mode 100644 cpukit/itron/include/rtems/itron/network.h create mode 100644 cpukit/itron/include/rtems/itron/object.h create mode 100644 cpukit/itron/include/rtems/itron/port.h create mode 100644 cpukit/itron/include/rtems/itron/semaphore.h create mode 100644 cpukit/itron/include/rtems/itron/sysmgmt.h create mode 100644 cpukit/itron/include/rtems/itron/task.h create mode 100644 cpukit/itron/include/rtems/itron/time.h create mode 100644 cpukit/itron/include/rtems/itron/vmempool.h (limited to 'cpukit/itron/include/rtems/itron') diff --git a/cpukit/itron/include/rtems/itron/README b/cpukit/itron/include/rtems/itron/README new file mode 100644 index 0000000000..9ac3bf3417 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/README @@ -0,0 +1,10 @@ +# +# $Id$ +# + +This directory contains the private interface of each manager. +These files should only be included from the from the +implementation of each manager. + +The public header file for each ITRON manager is in +../../../tronsys. \ No newline at end of file diff --git a/cpukit/itron/include/rtems/itron/config.h b/cpukit/itron/include/rtems/itron/config.h new file mode 100644 index 0000000000..8403832025 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/config.h @@ -0,0 +1,63 @@ +/* config.h + * + * This include file contains the table of user defined configuration + * parameters specific for the ITRON API. + * + * COPYRIGHT (c) 1989-1998. + * On-Line Applications Research Corporation (OAR). + * Copyright assigned to U.S. Government, 1994. + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_CONFIGURATION_h +#define __RTEMS_ITRON_CONFIGURATION_h + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * XXX + * + * The following records define the Configuration Table. The + * information contained in this table is required in all + * RTEMS systems, whether single or multiprocessor. This + * table primarily defines the following: + * + * + required number of each object type + */ + +/* + * For now, we are only allowing the user to specify the entry point + * and stack size for ITRON initialization threads. + */ + +typedef struct { + ID id; + T_CTSK attributes; +} itron_initialization_tasks_table; + +typedef struct { + int maximum_tasks; + int maximum_semaphores; + int maximum_eventflags; + int maximum_mailboxes; + int maximum_message_buffers; + int maximum_ports; + int maximum_memory_pools; + int maximum_fixed_memory_pools; + int number_of_initialization_tasks; + itron_initialization_tasks_table *User_initialization_tasks_table; +} itron_api_configuration_table; + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ diff --git a/cpukit/itron/include/rtems/itron/eventflags.h b/cpukit/itron/include/rtems/itron/eventflags.h new file mode 100644 index 0000000000..3bd2903aaa --- /dev/null +++ b/cpukit/itron/include/rtems/itron/eventflags.h @@ -0,0 +1,58 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_EVENTFLAGS_h_ +#define __RTEMS_ITRON_EVENTFLAGS_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/* + * The following defines the control block used to manage each event flag. + */ + +typedef struct { + ITRON_Objects_Control Object; + unsigned32 XXX_more_stuff_goes_here; +} ITRON_Eventflags_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Eventflags_Information; + +/* + * _ITRON_Eventflags_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Eventflags_Manager_initialization( + unsigned32 maximum_eventflags +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/fmempool.h b/cpukit/itron/include/rtems/itron/fmempool.h new file mode 100644 index 0000000000..5ee17fd6b0 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/fmempool.h @@ -0,0 +1,59 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_FIXED_MEMORYPOOL_h_ +#define __RTEMS_ITRON_FIXED_MEMORYPOOL_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/* + * The following defines the control block used to manage each + * fixed memory pool. + */ + +typedef struct { + ITRON_Objects_Control Object; + unsigned32 XXX_more_stuff_goes_here; +} ITRON_Fixed_memory_pool_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Fixed_memory_pool_Information; + +/* + * _ITRON_Fixed_memory_pool_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Fixed_memory_pool_Manager_initialization( + unsigned32 maximum_fixed_memory_pools +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/intr.h b/cpukit/itron/include/rtems/itron/intr.h new file mode 100644 index 0000000000..d6d2703462 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/intr.h @@ -0,0 +1,28 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_INTERRUPT_h_ +#define __RTEMS_ITRON_INTERRUPT_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/itronapi.h b/cpukit/itron/include/rtems/itron/itronapi.h new file mode 100644 index 0000000000..b66f5fa379 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/itronapi.h @@ -0,0 +1,27 @@ +/* + * ITRON API Support + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __ITRON_API_h +#define __ITRON_API_h + +#include + +/* + * _ITRON_API_Initialize + * + * Initialize the ITRON API. + */ + +void _ITRON_API_Initialize( + rtems_configuration_table *configuration_table +); + +#endif +/* end of include file */ diff --git a/cpukit/itron/include/rtems/itron/mbox.h b/cpukit/itron/include/rtems/itron/mbox.h new file mode 100644 index 0000000000..5ce4180643 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/mbox.h @@ -0,0 +1,58 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_MBOX_h_ +#define __RTEMS_ITRON_MBOX_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/* + * The following defines the control block used to manage each mailbox. + */ + +typedef struct { + ITRON_Objects_Control Object; + unsigned32 XXX_more_stuff_goes_here; +} ITRON_Mailbox_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Mailbox_Information; + +/* + * _ITRON_Mailbox_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Mailbox_Manager_initialization( + unsigned32 maximum_mailboxes +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/msgbuffer.h b/cpukit/itron/include/rtems/itron/msgbuffer.h new file mode 100644 index 0000000000..bc559b5a65 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/msgbuffer.h @@ -0,0 +1,60 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_MESSAGEBUFFER_h_ +#define __RTEMS_ITRON_MESSAGEBUFFER_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +/* + * The following defines the control block used to manage each + * message buffer. + */ + +typedef struct { + ITRON_Objects_Control Object; + boolean is_priority_blocking; + CORE_message_queue_Control message_queue; +} ITRON_Message_buffer_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Message_buffer_Information; + +/* + * _ITRON_Message_buffer_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Message_buffer_Manager_initialization( + unsigned32 maximum_message_buffers +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ diff --git a/cpukit/itron/include/rtems/itron/network.h b/cpukit/itron/include/rtems/itron/network.h new file mode 100644 index 0000000000..23e1d2f7bf --- /dev/null +++ b/cpukit/itron/include/rtems/itron/network.h @@ -0,0 +1,28 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_NETWORK_h_ +#define __RTEMS_ITRON_NETWORK_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/object.h b/cpukit/itron/include/rtems/itron/object.h new file mode 100644 index 0000000000..71bc9ed6d1 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/object.h @@ -0,0 +1,117 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_OBJECT_h_ +#define __RTEMS_ITRON_OBJECT_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +typedef Objects_Control ITRON_Objects_Control; + +/* + * Maximum length of an ITRON object name + * + * NOTE: Since ITRON objects do not have names, then then length is 0. + */ + +#define ITRON_MAXIMUM_NAME_LENGTH 0 + +/* + * _ITRON_Objects_Open + * + * Make this ITRON object visible to the system. + * + * NOTE: This macro hides the fact that ITRON objects don't have names. + */ + +#define _ITRON_Objects_Open( _the_information, _the_object ) \ + _Objects_Open( (_the_information), (_the_object), 0 ) + +/* + * _ITRON_Objects_Close + * + * Make this ITRON object invisible from the system. Usually used as + * the first step of deleting an object. + */ + +#define _ITRON_Objects_Close( _the_information, _the_object ) \ + _Objects_Close( (_the_information), (_the_object) ) + +/* + * _ITRON_Objects_Allocate_by_index + * + * Allocate the ITRON object specified by "_id". The ITRON id is the + * index portion of the traditional RTEMS ID. The Classic and POSIX + * APIs do not require that a specific object be allocated. + */ + +#define _ITRON_Objects_Allocate_by_index( _the_information, _id, _sizeof ) \ + _Objects_Allocate_by_index( (_the_information), (_id), (_sizeof) ) + +/* + * _ITRON_Objects_Clarify_allocation_id_error + * + * This function is invoked when an object allocation ID error + * occurs to determine the specific ITRON error code to return. + */ + +#define _ITRON_Objects_Clarify_allocation_id_error( _the_information, _id ) \ + (((_id) < -4) ? E_OACV : /* attempt to access a "system object" */ \ + ((_id) <= 0) ? E_ID : /* bogus index of 0 - -3 */ \ + ((_id) <= (_the_information)->maximum) ? E_OBJ : /* object is in use */ \ + E_ID) /* simply a bad id */ + +/* + * _ITRON_Objects_Clarify_get_id_error + * + * This function is invoked when an object get ID error + * occurs to determine the specific ITRON error code to return. + */ + +#define _ITRON_Objects_Clarify_get_id_error( _the_information, _id ) \ + (((_id) < -4) ? E_OACV : /* attempt to access a "system object" */ \ + ((_id) <= 0) ? E_ID : /* bogus index of 0 - -3 */ \ + ((_id) <= (_the_information)->maximum) ? E_OBJ : /* object is in use */ \ + E_ID) /* simply a bad id */ + + +/* + * _ITRON_Objects_Free + * + * Free this ITRON object to the pool of inactive objects. This + * operation is the same as for the Classic and POSIX APIs. + */ + +#define _ITRON_Objects_Free( _the_information, _the_object ) \ + _Objects_Free( (_the_information), (_the_object) ) + + +/* + * _ITRON_Objects_Get + * + * Obtain (get) the pointer to the control block for the object + * specified by "id". The ITRON id passed in here is simply + * the "index" portion of the traditional RTEMS ID. This + * requires that this operation be slightly different + * from the object get used by the Classic and POSIX APIs. + */ + +#define _ITRON_Objects_Get( _the_information, _id, _the_object ) \ + _Objects_Get( (_the_information), (_id), (_the_object) ) + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/port.h b/cpukit/itron/include/rtems/itron/port.h new file mode 100644 index 0000000000..cfa71c8651 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/port.h @@ -0,0 +1,58 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_PORT_h_ +#define __RTEMS_ITRON_PORT_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/* + * The following defines the control block used to manage each port. + */ + +typedef struct { + ITRON_Objects_Control Object; + unsigned32 XXX_more_stuff_goes_here; +} ITRON_Port_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Port_Information; + +/* + * _ITRON_Port_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Port_Manager_initialization( + unsigned32 maximum_ports +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/semaphore.h b/cpukit/itron/include/rtems/itron/semaphore.h new file mode 100644 index 0000000000..8bfd1d783a --- /dev/null +++ b/cpukit/itron/include/rtems/itron/semaphore.h @@ -0,0 +1,56 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_SEMAPHORE_h_ +#define __RTEMS_ITRON_SEMAPHORE_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include + +/* + * The following defines the control block used to manage each semaphore. + */ + +typedef struct { + ITRON_Objects_Control Object; + boolean is_priority_blocking; + CORE_semaphore_Control semaphore; +} ITRON_Semaphore_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Semaphore_Information; + +/* + * _ITRON_Semaphore_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Semaphore_Manager_initialization( + unsigned32 maximum_semaphores +); + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/sysmgmt.h b/cpukit/itron/include/rtems/itron/sysmgmt.h new file mode 100644 index 0000000000..92b6cf72db --- /dev/null +++ b/cpukit/itron/include/rtems/itron/sysmgmt.h @@ -0,0 +1,28 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_TIME_h_ +#define __RTEMS_ITRON_TIME_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/task.h b/cpukit/itron/include/rtems/itron/task.h new file mode 100644 index 0000000000..fffcc16d82 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/task.h @@ -0,0 +1,88 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_TASK_h_ +#define __RTEMS_ITRON_TASK_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include +#include +#include + +/* + * This macro evaluates to TRUE if there should be a "context error." + * This is defined as a blocking directive being issed from + * task-independent portions or a task in dispatch disabled state. + * + * NOTE: Dispatching is disabled in interrupts so this should cover + * both cases. + */ + +#define _ITRON_Is_in_non_task_state() \ + (_Thread_Dispatch_disable_level != 0) + +/* + * This is the API specific information required by each thread for + * the ITRON API to function correctly. + */ + + +typedef struct { + unsigned32 unused; /* no use for the API extension */ + /* structure for ITRON identified yet */ +} ITRON_API_Control; + +/* + * The following defines the information control block used to + * manage this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Task_Information; + +/* + * These are used to manage the user initialization tasks. + */ + +ITRON_EXTERN itron_initialization_tasks_table + *_ITRON_Task_User_initialization_tasks; +ITRON_EXTERN unsigned32 _ITRON_Task_Number_of_initialization_tasks; + + +/* + * _ITRON_Task_Manager_initialization + * + * This routine initializes the ITRON Task Manager. + */ + +void _ITRON_Task_Manager_initialization( + unsigned32 maximum_tasks, + unsigned32 number_of_initialization_tasks, + itron_initialization_tasks_table *user_tasks +); + +/* + * + * _ITRON_Delete_task + */ + +ER _ITRON_Delete_task( + Thread_Control *the_thread +); + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/time.h b/cpukit/itron/include/rtems/itron/time.h new file mode 100644 index 0000000000..0cc2d20101 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/time.h @@ -0,0 +1,28 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_TIME_h_ +#define __RTEMS_ITRON_TIME_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + diff --git a/cpukit/itron/include/rtems/itron/vmempool.h b/cpukit/itron/include/rtems/itron/vmempool.h new file mode 100644 index 0000000000..63bf3310f9 --- /dev/null +++ b/cpukit/itron/include/rtems/itron/vmempool.h @@ -0,0 +1,59 @@ +/* + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.OARcorp.com/rtems/license.html. + * + * $Id$ + */ + +#ifndef __RTEMS_ITRON_VARIABLE_MEMORYPOOL_h_ +#define __RTEMS_ITRON_VARIABLE_MEMORYPOOL_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include + +/* + * The following defines the control block used to manage each variable + * memory pool. + */ + +typedef struct { + ITRON_Objects_Control Object; + unsigned32 XXX_more_stuff_goes_here; +} ITRON_Variable_memory_pool_Control; + +/* + * The following defines the information control block used to manage + * this class of objects. + */ + +ITRON_EXTERN Objects_Information _ITRON_Variable_memory_pool_Information; + +/* + * _ITRON_Variable_memory_pool_Manager_initialization + * + * DESCRIPTION: + * + * This routine performs the initialization necessary for this manager. + */ + +void _ITRON_Variable_memory_pool_Manager_initialization( + unsigned32 maximum_variable_memory_pools +); + +/* + * XXX insert private stuff here + */ + +#include + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ + -- cgit v1.2.3