CMGDK r49-rc2
K:/CMGDKv18/SDK/Include/hgl/endian/WideToUTF16.H
浏览该文件的文档。
00001 # i f n d e f   H G L _ E N D I A N _ W I D E _ T O _ U T F 1 6 _ I N C L U D E 
00002  
00003  # d e f i n e   H G L _ E N D I A N _ W I D E _ T O _ U T F 1 6 _ I N C L U D E 
00004  
00005  
00006  
00007  n a m e s p a c e   h g l 
00008  
00009  { 
00010  
00011      n a m e s p a c e   e n d i a n 
00012  
00013      { 
00014  
00015          t e m p l a t e < i n t >   s t r u c t   U T F 1 6 C h a r C o n v e r t ; 
00016  
00017          
00018  
00019          t e m p l a t e < >   s t r u c t   U T F 1 6 C h a r C o n v e r t < 2 > 
00020  
00021          { 
00022  
00023              s t a t i c   u i n t 1 6   * 
00024  
00025          # i f   H G L _ E N D I A N   = =   H G L _ B I G _ E N D I A N 
00026  
00027              t o _ u t f 1 6 b e 
00028  
00029          # e l s e 
00030  
00031              t o _ u t f 1 6 l e 
00032  
00033          # e n d i f / / H G L _ E N D I A N   = =   H G L _ B I G _ E N D I A N 
00034  
00035              ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00036  
00037              { 
00038  
00039                  r e t u r n   ( u i n t 1 6   * ) w i d e _ s t r ; 
00040  
00041              } 
00042  
00043  
00044  
00045              s t a t i c   u i n t 1 6   * 
00046  
00047          # i f   H G L _ E N D I A N   = =   H G L _ B I G _ E N D I A N 
00048  
00049              t o _ u t f 1 6 l e 
00050  
00051          # e l s e 
00052  
00053              t o _ u t f 1 6 b e 
00054  
00055          # e n d i f / / H G L _ E N D I A N   = =   H G L _ B I G _ E N D I A N 
00056  
00057              ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00058  
00059              { 
00060  
00061                  u i n t 1 6   * u t f 1 6 _ s t r = n e w   u i n t 1 6 [ l e n g t h ] ; 
00062  
00063  
00064  
00065                  E n d i a n S w a p ( u t f 1 6 _ s t r , u t f 1 6 _ s t r , l e n g t h ) ; 
00066  
00067  
00068  
00069                  r e t u r n   u t f 1 6 _ s t r ; 
00070  
00071              } 
00072  
00073          } ; / / t e m p l a t e < >   s t r u c t   U T F 1 6 C h a r C o n v e r t < 2 > 
00074  
00075  
00076  
00077          t e m p l a t e < >   s t r u c t   U T F 1 6 C h a r C o n v e r t < 4 > 
00078  
00079          { 
00080  
00081              s t a t i c   u i n t 1 6   * t o _ u t f 1 6 l e ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00082  
00083              { 
00084  
00085                  u i n t 1 6   * u t f 1 6 _ s t r = n e w   u i n t 1 6 [ l e n g t h ] ; 
00086  
00087  
00088  
00089                  T o L i t t l e E n d i a n ( u t f 1 6 _ s t r , w i d e _ s t r , l e n g t h ) ; 
00090  
00091  
00092  
00093                  r e t u r n   u t f 1 6 _ s t r ; 
00094  
00095              } 
00096  
00097  
00098  
00099              s t a t i c   u i n t 1 6   * t o _ u t f 1 6 b e ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00100  
00101              { 
00102  
00103                  u i n t 1 6   * u t f 1 6 _ s t r = n e w   u i n t 1 6 [ l e n g t h ] ; 
00104  
00105  
00106  
00107                  T o B i g E n d i a n ( u t f 1 6 _ s t r , w i d e _ s t r , l e n g t h ) ; 
00108  
00109  
00110  
00111                  r e t u r n   u t f 1 6 _ s t r ; 
00112  
00113              } 
00114  
00115          } ; / / t e m p l a t e < >   s t r u c t   U T F 1 6 C h a r C o n v e r t < 4 > 
00116  
00117  
00118  
00119          t e m p l a t e < c h a r >   s t r u c t   W i d e T o U T F 1 6 C h a r ; 
00120  
00121  
00122  
00123          t e m p l a t e < >   s t r u c t   W i d e T o U T F 1 6 C h a r < H G L _ L I T T L E _ E N D I A N > 
00124  
00125          { 
00126  
00127              s t a t i c   u i n t 1 6   * t o _ u t f 1 6 ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00128  
00129              { 
00130  
00131                  r e t u r n   U T F 1 6 C h a r C o n v e r t < s i z e o f ( w c h a r _ t ) > : : t o _ u t f 1 6 l e ( w i d e _ s t r , l e n g t h ) ; 
00132  
00133              } 
00134  
00135  
00136  
00137              s t a t i c   v o i d   t o _ u t f 1 6 ( u i n t 1 6   * u t f 1 6 _ s t r , c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00138  
00139              { 
00140  
00141                  T o L i t t l e E n d i a n ( u t f 1 6 _ s t r , w i d e _ s t r , l e n g t h ) ; 
00142  
00143              } 
00144  
00145          } ; / / t e m p l a t e < >   s t r u c t   W i d e T o U T F 1 6 C h a r < H G L _ L I T T L E _ E N D I A N > 
00146  
00147  
00148  
00149          t e m p l a t e < >   s t r u c t   W i d e T o U T F 1 6 C h a r < H G L _ B I G _ E N D I A N > 
00150  
00151          { 
00152  
00153              s t a t i c   u i n t 1 6   * t o _ u t f 1 6 ( c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00154  
00155              { 
00156  
00157                  r e t u r n   U T F 1 6 C h a r C o n v e r t < s i z e o f ( w c h a r _ t ) > : : t o _ u t f 1 6 b e ( w i d e _ s t r , l e n g t h ) ; 
00158  
00159              } 
00160  
00161  
00162  
00163              s t a t i c   v o i d   t o _ u t f 1 6 ( u i n t 1 6   * u t f 1 6 _ s t r , c o n s t   w c h a r _ t   * w i d e _ s t r , c o n s t   i n t   l e n g t h ) 
00164  
00165              { 
00166  
00167                  T o B i g E n d i a n ( u t f 1 6 _ s t r , w i d e _ s t r , l e n g t h ) ; 
00168  
00169              } 
00170  
00171          } ; / / t e m p l a t e < >   s t r u c t   W i d e T o U T F 1 6 C h a r < H G L _ B I G _ E N D I A N > 
00172  
00173      } / / n a m e s p a c e   e n d i a n 
00174  
00175  } / / n a m e s p a c e   h g l 
00176  
00177  # e n d i f / / H G L _ E N D I A N _ W I D E _ T O _ U T F 1 6 _ I N C L U D E 9 
00178  
00179  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义