original files of m241
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
/* ssm.h - Contains definitions used by ssm.c */
|
||||
|
||||
/* Copyright 2004-2005 Wind River Systems, Inc. */
|
||||
|
||||
/*
|
||||
Modification History
|
||||
--------------------
|
||||
01d,19jan06,xli Added ssiDbInit to this header
|
||||
01c,10jan06,tkf Add 'pArgs' field to ssiCompRegInfo_t and ssmCompInfo_t.
|
||||
01b,09jan06,tkf Fix DIAB compiler warnings.
|
||||
01a,21aug05,tkf Header file for ssm.c
|
||||
*/
|
||||
|
||||
/*
|
||||
DESCRIPTION
|
||||
|
||||
This file contains the public definitions for CSM.
|
||||
|
||||
*/
|
||||
|
||||
#ifndef __INCssmh
|
||||
#define __INCssmh
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
/* enums */
|
||||
|
||||
/* defines */
|
||||
|
||||
#define SSM_COMP_NAME_LEN 16
|
||||
|
||||
/* Component option defines */
|
||||
#define SSI_OPT_COMPLIANT 0x1
|
||||
#define SSI_OPT_NONEWTASK (SSI_OPT_COMPLIANT << 1)
|
||||
#define SSI_OPT_MULTI_INST (SSI_OPT_COMPLIANT << 2)
|
||||
|
||||
/* typedefs */
|
||||
|
||||
/*
|
||||
* 'SSM_COMP_LAUNCH_FUNCPTR' defines a type of a pointer to component
|
||||
* initialization/launch function.
|
||||
*/
|
||||
typedef STATUS (* SSM_COMP_LAUNCH_FUNCPTR)(long * pState, char * pArgs);
|
||||
|
||||
/*
|
||||
* 'ssiCompRegInfo_t' contains component registration info.
|
||||
*
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
char * pName; /* name of component */
|
||||
char * pDependOn; /* list of names of to depend on */
|
||||
SSM_COMP_LAUNCH_FUNCPTR launchFunc; /* Initilize/launch routine */
|
||||
char * pArgs; /* launch routine arguments */
|
||||
char * pOpts; /* options */
|
||||
} ssiCompRegInfo_t;
|
||||
|
||||
/*
|
||||
* 'ssiCompRegInfo_t' contains component info.
|
||||
*
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
char * pName;
|
||||
long groupId;
|
||||
SSM_COMP_LAUNCH_FUNCPTR launchFunc; /* Initilize/launch routine */
|
||||
char * pArgs;
|
||||
LIST dependOnList;
|
||||
long state;
|
||||
long opts;
|
||||
} ssmCompInfo_t;
|
||||
|
||||
/* forward declarations */
|
||||
STATUS ssmCompLaunchAll (void);
|
||||
|
||||
STATUS ssmSysDependencyReady(char * pName);
|
||||
|
||||
STATUS ssiDbInit(ssiCompRegInfo_t * pComps);
|
||||
|
||||
STATUS ssmCompWait(char * pName);
|
||||
|
||||
IMPORT STATUS ssmCompInfoGet
|
||||
(char * pName, ssmCompInfo_t ** pInfo);
|
||||
IMPORT STATUS ssmCompReady
|
||||
(char * pName);
|
||||
IMPORT STATUS ssmCompCreated
|
||||
(char * pName, BOOL * pCanBeInieted);
|
||||
IMPORT STATUS ssmCompLaunch
|
||||
(char * pName, char * pDependency, SSM_COMP_LAUNCH_FUNCPTR launchFunc,
|
||||
char * pArgs, char * pOpts);
|
||||
STATUS ssmCompRegister
|
||||
(char * pName, char * pDependencyList, SSM_COMP_LAUNCH_FUNCPTR launchFunc,
|
||||
char * pArgs, char * pOpts, ssmCompInfo_t ** ppComp);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif /* __cplusplus */
|
||||
#endif /* __INCssmh */
|
||||
Reference in New Issue
Block a user