CMGDK r49-rc2
|
00001 # i f n d e f H G L _ F I N _ U S E _ D A T A _ I N C L U D E 00002 00003 # d e f i n e H G L _ F I N _ U S E _ D A T A _ 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 / L i s t . H > 00008 00009 n a m e s p a c e h g l 00010 00011 { 00012 00013 t e m p l a t e < t y p e n a m e F , t y p e n a m e T > s t r u c t F u d I t e m 00014 00015 { 00016 00017 F f l a g ; / / Ƌ+RhƋ 00018 00019 00020 00021 T d a t a ; / / penc 00022 00023 00024 00025 F u d I t e m < F , T > * p r e v , / / MR Npenc 00026 00027 * n e x t ; / / T Npenc 00028 00029 } ; 00030 00031 00032 00033 / * * 00034 00035 * Q:S{t!jg( S_Q:Sne\ gel gO(uvnd) < b r > 00036 00037 * sُ*N!jgO(uS4Yhk!kmRbO(uvpencOy0Rhv gMRz0< b r > 00038 00039 * ُ7hO(us gNOvpencOX[(Whv g+gzS_Q:Sne g+gzvpenc\Ond0 00040 00041 * / 00042 00043 t e m p l a t e < t y p e n a m e F , t y p e n a m e T > c l a s s F i n U s e D a t a : p u b l i c O b j e c t / / / Q:S{t!jg( N g~O(ue:NWQ) 00044 00045 { 00046 00047 t y p e d e f F i n U s e D a t a < F , T > t h i s _ c l a s s ; 00048 00049 00050 00051 p r o t e c t e d : 00052 00053 00054 00055 F u d I t e m < F , T > * s t a r t _ i t e m , / / penc 00056 00057 * e n d _ i t e m ; / / >\penc 00058 00059 00060 00061 i n t c o u n t , m a x _ c o u n t ; 00062 00063 00064 00065 i n t G e t C o u n t ( ) { r e t u r n c o u n t ; } 00066 00067 00068 00069 i n t G e t M a x C o u n t ( ) { r e t u r n m a x _ c o u n t ; } 00070 00071 v i r t u a l v o i d S e t M a x C o u n t ( i n t ) ; 00072 00073 00074 00075 p r o t e c t e d : 00076 00077 00078 00079 v i r t u a l b o o l C r e a t e ( c o n s t F & , T & ) ; / / / < R^penc 00080 00081 v i r t u a l v o i d C l e a r ( c o n s t F & , T & ) ; / / / < ndpenc 00082 00083 00084 00085 v o i d M o v e T o S t a r t ( F u d I t e m < F , T > * ) ; / / / < yRg N*Npenc0R gMRb 00086 00087 00088 00089 v o i d D e l e t e ( F u d I t e m < F , T > * ) ; / / / < ndg N*Npenc 00090 00091 00092 00093 v o i d C l e a r E n d ( ) ; / / / < nd gT N*Npenc 00094 00095 00096 00097 p u b l i c : / / ^\'` 00098 00099 00100 00101 P r o p e r t y < i n t > C o u n t ; / / / < S_MRQ:Spencpeϑ 00102 00103 P r o p e r t y < i n t > M a x C o u n t ; / / / < S_MRQ:S g'Y<P 00104 00105 00106 00107 p u b l i c : 00108 00109 00110 00111 F i n U s e D a t a ( i n t ) ; 00112 00113 v i r t u a l ~ F i n U s e D a t a ( ) ; 00114 00115 00116 00117 v i r t u a l F u d I t e m < F , T > * A d d ( c o n s t F & , c o n s t T & ) ; / / / < XR N*Npenc 00118 00119 v i r t u a l b o o l F i n d ( c o n s t F & , T & , b o o l = t r u e ) ; / / / < S_ N*Npenc( Ygl g 00120 NOꁨRR^) 00121 00122 v i r t u a l b o o l G e t ( c o n s t F & , T & , b o o l = t r u e ) ; / / / < S_ N*Npenc( Ygl gOꁨRR^) 00123 00124 v o i d C l e a r ( ) ; / / / < nd@b gpenc 00125 00126 00127 00128 v o i d D e l e t e B y F l a g ( c o n s t F & ) ; 00129 00130 v o i d D e l e t e B y D a t a ( T & ) ; 00131 00132 b o o l U p d a t e ( c o n s t F & , T & ) ; / / / < fepenc 00133 00134 } ; / / t e m p l a t e < t y p e n a m e F , t y p e n a m e T > c l a s s F i n U s e D a t a 00135 00136 } / / n a m e s p a c e h g l 00137 00138 # i n c l u d e < h g l / t y p e / F i n U s e D a t a . C P P > 00139 00140 # e n d i f / / H G L _ F I N _ U S E _ D A T A _ I N C L U D E 00141 00142