/*DDK*************************************************************************/
/*                                                                           */
/* COPYRIGHT    Copyright (C) 1995 IBM Corporation                           */
/*                                                                           */
/*    The following IBM OS/2 WARP source code is provided to you solely for  */
/*    the purpose of assisting you in your development of OS/2 WARP device   */
/*    drivers. You may use this code in accordance with the IBM License      */
/*    Agreement provided in the IBM Device Driver Source Kit for OS/2. This  */
/*    Copyright statement may not be removed.                                */
/*                                                                           */
/*****************************************************************************/
/**************************************************************************
 *
 * SOURCE FILE NAME =  PNPLIB.H
 *
 * DESCRIPTIVE NAME =  PNP function prototypes
 *
 *
 *
 * VERSION = V1.01
 *
 * DATE
 *
 * DESCRIPTION :
 *
 * Purpose:
 *
 *
 *
 * FUNCTIONS  :
 *
 * NOTES
 *
 *
 * STRUCTURES
 *
 * EXTERNAL REFERENCES
 *
 *
 *
 * EXTERNAL FUNCTIONS
 *
*/

#ifndef __RM_LIB__
#define __RM_LIB__
#include <rmcalls.h>



#define    RMNAME         "RESMGR$ "



/*********************/
/*  RMFlags          */
/*********************/
#define RM_CPL_RING3      0x0003

#define RMF_UNINITIALIZED 0x0000
#define RMF_INITIALIZED   0x0001
#define RMF_NO_RM         0x0002


#define RMCALLBASE               0
#define RMRESERVED              (RMCALLBASE+0)
#define RMGETVERSION            (RMCALLBASE+1)
#define RMCREATEDRIVER          (RMCALLBASE+2)
#define RMDESTROYDRIVER         (RMCALLBASE+3)
#define RMCREATEADAPTER         (RMCALLBASE+4)
#define RMDESTROYADAPTER        (RMCALLBASE+5)
#define RMCREATEDEVICE          (RMCALLBASE+6)
#define RMDESTROYDEVICE         (RMCALLBASE+7)
#define RMALLOCRESOURCE         (RMCALLBASE+8)
#define RMDEALLOCRESOURCE       (RMCALLBASE+9)
#define RMCLAIMRESOURCES        (RMCALLBASE+10)
#define RMRELEASERESOURCES      (RMCALLBASE+11)
#define RMCREATELDEV            (RMCALLBASE+12)
#define RMDESTROYLDEV           (RMCALLBASE+13)
#define RMCREATESYSNAME         (RMCALLBASE+14)
#define RMDESTROYSYSNAME        (RMCALLBASE+15)
#define RMADDTOHDEVICE          (RMCALLBASE+16)
#define RMKEYTOHANDLELIST       (RMCALLBASE+17)
#define RMHANDLETOTYPE          (RMCALLBASE+18)
#define RMHANDLETOPARENT        (RMCALLBASE+19)
#define RMUPDATEADJUNCT         (RMCALLBASE+20)
#define RMADJTOHANDLELIST       (RMCALLBASE+21)
#define RMHDEVTOHLDEV           (RMCALLBASE+22)
#define RMRESTOHANDLELIST       (RMCALLBASE+23)
#define RMACTIVATEADAPTER       (RMCALLBASE+24)
#define RMDEACTIVATEADAPTER     (RMCALLBASE+25)
#define RMCREATELINKDEVICE      (RMCALLBASE+26)
#define RMMODIFYRESOURCES       (RMCALLBASE+27)
#define RMGETNODEINFO           (RMCALLBASE+28)
#define RMPARSESCSIINQUIRY      (RMCALLBASE+29)
/* Note add new RMAPIs here and update RMLASTCALL) */
#define RMLASTCALL              (RMCALLBASE+30)

#define RMTABLESIZE  RMLASTCALL


USHORT FAR  CallRM( USHORT RMIndex, PVOID pCallerParm );
USHORT NEAR GetCS(VOID);

#pragma alloc_text( RMCode, CallRM )
#pragma alloc_text( RMCode, GetCS )

#endif
