CMGDK r49-rc2
|
00001 # i f n d e f H G L _ P S E U D O _ R A N D O M _ N U M B E R _ I N C L U D E 00002 00003 # d e f i n e H G L _ P S E U D O _ R A N D O M _ N U M B E R _ I N C L U D E 00004 00005 00006 00007 # i n c l u d e < h g l / s t r e a m / S t r e a m . H > 00008 00009 n a m e s p a c e h g l 00010 00011 { 00012 00013 / * * 00014 00015 * GP:gpe/f Ny8^(ub/g(uN V>evsXb/f _Nu:gpevsX0< b r > 00016 00017 * l: N,v:gpeO(uh g l / o t h e r . h -NvF a s t R a n d ( ) 00018 00019 * @ s e e F a s t R a n d 00020 00021 * / 00022 00023 c l a s s P s e u d o R a n d o m / / / GP:gpe 00024 00025 { 00026 00027 p r o t e c t e d : 00028 00029 00030 00031 u i n t 8 * d a t a ; 00032 00033 u i n t 3 2 c o u n t , p o s ; 00034 00035 00036 00037 p u b l i c : 00038 00039 00040 00041 P s e u d o R a n d o m ( u i n t 3 2 = 1 0 2 4 ) ; / / / < ,g{|g Qpe 00042 00043 v i r t u a l ~ P s e u d o R a n d o m ( ) ; / / / < ,g{|ggQpe 00044 00045 00046 00047 p u b l i c : 00048 00049 00050 00051 v i r t u a l v o i d I n i t ( u i n t 3 2 = 1 0 2 4 ) ; / / / < RYS:gpe 00052 00053 v i r t u a l v o i d C l e a r ( ) ; / / / < nd 00054 00055 00056 00057 v i r t u a l b o o l S a v e T o S t r e a m ( S t r e a m * ) ; / / / < OX[S_MRr`0RAm 00058 00059 v i r t u a l b o o l L o a d F r o m S t r e a m ( S t r e a m * ) ; / / / < NAm-NR}r` 00060 00061 00062 00063 v i r t u a l b o o l R a n d 8 ( u i n t 8 & ) ; / / / < Nu N*N8 MO:gpe 00064 00065 v i r t u a l b o o l R a n d 1 6 ( u i n t 1 6 & ) ; / / / < Nu N*N1 6 MO:gpe 00066 00067 v i r t u a l b o o l R a n d 3 2 ( u i n t 3 2 & ) ; / / / < Nu N*N3 2 MO:gpe 00068 00069 } ; 00070 00071 } / / n a m e s p a c e h g l 00072 00073 # e n d i f / / H G L _ P S E U D O _ R A N D O M _ N U M B E R _ I N C L U D E 00074 00075