Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

149 lines
2.8 KiB

  1. /*++
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. ifsurtl.h
  5. Abstract:
  6. This module defines all EXIFS shared routines exported to user-mode.
  7. Author:
  8. Ramesh Chinta [Ramesh Chinta] 17-Jan-2000
  9. Revision History:
  10. --*/
  11. #ifndef _IFSBLOBALS_H_
  12. #define _IFSGLOBALS_H_
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. #define DD_MAX_NAME 50
  17. #define DD_MAX_PREFIX 10
  18. class IFSURTL_EXPORT CIfsGlobals {
  19. /*
  20. This class will loads different globals based on whether it is Local store
  21. or store to call into the right driver
  22. */
  23. public:
  24. // members
  25. // device name
  26. CHAR m_szIFSDeviceName[DD_MAX_NAME+1];
  27. // device name length
  28. LONG m_lDeviceNameLength;
  29. // FS device name
  30. WCHAR m_wszFSDeviceName[DD_MAX_NAME +1];
  31. // User mode shadow dev name
  32. WCHAR m_wszUMShadowDevName[DD_MAX_NAME + 1];
  33. // Shadow mode Dev Name Len
  34. LONG m_lUMShadowDevNameLength;
  35. // User mode dev name
  36. WCHAR m_wszUMDevName[DD_MAX_NAME+1];
  37. // Public MDB share
  38. WCHAR m_wszPublicMDBShare[DD_MAX_NAME+1];
  39. // Mini Redirector Prefix
  40. WCHAR m_wszExifsMiniRdrPrefix[DD_MAX_PREFIX+1];
  41. // Mini Redirector Prefix
  42. LONG m_lExifsMiniRdrPrefixLen;
  43. // Mini Redirector Prefix Absolute Length
  44. LONG m_lExifsMiniRdrPrefixAbsLen;
  45. // Mini Redirector Prefix
  46. WCHAR m_wszExifsMiniRdrPrefixPrivate[DD_MAX_PREFIX+1];
  47. // UMR net root name
  48. WCHAR m_wszExUMRNetRootName[DD_MAX_NAME+1];
  49. CHAR m_szDrvKeyName[MAX_PATH+1];
  50. CHAR m_szDrvLetterValueName[MAX_PATH+1];
  51. CHAR m_szPbDeviceValueName[MAX_PATH+1];
  52. // Constructor
  53. CIfsGlobals(void)
  54. {
  55. // Device name
  56. m_szIFSDeviceName[0] = '\0';
  57. // device name length
  58. m_lDeviceNameLength = 0;
  59. // FS device name
  60. m_wszFSDeviceName[0] = L'\0';
  61. // User mode shadow dev name
  62. m_wszUMShadowDevName[0] = L'\0';
  63. // UM shadow DevName Length
  64. m_lUMShadowDevNameLength = 0;
  65. // User mode dev name
  66. m_wszUMDevName[0] = L'\0';
  67. // Public MDB share
  68. m_wszPublicMDBShare[0] = L'\0';
  69. // MiniRdr Pefix
  70. m_wszExifsMiniRdrPrefix[0] = L'\0';
  71. // MiniRdr Pefix
  72. m_wszExifsMiniRdrPrefixPrivate[0] = L'\0';
  73. // MiniRdr Prefix Len
  74. m_lExifsMiniRdrPrefixLen = 0;
  75. // MiniRdr Absolute Prefix Len
  76. m_lExifsMiniRdrPrefixAbsLen = 0;
  77. // UMR net root name
  78. m_wszExUMRNetRootName[0] = L'\0';
  79. // Driver Key name
  80. m_szDrvKeyName[0] = '\0';
  81. // Driver Value name
  82. m_szDrvLetterValueName[0] = '\0';
  83. // Driver Value Root
  84. m_szPbDeviceValueName[0] = '\0';
  85. }
  86. // Destructor
  87. ~CIfsGlobals(){};
  88. //methods
  89. // Load the right version of the globals
  90. void Load(void);
  91. // Unload the globals
  92. void Unload(void);
  93. };
  94. #ifdef __cplusplus
  95. }
  96. #endif
  97. #endif // _IFSGLOBALS_H_