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.

137 lines
8.3 KiB

  1. #ifdef ENABLE_PC
  2. /****************************************************************************/
  3. /* */
  4. /* ERNCPCM.HPP */
  5. /* */
  6. /* Physical Connection Manager class for the Reference System Node */
  7. /* Controller. */
  8. /* */
  9. /* Copyright Data Connection Ltd. 1995 */
  10. /* */
  11. /****************************************************************************/
  12. /* Changes: */
  13. /* */
  14. /* 16Jun95 NFC Created. */
  15. /* */
  16. /****************************************************************************/
  17. #ifndef __ERNCPCM_HPP_
  18. #define __ERNCPCM_HPP_
  19. #include "erncpc.hpp"
  20. class DCRNCConference;
  21. class DCRNCPhysicalConnectionManager
  22. {
  23. friend class DCRNCConferenceManager;
  24. public:
  25. /************************************************************************/
  26. /* FUNCTION: DCRNCPhysicalConnectionManager Constructor. */
  27. /* */
  28. /* DESCRIPTION: */
  29. /* */
  30. /* This is the constructor for the physical connection manager. */
  31. /* */
  32. /* PARAMETERS: */
  33. /* */
  34. /* pSuccess - pointer to BOOL holding result of constructor on return.*/
  35. /* */
  36. /* RETURNS: */
  37. /* */
  38. /* Nothing (result is returned in the pSuccess parameter). */
  39. /* */
  40. /************************************************************************/
  41. DCRNCPhysicalConnectionManager(NCSTATUS * pStatus);
  42. /************************************************************************/
  43. /* FUNCTION: DCRNCPhysicalConnectionManager Destructor. */
  44. /* */
  45. /* DESCRIPTION: */
  46. /* */
  47. /* This is the destructor for the physical conection manager class. */
  48. /* */
  49. /* PARAMETERS: */
  50. /* */
  51. /* None. */
  52. /* */
  53. /* RETURNS: */
  54. /* */
  55. /* Nothing. */
  56. /* */
  57. /************************************************************************/
  58. virtual ~DCRNCPhysicalConnectionManager();
  59. /************************************************************************/
  60. /* FUNCTION: GetConnection(). */
  61. /* */
  62. /* DESCRIPTION: */
  63. /* */
  64. /* This function returns a physical connection to the calling */
  65. /* conference. In order to start the connection, the conference must */
  66. /* call the connections Connect() entry point. */
  67. /* */
  68. /* PARAMETERS: */
  69. /* */
  70. /* ppConnection - pointer to pointer to connection (returned). */
  71. /* */
  72. /* RETURNS: */
  73. /* */
  74. /* 0 - success. */
  75. /* PCM_RC_NO_TRANSPORTS - there are no transports of the requested type */
  76. /* to create a connection with. */
  77. /* PCM_RC_INTERNAL_ERROR - an internal error occurred whilst trying */
  78. /* to establish the connection. */
  79. /* */
  80. /************************************************************************/
  81. NCSTATUS GetConnection(PRNC_NODE_DETAILS pNodeDetails,
  82. PPHYSICAL_CONNECTION * ppConnection,
  83. CEvent * pEvent,
  84. BOOL bIsConferenceActive);
  85. /************************************************************************/
  86. /* FUNCTION: NotifyConnectionEnded() */
  87. /* */
  88. /* DESCRIPTION: */
  89. /* */
  90. /* This function is called by an instance of a PHYSICAL_CONNECTION */
  91. /* when it has ended/become redundant. */
  92. /* */
  93. /* PARAMETERS: */
  94. /* */
  95. /* pConnection - pointer to connection which has ended. */
  96. /* */
  97. /* RETURNS: */
  98. /* */
  99. /* Nothing. */
  100. /* */
  101. /************************************************************************/
  102. void NotifyConnectionEnded(PPHYSICAL_CONNECTION pConnection,
  103. NCSTATUS Reason);
  104. protected:
  105. /************************************************************************/
  106. /* Array of connections. */
  107. /************************************************************************/
  108. COBLIST connectionList;
  109. };
  110. extern DCRNCPhysicalConnectionManager *g_pPhysConnManager;
  111. /****************************************************************************/
  112. /* */
  113. /* CONSTANTS */
  114. /* */
  115. /****************************************************************************/
  116. /****************************************************************************/
  117. /* Return codes. */
  118. /****************************************************************************/
  119. #define PCM_RC_INTERNAL_ERROR 1
  120. #define PCM_RC_NO_TRANSPORTS 2
  121. #endif /* __ERNCPCM_HPP_ */
  122. #endif // ENABLE_PC