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.

84 lines
2.3 KiB

  1. // nmctl1.h : Declaration of the CNMChatObj
  2. #ifndef __NMCHATOBJ_H_
  3. #define __NMCHATOBJ_H_
  4. #include <igccapp.h>
  5. #include "resource.h" // main symbols
  6. #include <it120app.h>
  7. typedef struct MEMBER_CHANNEL_ID
  8. {
  9. T120NodeID nNodeId;
  10. T120ChannelID nSendId;
  11. T120ChannelID nPrivateSendId;
  12. T120ChannelID nWhisperId;
  13. } MEMBER_CHANNEL_ID;
  14. //
  15. // Member ID
  16. //
  17. #define MAKE_MEMBER_ID(nid, uid) (MAKELONG((nid), (uid)))
  18. #define GET_NODE_ID_FROM_MEMBER_ID(id) (LOWORD(id))
  19. #define GET_USER_ID_FROM_MEMBER_ID(id) (HIWORD(id))
  20. //
  21. // Member ID arrays, assuming 512 members
  22. //
  23. #define MAX_MEMBERS 512
  24. static MEMBER_CHANNEL_ID g_aMembers[MAX_MEMBERS];
  25. void MCSSendDataIndication(ULONG uSize, LPBYTE pb, T120ChannelID destinationID, T120UserID senderID);
  26. /////////////////////////////////////////////////////////////////////////////
  27. // CNMChatObj
  28. class CChatObj
  29. {
  30. public: // Construction/destruction and initialization
  31. CChatObj();
  32. ~CChatObj();
  33. //
  34. // T120 stuff
  35. //
  36. IT120Applet *m_pApplet;
  37. IT120AppletSession *m_pAppletSession;
  38. T120JoinSessionRequest m_JoinSessionReq;
  39. T120ResourceRequest m_resourceRequest;
  40. T120TokenRequest m_tokenRequest;
  41. T120ConfID m_nConfID;
  42. T120UserID m_uidMyself;
  43. T120SessionID m_sidMyself;
  44. T120EntityID m_eidMyself;
  45. T120NodeID m_nidMyself;
  46. T120ChannelID m_broadcastChannel;
  47. MEMBER_CHANNEL_ID *m_aMembers;
  48. BOOL m_fInConference;
  49. MEMBER_ID m_MyMemberID;
  50. UINT_PTR m_nTimerID;
  51. GCCAppProtocolEntity m_ChatProtocolEnt;
  52. GCCAppProtocolEntity *m_pChatProtocolEnt;
  53. GCCAppProtEntityList m_AppProtoEntList;
  54. GCCSimpleNodeList m_NodeList;
  55. BOOL IsInConference(void) { return m_fInConference; }
  56. T120ConfID GetConfID(void) { return m_nConfID; }
  57. void OnPermitToEnroll(T120ConfID, BOOL fPermissionGranted);
  58. void OnJoinSessionConfirm(T120JoinSessionConfirm *);
  59. void OnAllocateHandleConfirm(GCCRegAllocateHandleConfirm *);
  60. void OnRosterIndication(ULONG cRosters, GCCAppRoster *apRosters[]);
  61. void OnRegistryEntryConfirm(GCCRegistryConfirm *);
  62. void CleanupPerConf(void);
  63. void LeaveT120(void);
  64. void SearchWhisperId(void);
  65. void InvokeApplet(void);
  66. T120Error SendData(T120UserID userID, ULONG cb, PBYTE pb);
  67. };
  68. #endif //__NMCHATOBJ_H_
  69.