CMGDK r49-rc2
K:/CMGDKv18/SDK/Include/hgl/network/Socket.H
浏览该文件的文档。
00001 # i f n d e f   H G L _ S O C K E T _ I N C L U D E 
00002  
00003  # d e f i n e   H G L _ S O C K E T _ I N C L U D E 
00004  
00005  
00006  
00007  # i n c l u d e < h g l / t y p e / D a t a T y p e . H > 
00008  
00009  # i n c l u d e < h g l / t y p e / W i d e S t r i n g . H > 
00010  
00011  
00012  
00013  # i f n d e f   F D _ S E T S I Z E 
00014  
00015      # d e f i n e   F D _ S E T S I Z E   1 0 2 4 
00016  
00017  # e l s e 
00018  
00019      # i f   F D _ S E T S I Z E   <   1 0 2 4 
00020  
00021      # u n d e f   F D _ S E T S I Z E 
00022  
00023      # d e f i n e   F D _ S E T S I Z E   1 0 2 4 
00024  
00025      # e n d i f / / 
00026  
00027  # e n d i f / / 
00028  
00029  
00030  
00031  # i f   H G L _ O S   = =   H G L _ O S _ W i n d o w s 
00032  
00033      # i n c l u d e < w i n s o c k 2 . h > 
00034  
00035  
00036  
00037      # i f   S O M A X C O N N   = =   5 
00038  
00039      # e r r o r   P l e a s e   u s e   < w i n s o c k 2 . h > 
00040  
00041      # e n d i f / / 
00042  
00043  
00044  
00045      # d e f i n e   G e t L a s t S o c k e t E r r o r ( )   W S A G e t L a s t E r r o r ( ) 
00046  
00047  # e l s e 
00048  
00049      # i n c l u d e < s y s / s o c k e t . h > 
00050  
00051  
00052  
00053      # d e f i n e   G e t L a s t S o c k e t E r r o r ( )   ( e r r n o ) 
00054  
00055  # e n d i f / / 
00056  
00057  
00058  
00059  / / # d e f i n e   H G L _ R E C V _ B Y T E _ C O U N T           / / / < c6eW[pe~( Ջ(u) 
00060  
00061  / / # d e f i n e   H G L _ S E N D _ B Y T E _ C O U N T           / / / < SW[pe~( Ջ(u) 
00062  
00063  
00064  
00065  / / # d e f i n e   H G L _ S O C K E T _ S E N D _ L I M I T _ S I Z E     / / / < SP6RS:\[, ؞:N
00066 NP6R
00067  
00068  
00069  
00070  n a m e s p a c e   h g l 
00071  
00072  { 
00073  
00074      n a m e s p a c e   n e t w o r k                                                                                   / / / Q~vsQYt!jWW
00075 TW[zz
00076  
00077      { 
00078  
00079          e n u m   S o c k e t E r r o r 
00080  
00081          { 
00082  
00083              n s e C l i e n t B r e a k     = 1 0 0 5 3 ,       / / / < [7bz;NRe _
00084  
00085              n s e S e r v e r B r e a k ,               / / / < 
00086 gRhVz;NRe _
00087  
00088  
00089  
00090              n s e T i m e O u t         = 1 0 0 6 0 ,       / / / < e
00091  
00092          } ; / / e n u m   S o c k e t E r r o r 
00093  
00094  
00095  
00096          # d e f i n e   H G L _ T C P _ T I M E _ O U T             6 0                                                             / / / < ؞T C P ee
00097  
00098          # d e f i n e   H G L _ T C P _ H E A R T _ T I M E             3 0                                                             / / / < ؞T C P _e( l_v^
00099 N/fkc[eS/fy
00100 N N!kSNa\SǏc[eMbS) 
00101  
00102  
00103  
00104          # d e f i n e   H G L _ T C P _ P A C K E T _ S I Z E           1 0 2 4                                                         / / / < T C P SYS^
00105  
00106          # d e f i n e   H G L _ T C P _ C L I E N T _ B U F F E R _ S I Z E     3 2 * 1 0 2 4                                                       / / / < T C P [7bzQ:S'Y\
00107  
00108          # d e f i n e   H G L _ T C P _ A C C E P T _ B U F F E R _ S I Z E     3 2 * 1 0 2 4                                                       / / / < T C P 
00109 gRhVceQzQ:S'Y\
00110  
00111  
00112  
00113          t y p e d e f     i n t 3 2   H G L _ P A C K E T _ S I Z E ;                                                                   / / / < S^penc{|W[IN
00114  
00115          t y p e d e f   u i n t 3 2   H G L _ P A C K E T _ T Y P E ;                                                                   / / / < S{|Wpenc{|W[IN
00116  
00117          
00118  
00119          c o n s t   i n t   H G L _ P A C K E T _ S I Z E _ B Y T E S       = s i z e o f ( H G L _ P A C K E T _ S I Z E ) ; 
00120  
00121          c o n s t   i n t   H G L _ P A C K E T _ T Y P E _ B Y T E S       = s i z e o f ( H G L _ P A C K E T _ T Y P E ) ; 
00122  
00123          c o n s t   i n t   H G L _ P A C K E T _ H E A D E R _ B Y T E S   = H G L _ P A C K E T _ S I Z E _ B Y T E S + H G L _ P A C K E T _ T Y P E _ B Y T E S ; 
00124  
00125  
00126  
00127          / * * 
00128  
00129          *   @b gS o c k e t O{|vW{|
00130  
00131          * / 
00132  
00133          c l a s s   S o c k e t                                                                                                                                                                         / / / S o c k e t W{|
00134  
00135          { 
00136  
00137          p r o t e c t e d : 
00138  
00139  
00140  
00141              b o o l   b i n d a d d r ( c o n s t   c h a r   * , i n t ) ;                                                                                                                         / / / < ~[c[W
00142 T/ I P TP O R T 0RS_MRs o c k e t 
00143  
00144  
00145  
00146          p u b l i c :   / / ^\'`
00147  
00148  
00149  
00150              i n t   T h i s S o c k e t ;                                                                               / / / < S_MRs o c k e t S
00151  
00152  
00153  
00154          p u b l i c :   / / el
00155  
00156  
00157  
00158              S o c k e t ( ) ; 
00159  
00160              v i r t u a l   ~ S o c k e t ( ) ; 
00161  
00162  
00163  
00164              v i r t u a l   v o i d   C l o s e S o c k e t ( ) ;                                                                   / / / < sQޏc
00165  
00166              v o i d   S e t B l o c k ( b o o l , d o u b l e = 6 0 ) ;                                                                 / / / < n/f&TO(u5X^Xe_
00167  
00168              v o i d   S e t N o d e l a y ( b o o l ) ;                                                                         / / / < n/f&TO(ue^ߏe_
00169  
00170          } ; / / c l a s s   S o c k e t                                                                                                                                                                                                                                         
00171  
00172  
00173  
00174          i n t     G e t L o c a l I P ( i n _ a d d r   * * , c h a r   * ) ;                                                               / / / < S_,g:gI P 
00175  
00176          i n t     D o m a i n N a m e 2 I P v 4 ( c o n s t   W i d e S t r i n g   & , i n _ a d d r   * * ) ;                                                                                         / / / < lbcW
00177 T0RI P 
00178  
00179          v o i d   S o c k T o S t r ( s o c k a d d r _ i n   & , w c h a r _ t   * , i n t   * ) ;                                                                                                     / / / < lbcs o c k a d d r _ i n 0R N*NW[&{2N
00180  
00181          b o o l   F i l l A d d r ( s o c k a d d r _ i n   * , c o n s t   c h a r   * , i n t ) ;                                                                                                     / / / < \c[W
00182 TbI P kXEQ0Rs o c k a d d r _ i n ~g-N
00183  
00184          v o i d   C l o s e S o c k e t ( i n t ) ;                                                                                                                                                     / / / < sQs o c k e t 
00185  
00186  
00187  
00188          c o n s t   w c h a r _ t   * G e t S o c k e t S t r i n g ( i n t ) ; 
00189  
00190  
00191  
00192          # d e f i n e   G e t L a s t S o c k e t E r r o r S t r i n g ( )   G e t S o c k e t S t r i n g ( G e t L a s t S o c k e t E r r o r ( ) ) 
00193  
00194      } / / n a m e s p a c e   n e t w o r k 
00195  
00196  
00197  
00198      u s i n g   n a m e s p a c e   n e t w o r k ; 
00199  
00200  } / / n a m e s p a c e   h g l 
00201  
00202  # e n d i f / / H G L _ S O C K E T _ I N C L U D E 
00203  
00204  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义