home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / viscobv6.zip / vac22os2 / ibmcobol / samples / toolkit / mm / fssht / fsshgdat.c < prev    next >
C/C++ Source or Header  |  1996-11-19  |  4KB  |  63 lines

  1. /****************************************************************************/
  2. /*                                                                          */
  3. /*                    Copyright (c) IBM Corporation 1992, 1993              */
  4. /*                           All Rights Reserved                            */
  5. /*                                                                          */
  6. /* SOURCE FILE NAME:  FSSHGDAT.C                                            */
  7. /*                                                                          */
  8. /* DESCRIPTIVE NAME:  File System Stream Handler Global Data                */
  9. /*                                                                          */
  10. /* NOTES: This is a DLL global data file. It contains the global data       */
  11. /*        declarations for this stream handler.                             */
  12. /*                                                                          */
  13. /* ENTRY POINTS: None                                                       */
  14. /*                                                                          */
  15. /*************************** END OF SPECIFICATIONS **************************/
  16. #define  INCL_NOPMAPI
  17. #define  INCL_DOSSEMAPHORES
  18. #define  INCL_DOSPROCESS
  19. #include <os2.h>
  20. #include <os2me.h>
  21. #include <hhpheap.h>
  22. #include <shi.h>
  23. #include <fssh.h>
  24.  
  25. #pragma data_seg (SHR_SEG)               /* Put this into a seperate data seg */
  26.  
  27. PESPCB pESPCB_ListHead = NULL;           /* Pointer to list of Extended SPCB's */
  28.  
  29. ULONG  ulProcessCount = 0;               /* # of processes using this stream */
  30.                                          /*  handler.  Access to this variable */
  31.                                          /*  is controlled by the hmtxProcCnt */
  32.                                          /*  semaphore. */
  33. PSIB pSIB_list_head = NULL;              /* Pointer to list of SIB's in use */
  34.                                          /*  for this process. Access to */
  35.                                          /*  this list is controlled by the */
  36.                                          /*  hmtxGlobalData semaphore. */
  37. PSZ pszHandlerName = (PSZ)FSSH_HANDLER_NAME;  /* Name of this stream handler */
  38. ULONG ulHandlerVersion = FSSH_VERSION;   /* Version of this handler */
  39. HID SrcHandlerID = 0;                    /* Handler ID returned from Register */
  40. HID TgtHandlerID = 0;                    /* Handler ID returned from Register */
  41. HHUGEHEAP hHeap = NULL;                  /* Handle of heap for SIB's and EVCB's */
  42. PSZ pszProcCntMutexName = (PSZ)FSSH_PROCCNT_MTX; /* Name of semaphore to control the */
  43.                                          /*  usProcessCount variable. */
  44. HMTX hmtxProcCnt = 0;                    /* Handle of semaphore to control the */
  45.                                          /*  usProcessCount variable. */
  46. HMTX hmtxGlobalData = 0;                 /* Handle of semaphore to control the */
  47.                                          /*  Global Data structures. */
  48. PFNTHREAD ShWriteRtn = (PFNTHREAD) FsshWrite;        /* Write routine */
  49. PFNTHREAD ShReadRtn = (PFNTHREAD) FsshRead;          /* Read routine */
  50.  
  51. PFNSHINSTALLCHECK           pfnShInstallCheck = NULL;  /* variable to hold @ of install check routine */
  52. PFNSHCSENDMSG               pfnShcSendMsg = NULL;      /* variable to hold @ of ShcSendMsg routine */
  53. PFNSHCGETTIME               pfnShcGetTime = NULL;      /* variable to hold @ of ShcGetTime routine */
  54. PFNSHCENABLEEVENT           pfnShcEnableEvent = NULL;  /* variable to hold @ of ShcEnableEvent routine */
  55. PFNSHCDISABLEEVENT          pfnShcDisableEvent = NULL; /* variable to hold @ of ShcDisableEvent routine */
  56. PFNSHCENABLESYNC            pfnShcEnableSync = NULL;   /* variable to hold @ of ShcEnableSync routine */
  57. PFNSHCDISABLESYNC           pfnShcDisableSync = NULL;  /* variable to hold @ of ShcDisableSync routine */
  58.  
  59. ULONG         ulHandlerFlags = HANDLER_CAN_BE_SOURCE |
  60.                                HANDLER_CAN_BE_TARGET ;
  61.  
  62. #pragma data_seg ()
  63.