Leaked source code of windows server 2003
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.

48 lines
1.6 KiB

  1. #ifndef _ONESTOP_H
  2. #define _ONESTOP_H
  3. /*
  4. File: OneStop.h
  5. Public Header for OE's OneStop Implementation
  6. */
  7. #include <syncmgr.h>
  8. #include "imnact.h"
  9. // ================================= DATA TYPES
  10. // Base structure for an OfflineHandler item (one line in the listview)
  11. // Specific implementations allocate extra space on the end for their specific data.
  12. typedef struct _SYNCMGRHANDLERITEM
  13. {
  14. _SYNCMGRHANDLERITEM *pNextOfflineItem;
  15. SYNCMGRITEM offlineItem;
  16. CHAR szAcctID[CCHMAX_ACCOUNT_NAME];
  17. CHAR szAcctName[CCHMAX_ACCOUNT_NAME];
  18. DWORD dwUserID;
  19. ACCTTYPE accttype;
  20. } SYNCMGRHANDLERITEM;
  21. typedef SYNCMGRHANDLERITEM *LPSYNCMGRHANDLERITEM;
  22. // structure for keeping track of items as a whole
  23. typedef struct _tagSYNCMGRHANDLERITEMS
  24. {
  25. LONG cRefs;
  26. DWORD dwNumOfflineItems;
  27. LPSYNCMGRHANDLERITEM pFirstOfflineItem;
  28. } SYNCMGRHANDLERITEMS;
  29. typedef SYNCMGRHANDLERITEMS *LPSYNCMGRHANDLERITEMS;
  30. // ================================= FUNCTIONS
  31. // Class Factory Entry Point
  32. HRESULT CreateInstance_OneStopHandler(IUnknown *pUnkOuter, IUnknown **ppUnknown);
  33. // OfflineHandlerItemList Manipulation
  34. DWORD OHIL_AddRef(LPSYNCMGRHANDLERITEMS lpOfflineItem);
  35. DWORD OHIL_Release(LPSYNCMGRHANDLERITEMS lpOfflineItem);
  36. LPSYNCMGRHANDLERITEMS OHIL_Create();
  37. LPSYNCMGRHANDLERITEM OHIL_AddItem(LPSYNCMGRHANDLERITEMS pOfflineItemsList);
  38. void InvokeSyncMgr(HWND hwnd, ISyncMgrSynchronizeInvoke ** ppSyncMgr, BOOL bPrompt);
  39. #endif // _ONESTOP_H