/* * * COPYRIGHT (c) 1990, 1991 BY * DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASSACHUSETTS. * ALL RIGHTS RESERVED. * * THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED * ONLY IN ACCORDANCE OF THE TERMS OF SUCH LICENSE AND WITH THE * INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER * COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY * OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY * TRANSFERRED. * * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE * AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT * CORPORATION. * * DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS * SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL. * */ /* * MODULE NAME: * * ACASAPI.H * * FACILITY: * * Application Control Architecture Services * * ABSTRACT: * * This include file contains prototypes for the ACA Services API. * * AUTHORS: * * RELEASER: * * CREATION DATE: * * MODIFICATION HISTORY: * * date person description of change * */ /* * The default style of prototype is the standard C (no arguments). * The ANSI form (with arguments) may be used by defining * ACAS_ANSI_PROTO. The default is Standard C. */ /* * NOTE - make sure to add routines in both clauses of the if ACAS_ANSI_PROTO * statement! */ #ifdef ACAS_ANSI_PROTO /* * Database Routines. */ ACASStatus ACAS_OpenDatabase ( ACASStringPtr *NameList, ACASInt NameCount, ACASInt Mode, ACASFlags Flags, ACASContextHandle ContextObject, ACASDbHandle *Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_CloseDatabase ( ACASDbHandle Handle, ACASFlags Flags, ACASErrorList *ErrorList ); ACASStatus ACAS_CreateClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASStringPtr Description, ACASClassList SuperClassList, ACASInt SuperClassCount, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_AddToClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteFromClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_CreateMethod ( ACASStringPtr Method, ACASStringPtr MethodIdentifier, ACASStringPtr Description, ACASClassList SuperClassList, ACASInt SuperClassCount, ACASFormalArgList ArgumentList, ACASInt ArgumentCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_AddToMethod ( ACASStringPtr Method, ACASStringPtr MethodIdentifier, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteFromMethod ( ACASStringPtr Method, ACASStringPtr MethodIdentifier, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_CreateMethodServer ( ACASStringPtr MethodServer, ACASStringPtr MethodServerIdentifier, ACASStringPtr Description, ACASClassList SuperClassList, ACASInt SuperClassCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_AddToMethodServer ( ACASStringPtr MethodServer, ACASStringPtr MethodServerIdentifier, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteFromMethodServer ( ACASStringPtr MethodServer, ACASStringPtr MethodServerIdentifier, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_CreateStorageClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASStringPtr Description, ACASClassList SuperClassList, ACASInt SuperClassCount, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_AddToStorageClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteFromStorageClass ( ACASStringPtr Class, ACASStringPtr ClassIdentifier, ACASMessageList MessageList, ACASInt MessageCount, ACASAttributeList AttributeList, ACASInt AttributeCount, ACASVersion VersionNumber, ACASFlags Flags, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteObject ( ACASStringPtr Name, ACASStringPtr Type, ACASStringPtr Identifier, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetMessageInfo ( ACASStringPtr Name, ACASStringPtr MessageName, ACASFormalArgList *ArgList, ACASInt *ArgCount, ACASMethodList *MethodList, ACASInt *MethodCount, ACASAttributeList *AttrList, ACASInt *AttrCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetMethodArguments ( ACASStringPtr MethodName, ACASFormalArgList *ArgumentList, ACASInt *ArgumentCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetObjectAttributes ( ACASStringPtr Name, ACASStringPtr AttributeFilter, ACASFlags Flags, ACASAttributeList *AttributeList, ACASInt *AttributeCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetObjectInfo ( ACASStringPtr Name, ACASStringPtr Type, ACASInt TypeLength, ACASStringPtr Identifier, ACASInt IdLength, ACASStringPtr Description, ACASInt DescLength, ACASVersion *VersionNumber, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetObjectMessages ( ACASStringPtr Name, ACASFlags Flags, ACASMessageList *MessageList, ACASInt *MessageCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetObjectSubclasses ( ACASStringPtr Name, ACASClassList *SubClassList, ACASInt *SubClassCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_GetObjectSuperclasses ( ACASStringPtr Name, ACASClassList *SuperClassList, ACASInt *SuperClassCount, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_TestAttribute ( ACASStringPtr Name, ACASStringPtr AttributeName, ACASStringPtr AttributeValue, ACASInt ValueLength, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_EnumerateObjects ( ACASStringPtr Name, ACASInt NameLength, ACASDbHandle Handle, ACASErrorList *ErrorList ); ACASStatus ACAS_RecoverDatabase ( ACASStringPtr Name, ACASFlags OpFlags, ACASErrorList *ErrorList); /* * List Routines. */ ACASStatus ACAS_AllocateList ( ACASInt Count, ACASInt Type, ACASList *List ); ACASStatus ACAS_GetListCount ( ACASList List, ACASInt *Count ); ACASStatus ACAS_ReallocateList ( ACASList *List, ACASInt Count ); ACASStatus ACAS_CopyList ( ACASList List, ACASInt Count, ACASInt Type, ACASInt ExtendCount, ACASList *NewList ); ACASStatus ACAS_DeallocateList (ACASList List ); ACASStatus ACAS_FindElementByName ( ACASList List, ACASInt Count, ACASInt Type, ACASStringPtr Name, ACASInt *Index ); ACASStatus ACAS_SortListByName ( ACASList List, ACASInt Count, ACASInt Type ); ACASStatus ACAS_AddArgToList ( ACASArgList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Type, ACASStringPtr Value, ACASULong Length, ACASFlags ArgFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddAttributeToList ( ACASAttributeList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Type, ACASStringPtr Value, ACASULong Length, ACASFlags AttrFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddClassToList ( ACASClassList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Id, ACASFlags ClassFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddFormalArgToList ( ACASFormalArgList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Type, ACASFlags ArgFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddItemToList ( ACASItemList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Type, ACASStringPtr Value, ACASULong Length, ACASFlags ItemFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddMessageToList ( ACASMessageList *List, ACASInt Index, ACASStringPtr Name, ACASFormalArgList ArgList, ACASUShort ArgCount, ACASMethodList MethodList, ACASUShort MethodCount, ACASAttributeList AttrList, ACASUShort AttrCount, ACASFlags MsgFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddMethodToList ( ACASMethodList *List, ACASInt Index, ACASStringPtr Name, ACASStringPtr Id, ACASFlags MethodFlags, ACASFlags OpFlags, ACASInt *OutIndex ); ACASStatus ACAS_AddErrorToList ( ACASErrorList *List, ACASStringPtr FacilityName, ACASUShort StatusType, ACASUShort Severity, ACASStringPtr Status, ACASStringPtr FormattedMessage, ACASStringPtr LanguageString, ACASArgList Parameters, ACASInt ParameterCount, ACASFlags ErrorFlags, ACASFlags OpFlags ); ACASStatus ACAS_BuildArgList ( ACASArgList *List, ACASInt *Count, ... ); ACASStatus ACAS_BuildAttributeList ( ACASAttributeList *List, ACASInt *Count, ... ); ACASStatus ACAS_BuildItemList ( ACASItemList *List, ACASInt *Count, ... ); ACASStatus ACAS_ReserveElementInList ( ACASList *List, ACASInt Index, ACASFlags OpFlags ); ACASStatus ACAS_RemoveElementFromList ( ACASList List, ACASInt Index ); ACASStatus ACAS_GetListCount ( ACASList List, ACASInt *Count ); ACASStatus ACAS_GetListType ( ACASList List, ACASInt *Type ); ACASBool ACAS_ValidList ( ACASList List ); /* * Context Object Routines. */ ACASStatus ACAS_CloseCtxObject ( ACASContextHandle CtxHnd, ACASFlags Flags, ACASErrorList *ErrorList ); ACASStatus ACAS_OpenCtxObject ( ACASStringPtr DatabaseName, ACASInt Mode, ACASContextHandle *CtxHnd, ACASFlags OpFlags, ACASErrorList *ErrorList ); ACASStatus ACAS_CreateCtxTable ( ACASContextHandle CtxHnd, ACASStringPtr TableName, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteCtxAttribute ( ACASContextHandle CtxHnd, ACASStringPtr TableName, ACASStringPtr AttribName, ACASErrorList *ErrorList ); ACASStatus ACAS_DeleteCtxTable ( ACASContextHandle CtxHnd, ACASStringPtr TableName, ACASErrorList *ErrorList ); ACASStatus ACAS_FreeCtxHandle ( ACASContextHandle CtxHnd, ACASErrorList *ErrorList ); ACASStatus ACAS_GetCtxAttributes ( ACASContextHandle CtxHnd, ACASStringPtr Scope, ACASFlags OpFlags, ACASStringPtr TableName, ACASStringPtr AttribName, ACASAttributeList *AttribList, ACASInt *AttribCount, ACASErrorList *ErrorList ); ACASStatus ACAS_GetCtxHandle ( ACASContextHandle *CtxHnd, ACASErrorList *ErrorList ); ACASStatus ACAS_SetCtxAttributes ( ACASContextHandle CtxHnd, ACASStringPtr TableName, ACASAttributeList AttribList, ACASInt AttribCount, ACASErrorList *ErrorList ); /* * Invoker Routines. */ ACASStatus ACAS_InvokeMethod ( ACASInstanceHandlePtr InstanceHandle, ACASStringPtr Message, ACASArgList ArgList, ACASInt ArgCount, ACASContextHandle CtxtObj, ACASAttributeList AttrList, ACASInt AttrCount, ACASFlags Flags, ACASInstanceHandlePtr OutHandle, ACASErrorList *ErrorList, ACASErrorList *AppErrorList ); ACASStatus ACAS_RegisterServer ( ACASStringPtr MethodServerID, ACASAttributeList ServerAttrList, ACASInt AttrCount, ACASStatus (*DispatchRoutine) (), ACASFlags Flags, ACASErrorList *ErrorList ); ACASStatus ACAS_UnregisterServer ( ACASStringPtr MethodServerID, ACASErrorList *ErrorList ); ACASStatus ACAS_MainLoop (ACASErrorList *ErrorList ); ACASStatus ACAS_Dispatch ( ACASStringPtr MethodServerID, ACASFlags Flags, ACASErrorList *ErrorList ); ACASStatus ACAS_SetServerAttributes ( ACASStringPtr MethodServerID, ACASAttributeList ServerAttrList, ACASInt Count, ACASErrorList *ErrorList ); ACASStatus ACAS_GetServerAttributes ( ACASStringPtr MethodServerID, ACASAttributeList *ServerAttrList, ACASErrorList *ErrorList ); ACASStatus ACAS_EventDispatcher ( ACASStringPtr MethodServerID, ACASErrorList *ErrorList ); ACASStatus ACAS_EventNotifier (ACASStringPtr MethodServerID ); ACASStatus ACAS_Rundown ( ACASErrorList * ErrorList ); ACASStatus ACAS_ParseInstanceHandle ( ACASStringPtr StorageClass, ACASInt * StorageClassLen, ACASStringPtr Class, ACASInt * ClassLen, ACASStringPtr Location, ACASInt * LocationLen, ACASStringPtr InstanceReferenceData, ACASInt * DataLen, ACASInstanceHandle Instance, ACASErrorList * ErrorList ); ACASStatus ACAS_CreateApplicationHandle ( ACASUuid MethodServerID, ACASStringPtr ApplicationClass, ACASAttributeList ScopeList, ACASUShort ScopeCount, ACASInstanceHandle * InstanceHandle, ACASErrorList * ErrorList ); ACASStatus ACAS_CreateInstanceHandle ( ACASStringPtr StorageClass, ACASStringPtr Class, ACASStringPtr Location, ACASStringPtr InstanceReferenceData, ACASInt InstanceReferenceDataLen, ACASInstanceHandle * InstanceHandle, ACASErrorList * ErrorList ); ACASStatus ACAS_DuplicateInstanceHandle ( ACASInstanceHandle InInstanceHandle, ACASInstanceHandle * OutInstanceHandle, ACASErrorList * ErrorList ); ACASStatus ACAS_FreeInstanceHandle ( ACASInstanceHandle InstanceHandle, ACASFlags Flags, ACASErrorList * ErrorList ); /* * Utility Routines. */ ACASInt ACAS_ConvertToConstantId ( ACASStringPtr str_ptr, ACASInt code_type ); ACASStatus ACAS_ConvertToConstantValue ( ACASInt id, ACASInt strbuf_len, ACASStringPtr strbuf_ptr, ACASInt * code_type ); ACASStatus ACAS_GenUUID ( ACASStringPtr id, ACASInt size ); ACASStatus ACAS_FormatACASErrors ( ACASErrorList errorlist, ACASInt count, ACASInt buffer_len, ACASStringPtr buffer, ACASFlags flags, ACASStringPtr lang_name, ACASErrorList *outerrorlist ); #else /* * Database Routines. */ ACASStatus ACAS_OpenDatabase (); ACASStatus ACAS_CloseDatabase (); ACASStatus ACAS_CreateClass (); ACASStatus ACAS_AddToClass (); ACASStatus ACAS_DeleteFromClass (); ACASStatus ACAS_CreateMethod (); ACASStatus ACAS_AddToMethod (); ACASStatus ACAS_DeleteFromMethod (); ACASStatus ACAS_CreateMethodServer (); ACASStatus ACAS_AddToMethodServer (); ACASStatus ACAS_DeleteFromMethodServer (); ACASStatus ACAS_CreateStorageClass (); ACASStatus ACAS_AddToStorageClass (); ACASStatus ACAS_DeleteFromStorageClass (); ACASStatus ACAS_DeleteObject (); ACASStatus ACAS_GetMessageInfo (); ACASStatus ACAS_GetMethodArguments (); ACASStatus ACAS_GetObjectAttributes (); ACASStatus ACAS_GetObjectInfo (); ACASStatus ACAS_GetObjectMessages (); ACASStatus ACAS_GetObjectSubclasses (); ACASStatus ACAS_GetObjectSuperclasses (); ACASStatus ACAS_TestAttribute (); ACASStatus ACAS_EnumerateObjects (); ACASStatus ACAS_RecoverDatabase (); /* * List Routines. */ ACASStatus ACAS_AllocateList (); ACASStatus ACAS_GetListCount (); ACASStatus ACAS_ReallocateList (); ACASStatus ACAS_CopyList (); ACASStatus ACAS_DeallocateList (); ACASStatus ACAS_FindElementByName (); ACASStatus ACAS_SortListByName (); ACASStatus ACAS_AddArgToList (); ACASStatus ACAS_AddAttributeToList (); ACASStatus ACAS_AddClassToList (); ACASStatus ACAS_AddFormalArgToList (); ACASStatus ACAS_AddItemToList (); ACASStatus ACAS_AddMessageToList (); ACASStatus ACAS_AddMethodToList (); ACASStatus ACAS_AddErrorToList (); ACASStatus ACAS_BuildArgList (); ACASStatus ACAS_BuildAttributeList (); ACASStatus ACAS_BuildItemList (); ACASStatus ACAS_ReserveElementInList (); ACASStatus ACAS_RemoveElementFromList (); ACASStatus ACAS_GetListCount (); ACASStatus ACAS_GetListType (); ACASBool ACAS_ValidList (); /* * Context Object Routines. */ ACASStatus ACAS_CloseCtxObject (); ACASStatus ACAS_OpenCtxObject (); ACASStatus ACAS_CreateCtxTable (); ACASStatus ACAS_DeleteCtxAttribute (); ACASStatus ACAS_DeleteCtxTable (); ACASStatus ACAS_FreeCtxHandle (); ACASStatus ACAS_GetCtxAttributes (); ACASStatus ACAS_GetCtxHandle (); ACASStatus ACAS_SetCtxAttributes (); /* * Invoker Routines. */ ACASStatus ACAS_InvokeMethod (); ACASStatus ACAS_RegisterServer (); ACASStatus ACAS_UnregisterServer (); ACASStatus ACAS_MainLoop (); ACASStatus ACAS_Dispatch (); ACASStatus ACAS_SetServerAttributes (); ACASStatus ACAS_GetServerAttributes (); ACASStatus ACAS_EventDispatcher (); ACASStatus ACAS_EventNotifier (); ACASStatus ACAS_Rundown (); ACASStatus ACAS_ParseInstanceHandle (); ACASStatus ACAS_CreateApplicationHandle (); ACASStatus ACAS_CreateInstanceHandle (); ACASStatus ACAS_DuplicateInstanceHandle (); ACASStatus ACAS_FreeInstanceHandle (); /* * Utility Routines. */ ACASInt ACAS_ConvertToConstantId (); ACASStatus ACAS_ConvertToConstantValue (); ACASStatus ACAS_GenUUID (); ACASStatus ACAS_FormatACASErrors (); #endif