CMGDK r49-rc2
|
00001 # i f n d e f H G L _ T A S K _ M A N A G E R _ I N C L U D E 00002 00003 # d e f i n e H G L _ T A S K _ M A N A G E R _ 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 c l a s s T a s k M a n a g e r ; 00014 00015 00016 00017 t y p e d e f D e f E v e n t ( b o o l , T A S K _ U P D A T E _ F U N C , ( T a s k M a n a g e r * ) ) ; 00018 00019 00020 00021 # d e f i n e H G L _ T A S K _ A D D ( t m , c l a s s _ p o i n t e r , c l a s s _ n a m e , f u n c ) { \ 00022 00023 T A S K _ U P D A T E _ F U N C t u f ; \ 00024 00025 \ 00026 00027 S e t E v e n t C a l l ( t u f , c l a s s _ p o i n t e r , c l a s s _ n a m e , f u n c ) ; \ 00028 00029 \ 00030 00031 t m - > A d d ( t u f ) ; \ 00032 00033 } 00034 00035 00036 00037 / * * 00038 00039 * NR{thV/f:NN㉳Q(W N*N'YvNRAmz-NY*N\vNRAmz@bO(uv[a< b r > 00040 00041 * [1\P/f N*N{O\WvAmzc6RhVl gNHN 00042 YBgv0 00043 00044 * / 00045 00046 c l a s s T a s k M a n a g e r : p u b l i c L i s t < T A S K _ U P D A T E _ F U N C > / / / NR{thV 00047 00048 { 00049 00050 p r o t e c t e d : 00051 00052 00053 00054 b o o l e n a b l e d ; / / / < /f&T/T(u 00055 00056 i n t c u r ; / / / < S_MRNR 00057 00058 00059 00060 p r o t e c t e d : 00061 00062 00063 00064 b o o l G e t E n a b l e d ( ) { r e t u r n e n a b l e d ; } 00065 00066 v o i d S e t E n a b l e d ( b o o l e ) { e n a b l e d = e ; } 00067 00068 00069 00070 i n t G e t C u r T a s k ( ) c o n s t { r e t u r n ( c u r ) ; } / / / < S_S_MRNR(uQpe 00071 00072 v o i d S e t C u r T a s k ( i n t i n d e x ) { G o t o ( i n d e x ) ; } / / / < nS_MRNR(uQpe cN 00073 00074 00075 00076 v o i d C h a n g e T a s k ( i n t ) ; / / / < Rbc0Rc[NR 00077 00078 00079 00080 p u b l i c : / / ^\'` 00081 00082 00083 00084 P r o p e r t y < b o o l > E n a b l e d ; / / / < S_MRNR{thVr` 00085 00086 P r o p e r t y < i n t > C u r T a s k ; / / / < S_MRNRZbQpe 00087 00088 00089 00090 p u b l i c : / / NN 00091 00092 00093 00094 D e f E v e n t ( v o i d , O n C h a n g e , ( T a s k M a n a g e r * , i n t , i n t ) ) ; / / / < f9eNRNNQpe 00095 00096 D e f E v e n t ( v o i d , O n E n d , ( T a s k M a n a g e r * ) ) ; / / / < NRЏL~_gNNQpe 00097 00098 00099 00100 p u b l i c : 00101 00102 00103 00104 T a s k M a n a g e r ( ) ; / / / < ,g{|g Qpe 00105 00106 v i r t u a l ~ T a s k M a n a g e r ( ) ; / / / < ,g{|ggQpe 00107 00108 00109 00110 v i r t u a l b o o l S t a r t ( ) ; / / / < _YЏL 00111 00112 v i r t u a l v o i d P a u s e ( ) ; / / / < f\PЏL 00113 00114 v i r t u a l v o i d R e s u m e ( ) ; / / / < b` 00115 YЏL 00116 00117 v i r t u a l v o i d S t o p ( ) ; / / / < \PbkЏL 00118 00119 00120 00121 v i r t u a l b o o l P r e v ( ) ; / / / < 0RMR NNR 00122 00123 v i r t u a l b o o l N e x t ( ) ; / / / < 0RN NNR 00124 00125 v i r t u a l b o o l G o t o ( i n t ) ; / / / < 0Rc[NR 00126 00127 00128 00129 v i r t u a l b o o l U p d a t e ( ) ; / / / < 7Rev^gbLNR 00130 00131 } ; / / c l a s s T a s k M a n a g e r 00132 00133 } / / n a m e s p a c e h g l 00134 00135 # e n d i f / / H G L _ T A S K _ M A N A G E R _ I N C L U D E 00136 00137