CMGDK r49-rc2
|
00001 # i f n d e f D e v i l E n g i n e H 00002 00003 # d e f i n e D e v i l E n g i n e H 00004 00005 00006 00007 # i n c l u d e < h g l / s c r i p t / D e v i l V M . H > 00008 00009 # i n c l u d e < h g l / t y p e / I n d e x D a t a . H > 00010 00011 # i n c l u d e < h g l / t y p e / S t r i n g L i s t . H > 00012 00013 # i n c l u d e " D e v i l C o m m a n d . H " 00014 00015 # i n c l u d e " D e v i l F u n c . H " 00016 00017 # i n c l u d e " D e v i l E n u m . H " 00018 00019 n a m e s p a c e h g l 00020 00021 { 00022 00023 s t r u c t S c r i p t F u n c R u n S t a t e 00024 00025 { 00026 00027 D e v i l F u n c * f u n c ; / / Qpec 00028 00029 00030 00031 i n t i n d e x ; / / ЏL0RvcNS 00032 00033 } ; / / s t r u c t S c r i p t F u n c R u n S t a t e 00034 00035 00036 00037 c l a s s D e v i l E n g i n e : p u b l i c D e v i l V M 00038 00039 { 00040 00041 I n d e x O b j e c t < W i d e S t r i n g , D e v i l P r o p e r t y M a p > p r o p _ m a p ; / / ^\'` f\h 00042 00043 I n d e x O b j e c t < W i d e S t r i n g , D e v i l F u n c M a p > f u n c _ m a p ; / / Qpe f\h 00044 00045 I n d e x O b j e c t < W i d e S t r i n g , D e v i l F u n c > s c r i p t _ f u n c ; / / ,gQpeh 00046 00047 I n d e x O b j e c t < W i d e S t r i n g , D e v i l E n u m > e n u m _ m a p ; / / g>N f\h 00048 00049 00050 00051 p r i v a t e : 00052 00053 00054 00055 O b j e c t L i s t < S c r i p t F u n c R u n S t a t e > r u n _ s t a t e ; / / ЏLr` 00056 00057 00058 00059 S c r i p t F u n c R u n S t a t e * c u r _ s t a t e ; / / S_MRr` 00060 00061 00062 00063 v o i d C l e a r S t a c k ( ) ; / / nzzЏLXh 00064 00065 00066 00067 b o o l R u n C o n t e x t ( ) ; / / ЏL 00068 00069 00070 00071 p r i v a t e : 00072 00073 00074 00075 b o o l _ M a p F u n c ( c o n s t w c h a r _ t * , v o i d * , v o i d * ) ; 00076 00077 00078 00079 p u b l i c : / / Q^\'` 00080 00081 00082 00083 S t r i n g L i s t s t r i n g _ l i s t ; / / W[&{2NRh 00084 00085 00086 00087 p u b l i c : / / Q萹el 00088 00089 00090 00091 D e v i l F u n c * G e t S c r i p t F u n c ( W i d e S t r i n g & ) ; 00092 00093 D e v i l F u n c M a p * G e t F u n c M a p ( W i d e S t r i n g & ) ; 00094 00095 D e v i l P r o p e r t y M a p * G e t P r o p e r t y M a p ( W i d e S t r i n g & ) ; 00096 00097 00098 00099 v o i d S c r i p t F u n c C a l l ( D e v i l F u n c * ) ; 00100 00101 b o o l G o t o ( D e v i l F u n c * , i n t ) ; 00102 00103 b o o l R e t u r n ( ) ; 00104 00105 00106 00107 p u b l i c : / / lQ(ucS 00108 00109 00110 00111 D e v i l E n g i n e ( ) { } 00112 00113 ~ D e v i l E n g i n e ( ) { C l e a r ( ) ; } 00114 00115 00116 00117 b o o l M a p P r o p e r t y ( c o n s t w c h a r _ t * , v o i d * ) ; 00118 00119 b o o l M a p F u n c ( c o n s t w c h a r _ t * , v o i d * ) ; 00120 00121 / / b o o l M a p F u n c ( v o i d * , c o n s t w c h a r _ t * , v o i d * ) ; 00122 00123 b o o l M a p F u n c ( c o n s t w c h a r _ t * , v o i d * , v o i d * ) ; 00124 00125 00126 00127 b o o l A d d E n u m ( c o n s t w c h a r _ t * , D e v i l E n u m * ) ; 00128 00129 00130 00131 b o o l A d d S c r i p t ( c o n s t w c h a r _ t * , i n t = - 1 ) ; 00132 00133 00134 00135 v o i d C l e a r ( ) ; 00136 00137 00138 00139 b o o l S t a r t ( c o n s t w c h a r _ t * ) ; 00140 00141 b o o l S t a r t ( c o n s t w c h a r _ t * , c o n s t w c h a r _ t * ) ; 00142 00143 b o o l R u n ( c o n s t w c h a r _ t * ) ; 00144 00145 v o i d P a u s e ( ) ; 00146 00147 v o i d S t o p ( ) ; 00148 00149 00150 00151 b o o l G o t o ( c o n s t w c h a r _ t * ) ; 00152 00153 b o o l G o t o ( c o n s t w c h a r _ t * , c o n s t w c h a r _ t * ) ; 00154 00155 00156 00157 b o o l G e t C u r r e n t S t a t e ( W i d e S t r i n g & , i n t & ) ; 00158 00159 00160 00161 b o o l S a v e S t a t e ( S t r e a m * ) ; 00162 00163 b o o l L o a d S t a t e ( S t r e a m * ) ; 00164 00165 00166 00167 p u b l i c : / / D e b u g cS 00168 00169 00170 00171 # i f d e f _ D E B U G 00172 00173 v o i d L o g P r o p e r t y L i s t ( ) ; 00174 00175 v o i d L o g M a p F u n c L i s t ( ) ; 00176 00177 v o i d L o g S c r i p t F u n c L i s t ( ) ; 00178 00179 # e n d i f / / _ D E B U G 00180 00181 } ; / / c l a s s D e v i l E n g i n e 00182 00183 } / / n a m e s p a c e h g l 00184 00185 # e n d i f 00186 00187