0000: 2f 2f 20 50 61 72 61 6d 44 65 66 73 2e 68 3a 20 // ParamDefs.h:
0010: 69 6e 74 65 72 66 61 63 65 20 66 6f 72 20 74 68 interface for th
0020: 65 20 43 50 61 72 61 6d 44 65 66 73 20 63 6c 61 e CParamDefs cla
0030: 73 73 2e 0d 0a 2f 2f 0d 0a 2f 2f 2f 2f 2f 2f 2f ss...//..///////
0040: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
0050: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
0060: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f ////////////////
0070: 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 2f 0d ///////////////.
0080: 0a 0d 0a 23 69 66 20 21 64 65 66 69 6e 65 64 28 ...#if !defined(
0090: 41 46 58 5f 50 41 52 41 4d 44 45 46 53 5f 48 5f AFX_PARAMDEFS_H_
00a0: 5f 33 42 37 37 32 32 45 34 5f 30 38 36 45 5f 34 _3B7722E4_086E_4
00b0: 34 33 39 5f 41 36 39 37 5f 46 30 44 46 38 31 32 439_A697_F0DF812
00c0: 39 44 43 35 31 5f 5f 49 4e 43 4c 55 44 45 44 5f 9DC51__INCLUDED_
00d0: 29 0d 0a 23 64 65 66 69 6e 65 20 41 46 58 5f 50 )..#define AFX_P
00e0: 41 52 41 4d 44 45 46 53 5f 48 5f 5f 33 42 37 37 ARAMDEFS_H__3B77
00f0: 32 32 45 34 5f 30 38 36 45 5f 34 34 33 39 5f 41 22E4_086E_4439_A
0100: 36 39 37 5f 46 30 44 46 38 31 32 39 44 43 35 31 697_F0DF8129DC51
0110: 5f 5f 49 4e 43 4c 55 44 45 44 5f 0d 0a 0d 0a 23 __INCLUDED_....#
0120: 69 66 20 5f 4d 53 43 5f 56 45 52 20 3e 20 31 30 if _MSC_VER > 10
0130: 30 30 0d 0a 23 70 72 61 67 6d 61 20 6f 6e 63 65 00..#pragma once
0140: 0d 0a 23 65 6e 64 69 66 20 2f 2f 20 5f 4d 53 43 ..#endif // _MSC
0150: 5f 56 45 52 20 3e 20 31 30 30 30 0d 0a 23 69 6e _VER > 1000..#in
0160: 63 6c 75 64 65 20 3c 61 6c 67 6f 72 69 74 68 6d clude <algorithm
0170: 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 22 69 73 74 >..#include "ist
0180: 72 6d 61 70 2e 68 22 0d 0a 0d 0a 2f 2f 23 69 6e rmap.h"....//#in
0190: 63 6c 75 64 65 20 3c 76 65 63 74 6f 72 3e 0d 0a clude <vector>..
01a0: 2f 2f 23 69 6e 63 6c 75 64 65 20 3c 61 66 78 74 //#include <afxt
01b0: 65 6d 70 6c 2e 68 3e 0d 0a 0d 0a 2f 2a 73 74 72 empl.h>..../*str
01c0: 75 63 74 20 4e 61 6d 65 42 69 6e 64 4f 66 54 79 uct NameBindOfTy
01d0: 70 65 20 7b 0d 0a 20 20 20 20 43 53 74 72 69 6e pe {.. CStrin
01e0: 67 20 6e 61 6d 65 3b 0d 0a 20 20 20 20 43 53 74 g name;.. CSt
01f0: 72 69 6e 67 20 74 79 70 65 3b 0d 0a 20 20 20 20 ring type;..
0200: 43 53 74 72 69 6e 67 20 76 61 6c 75 65 3b 0d 0a CString value;..
0210: 20 20 20 20 62 6f 6f 6c 20 62 49 73 56 61 6c 3b bool bIsVal;
0220: 0d 0a 20 20 20 20 4e 61 6d 65 42 69 6e 64 4f 66 .. NameBindOf
0230: 54 79 70 65 20 28 63 6f 6e 73 74 20 43 53 74 72 Type (const CStr
0240: 69 6e 67 26 20 6e 2c 20 63 6f 6e 73 74 20 43 53 ing& n, const CS
0250: 74 72 69 6e 67 26 20 74 2c 20 63 6f 6e 73 74 20 tring& t, const
0260: 43 53 74 72 69 6e 67 26 20 76 20 3d 20 43 53 74 CString& v = CSt
0270: 72 69 6e 67 28 22 22 29 2c 20 62 6f 6f 6c 20 62 ring(""), bool b
0280: 49 73 20 3d 20 66 61 6c 73 65 29 20 3a 20 6e 61 Is = false) : na
0290: 6d 65 28 6e 29 2c 20 74 79 70 65 28 74 29 2c 20 me(n), type(t),
02a0: 76 61 6c 75 65 28 76 29 2c 20 62 49 73 56 61 6c value(v), bIsVal
02b0: 28 62 49 73 29 20 7b 7d 0d 0a 7d 3b 2a 2f 0d 0a (bIs) {}..};*/..
02c0: 0d 0a 63 6c 61 73 73 20 43 50 61 72 61 6d 44 65 ..class CParamDe
02d0: 66 73 20 3a 20 70 75 62 6c 69 63 20 43 4f 62 6a fs : public CObj
02e0: 65 63 74 20 20 0d 0a 7b 0d 0a 70 75 62 6c 69 63 ect ..{..public
02f0: 3a 0d 0a 20 20 2f 2f 73 74 72 75 63 74 20 4e 61 :.. //struct Na
0300: 6d 65 42 69 6e 64 4f 66 54 79 70 65 20 2a 70 3b meBindOfType *p;
0310: 0d 0a 20 20 74 79 70 65 64 65 66 20 43 41 72 72 .. typedef CArr
0320: 61 79 3c 73 74 72 75 63 74 20 4e 61 6d 65 42 69 ay<struct NameBi
0330: 6e 64 4f 66 54 79 70 65 2a 2c 20 73 74 72 75 63 ndOfType*, struc
0340: 74 20 4e 61 6d 65 42 69 6e 64 4f 66 54 79 70 65 t NameBindOfType
0350: 2a 3e 20 41 52 52 5f 54 59 50 45 5f 4e 41 4d 45 *> ARR_TYPE_NAME
0360: 3b 20 20 0d 0a 0d 0a 20 20 2f 2f 20 ef ee e7 e8 ; .... // ....
0370: f6 e8 ff 20 ec e5 f2 ee e4 e0 20 f1 e2 ee e1 ee ... ...... .....
0380: e4 ed ee e9 20 e7 e0 ef e8 f1 e8 20 f1 e2 ee e9 .... ...... ....
0390: f1 f2 e2 0d 0a 20 20 69 6e 74 20 6e 50 6f 73 4f ..... int nPosO
03a0: 6e 57 72 69 74 65 46 72 65 65 50 72 6f 70 3b 0d nWriteFreeProp;.
03b0: 0a 20 20 2f 2f 20 ef ee e7 e8 f6 e8 ff 20 ec e5 . // ....... ..
03c0: f2 ee e4 e0 20 f1 e2 ee e1 ee e4 ed ee e3 ee 20 .... ..........
03d0: f7 f2 e5 ed e8 ff 20 f1 e2 ee e9 f1 f2 e2 0d 0a ...... .........
03e0: 20 20 69 6e 74 20 6e 50 6f 73 4f 6e 52 65 61 64 int nPosOnRead
03f0: 46 72 65 65 50 72 6f 70 3b 0d 0a 0d 0a 20 20 2f FreeProp;.... /
0400: 2f ef ee e7 e8 f6 e8 ff 20 ea ee ed f1 f2 f0 f3 /....... .......
0410: ea f2 ee f0 e0 20 ea eb e0 f1 f1 e0 2c 20 2d 31 ..... ......, -1
0420: 20 2d 20 ed e5 f2 20 ea ee ed f1 f2 f0 f3 ea f2 - ... .........
0430: ee f0 e0 0d 0a 20 20 69 6e 74 20 6e 50 6f 73 43 ..... int nPosC
0440: 6f 6e 73 74 72 75 63 74 6f 72 3b 0d 0a 20 20 2f onstructor;.. /
0450: 2f ef ee e7 e8 f6 e8 ff 20 e4 e5 f1 f2 f0 f3 ea /....... .......
0460: f2 ee f0 e0 20 ea eb e0 f1 f1 e0 2c 20 20 2d 31 .... ......, -1
0470: 20 2d 20 ed e5 f2 20 e4 e5 f1 f2 f0 f3 ea f2 ee - ... .........
0480: f0 e0 0d 0a 20 20 69 6e 74 20 6e 50 6f 73 44 65 .... int nPosDe
0490: 73 74 72 75 63 74 6f 72 3b 0d 0a 0d 0a 20 20 2f structor;.... /
04a0: 2f c7 e4 e5 f1 fc 20 ec ee e3 f3 f2 20 f5 f0 e0 /..... ..... ...
04b0: ed e8 f2 fc f1 ff 20 e8 ec e5 ed e0 20 f1 e2 ee ...... ..... ...
04c0: e1 ee e4 ed fb f5 20 f1 e2 ee e9 f1 f2 e2 20 e8 ...... ....... .
04d0: 20 e8 f5 20 e8 ed e4 e5 ea f1 fb 0d 0a 20 20 43 .. ......... C
04e0: 4d 61 70 53 74 72 69 6e 67 54 6f 50 74 72 20 6d MapStringToPtr m
04f0: 61 70 4e 61 6d 65 73 46 72 65 65 50 72 6f 70 3b apNamesFreeProp;
0500: 0d 0a 20 20 0d 0a 20 20 43 4d 61 70 53 74 72 69 .. .. CMapStri
0510: 6e 67 54 6f 4f 62 2a 20 70 4d 61 70 46 75 6e 63 ngToOb* pMapFunc
0520: 3b 0d 0a 0d 0a 20 20 73 74 72 75 63 74 20 70 61 ;.... struct pa
0530: 72 61 6d 64 65 66 73 20 7b 0d 0a 09 09 43 53 74 ramdefs {....CSt
0540: 72 69 6e 67 20 4e 61 6d 65 73 5b 32 5d 3b 0d 0a ring Names[2];..
0550: 09 09 69 6e 74 20 48 61 73 52 65 74 75 72 6e 56 ..int HasReturnV
0560: 61 6c 75 65 3b 0d 0a 09 09 69 6e 74 20 4e 75 6d alue;....int Num
0570: 62 65 72 4f 66 50 61 72 61 6d 73 3b 0d 0a 20 20 berOfParams;..
0580: 20 20 69 6e 74 20 6e 50 72 6f 63 50 6f 73 3b 0d int nProcPos;.
0590: 0a 20 20 20 20 62 6f 6f 6c 20 69 73 55 6e 4c 69 . bool isUnLi
05a0: 6d 50 61 72 4d 65 74 68 6f 64 3b 20 2f 2f 20 e8 mParMethod; // .
05b0: ec e5 e5 f2 20 e8 eb e8 20 ed e5 f2 20 ec e5 f2 .... ... ... ...
05c0: ee e4 20 ed e5 ff e2 ed fb e5 20 ef e0 f0 e0 ec .. ....... .....
05d0: e5 f2 f0 fb 0d 0a 20 20 20 20 62 6f 6f 6c 20 62 ...... bool b
05e0: 4d 65 74 68 48 61 76 65 56 61 6c 3b 20 20 20 20 MethHaveVal;
05f0: 20 2f 2f 20 e8 ec e5 e5 f2 20 e8 eb e8 20 ed e5 // ..... ... ..
0600: f2 20 ec e5 f2 ee e4 20 ef e0 f0 e0 ec e5 f2 f0 . ..... ........
0610: fb 20 ef e5 f0 e5 e4 e0 e2 e0 e5 ec fb e5 20 ef . ............ .
0620: ee 20 e7 ed e0 f7 e5 ed e8 fe 0d 0a 20 20 20 20 . ..........
0630: 41 52 52 5f 54 59 50 45 5f 4e 41 4d 45 2a 20 70 ARR_TYPE_NAME* p
0640: 44 65 66 50 61 72 61 6d 3b 20 20 20 20 0d 0a 0d DefParam; ...
0650: 0a 20 20 20 20 69 6e 6c 69 6e 65 20 76 6f 69 64 . inline void
0660: 20 49 6e 69 74 28 63 6f 6e 73 74 20 63 68 61 72 Init(const char
0670: 20 2a 65 5f 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 *e_name, const
0680: 63 68 61 72 20 2a 72 5f 6e 61 6d 65 2c 20 69 6e char *r_name, in
0690: 74 20 70 72 6f 63 50 6f 73 2c 20 69 6e 74 20 68 t procPos, int h
06a0: 72 76 2c 20 69 6e 74 20 6e 75 6d 2c 20 62 6f 6f rv, int num, boo
06b0: 6c 20 69 73 55 50 2c 20 0d 0a 20 20 20 20 20 20 l isUP, ..
06c0: 62 6f 6f 6c 20 62 48 61 76 65 56 61 6c 2c 20 41 bool bHaveVal, A
06d0: 52 52 5f 54 59 50 45 5f 4e 41 4d 45 2a 20 70 44 RR_TYPE_NAME* pD
06e0: 65 66 50 61 72 20 3d 20 4e 55 4c 4c 29 0d 0a 20 efPar = NULL)..
06f0: 20 20 20 7b 0d 0a 20 20 20 20 20 20 4e 61 6d 65 {.. Name
0700: 73 5b 30 5d 20 3d 20 65 5f 6e 61 6d 65 3b 0d 0a s[0] = e_name;..
0710: 20 20 20 20 20 20 4e 61 6d 65 73 5b 31 5d 20 3d Names[1] =
0720: 20 72 5f 6e 61 6d 65 3b 20 20 20 20 20 20 0d 0a r_name; ..
0730: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 48 61 .. Ha
0740: 73 52 65 74 75 72 6e 56 61 6c 75 65 20 3d 20 68 sReturnValue = h
0750: 72 76 3b 0d 0a 20 20 20 20 20 20 4e 75 6d 62 65 rv;.. Numbe
0760: 72 4f 66 50 61 72 61 6d 73 20 3d 20 6e 75 6d 3b rOfParams = num;
0770: 0d 0a 20 20 20 20 20 20 69 73 55 6e 4c 69 6d 50 .. isUnLimP
0780: 61 72 4d 65 74 68 6f 64 20 3d 20 69 73 55 50 3b arMethod = isUP;
0790: 0d 0a 20 20 20 20 20 20 62 4d 65 74 68 48 61 76 .. bMethHav
07a0: 65 56 61 6c 20 3d 20 62 48 61 76 65 56 61 6c 3b eVal = bHaveVal;
07b0: 0d 0a 20 20 20 20 20 20 6e 50 72 6f 63 50 6f 73 .. nProcPos
07c0: 20 20 3d 20 70 72 6f 63 50 6f 73 3b 0d 0a 20 20 = procPos;..
07d0: 20 20 20 20 70 44 65 66 50 61 72 61 6d 20 3d 20 pDefParam =
07e0: 70 44 65 66 50 61 72 3b 20 20 20 20 20 20 0d 0a pDefPar; ..
07f0: 20 20 20 20 7d 0d 0a 20 20 20 20 69 6e 6c 69 6e }.. inlin
0800: 65 20 76 6f 69 64 20 43 6c 65 61 72 28 29 0d 0a e void Clear()..
0810: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 4e 61 6d {.. Nam
0820: 65 73 5b 30 5d 2e 45 6d 70 74 79 28 29 3b 0d 0a es[0].Empty();..
0830: 20 20 20 20 20 20 4e 61 6d 65 73 5b 31 5d 2e 45 Names[1].E
0840: 6d 70 74 79 28 29 3b 20 20 20 20 20 20 0d 0a 0d mpty(); ...
0850: 0a 20 20 20 20 20 20 48 61 73 52 65 74 75 72 6e . HasReturn
0860: 56 61 6c 75 65 20 3d 20 30 3b 0d 0a 20 20 20 20 Value = 0;..
0870: 20 20 4e 75 6d 62 65 72 4f 66 50 61 72 61 6d 73 NumberOfParams
0880: 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 6e 50 72 = 0;.. nPr
0890: 6f 63 50 6f 73 20 3d 20 2d 31 3b 0d 0a 20 20 20 ocPos = -1;..
08a0: 20 20 20 69 73 55 6e 4c 69 6d 50 61 72 4d 65 74 isUnLimParMet
08b0: 68 6f 64 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 hod = false;..
08c0: 20 20 20 20 62 4d 65 74 68 48 61 76 65 56 61 6c bMethHaveVal
08d0: 20 3d 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 = false;..
08e0: 20 70 44 65 66 50 61 72 61 6d 20 3d 20 4e 55 4c pDefParam = NUL
08f0: 4c 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 70 L;.. }.. p
0900: 61 72 61 6d 64 65 66 73 20 28 29 20 0d 0a 20 20 aramdefs () ..
0910: 20 20 7b 20 20 20 20 20 20 0d 0a 20 20 20 20 20 { ..
0920: 20 48 61 73 52 65 74 75 72 6e 56 61 6c 75 65 20 HasReturnValue
0930: 3d 20 30 3b 0d 0a 20 20 20 20 20 20 4e 75 6d 62 = 0;.. Numb
0940: 65 72 4f 66 50 61 72 61 6d 73 20 3d 20 30 3b 0d erOfParams = 0;.
0950: 0a 20 20 20 20 20 20 6e 50 72 6f 63 50 6f 73 20 . nProcPos
0960: 3d 20 2d 31 3b 0d 0a 20 20 20 20 20 20 69 73 55 = -1;.. isU
0970: 6e 4c 69 6d 50 61 72 4d 65 74 68 6f 64 20 3d 20 nLimParMethod =
0980: 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 62 4d false;.. bM
0990: 65 74 68 48 61 76 65 56 61 6c 20 3d 20 66 61 6c ethHaveVal = fal
09a0: 73 65 3b 0d 0a 20 20 20 20 20 20 70 44 65 66 50 se;.. pDefP
09b0: 61 72 61 6d 20 3d 20 4e 55 4c 4c 3b 0d 0a 20 20 aram = NULL;..
09c0: 20 20 7d 0d 0a 20 20 20 20 70 61 72 61 6d 64 65 }.. paramde
09d0: 66 73 20 28 63 6f 6e 73 74 20 63 68 61 72 20 2a fs (const char *
09e0: 65 5f 6e 61 6d 65 2c 20 63 6f 6e 73 74 20 63 68 e_name, const ch
09f0: 61 72 20 2a 72 5f 6e 61 6d 65 2c 20 69 6e 74 20 ar *r_name, int
0a00: 70 72 6f 63 50 6f 73 3d 2d 31 2c 20 69 6e 74 20 procPos=-1, int
0a10: 68 72 76 3d 30 2c 20 69 6e 74 20 6e 75 6d 3d 30 hrv=0, int num=0
0a20: 2c 20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 , ..
0a30: 20 20 20 62 6f 6f 6c 20 69 73 55 50 20 3d 20 66 bool isUP = f
0a40: 61 6c 73 65 2c 20 62 6f 6f 6c 20 62 48 61 76 65 alse, bool bHave
0a50: 56 61 6c 20 3d 20 66 61 6c 73 65 2c 20 41 52 52 Val = false, ARR
0a60: 5f 54 59 50 45 5f 4e 41 4d 45 2a 20 70 44 65 66 _TYPE_NAME* pDef
0a70: 50 61 72 20 3d 20 4e 55 4c 4c 29 0d 0a 20 20 20 Par = NULL)..
0a80: 20 7b 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 { ..
0a90: 49 6e 69 74 28 65 5f 6e 61 6d 65 2c 20 72 5f 6e Init(e_name, r_n
0aa0: 61 6d 65 2c 70 72 6f 63 50 6f 73 2c 20 68 72 76 ame,procPos, hrv
0ab0: 2c 6e 75 6d 2c 69 73 55 50 2c 20 62 48 61 76 65 ,num,isUP, bHave
0ac0: 56 61 6c 2c 20 70 44 65 66 50 61 72 29 3b 0d 0a Val, pDefPar);..
0ad0: 20 20 20 20 7d 0d 0a 20 20 20 20 7e 70 61 72 61 }.. ~para
0ae0: 6d 64 65 66 73 28 29 0d 0a 20 20 20 20 7b 0d 0a mdefs().. {..
0af0: 20 20 20 20 20 20 43 6c 65 61 72 28 29 3b 0d 0a Clear();..
0b00: 20 20 20 20 7d 0d 0a 20 20 20 20 70 61 72 61 6d }.. param
0b10: 64 65 66 73 20 28 63 6f 6e 73 74 20 70 61 72 61 defs (const para
0b20: 6d 64 65 66 73 26 20 70 61 72 29 0d 0a 20 20 20 mdefs& par)..
0b30: 20 7b 20 20 20 20 20 0d 0a 20 20 20 20 20 20 49 { .. I
0b40: 6e 69 74 28 70 61 72 2e 4e 61 6d 65 73 5b 30 5d nit(par.Names[0]
0b50: 2c 20 70 61 72 2e 4e 61 6d 65 73 5b 31 5d 2c 20 , par.Names[1],
0b60: 70 61 72 2e 6e 50 72 6f 63 50 6f 73 20 2c 70 61 par.nProcPos ,pa
0b70: 72 2e 48 61 73 52 65 74 75 72 6e 56 61 6c 75 65 r.HasReturnValue
0b80: 2c 20 70 61 72 2e 4e 75 6d 62 65 72 4f 66 50 61 , par.NumberOfPa
0b90: 72 61 6d 73 2c 20 70 61 72 2e 69 73 55 6e 4c 69 rams, par.isUnLi
0ba0: 6d 50 61 72 4d 65 74 68 6f 64 2c 20 70 61 72 2e mParMethod, par.
0bb0: 62 4d 65 74 68 48 61 76 65 56 61 6c 2c 20 70 61 bMethHaveVal, pa
0bc0: 72 2e 70 44 65 66 50 61 72 61 6d 29 3b 0d 0a 20 r.pDefParam);..
0bd0: 20 20 20 7d 0d 0a 20 20 20 20 69 6e 6c 69 6e 65 }.. inline
0be0: 20 70 61 72 61 6d 64 65 66 73 26 20 6f 70 65 72 paramdefs& oper
0bf0: 61 74 6f 72 20 3d 20 28 63 6f 6e 73 74 20 70 61 ator = (const pa
0c00: 72 61 6d 64 65 66 73 26 20 70 61 72 29 0d 0a 20 ramdefs& par)..
0c10: 20 20 20 7b 0d 0a 20 20 20 20 20 20 43 6c 65 61 {.. Clea
0c20: 72 28 29 3b 0d 0a 20 20 20 20 20 20 49 6e 69 74 r();.. Init
0c30: 28 70 61 72 2e 4e 61 6d 65 73 5b 30 5d 2c 20 70 (par.Names[0], p
0c40: 61 72 2e 4e 61 6d 65 73 5b 31 5d 2c 20 70 61 72 ar.Names[1], par
0c50: 2e 6e 50 72 6f 63 50 6f 73 2c 20 70 61 72 2e 48 .nProcPos, par.H
0c60: 61 73 52 65 74 75 72 6e 56 61 6c 75 65 2c 20 70 asReturnValue, p
0c70: 61 72 2e 4e 75 6d 62 65 72 4f 66 50 61 72 61 6d ar.NumberOfParam
0c80: 73 2c 20 70 61 72 2e 69 73 55 6e 4c 69 6d 50 61 s, par.isUnLimPa
0c90: 72 4d 65 74 68 6f 64 2c 20 70 61 72 2e 62 4d 65 rMethod, par.bMe
0ca0: 74 68 48 61 76 65 56 61 6c 2c 20 70 61 72 2e 70 thHaveVal, par.p
0cb0: 44 65 66 50 61 72 61 6d 29 3b 0d 0a 20 20 20 20 DefParam);..
0cc0: 20 20 72 65 74 75 72 6e 20 2a 74 68 69 73 3b 0d return *this;.
0cd0: 0a 20 20 20 20 7d 0d 0a 20 20 20 20 69 6e 6c 69 . }.. inli
0ce0: 6e 65 20 6f 70 65 72 61 74 6f 72 3d 3d 28 63 6f ne operator==(co
0cf0: 6e 73 74 20 70 61 72 61 6d 64 65 66 73 26 20 70 nst paramdefs& p
0d00: 29 0d 0a 20 20 20 20 7b 20 20 20 20 20 0d 0a 20 ).. { ..
0d10: 20 20 20 20 20 72 65 74 75 72 6e 20 70 2e 4e 61 return p.Na
0d20: 6d 65 73 5b 30 5d 2e 43 6f 6d 70 61 72 65 4e 6f mes[0].CompareNo
0d30: 43 61 73 65 28 4e 61 6d 65 73 5b 30 5d 29 20 3d Case(Names[0]) =
0d40: 3d 20 30 20 26 26 20 70 2e 4e 61 6d 65 73 5b 31 = 0 && p.Names[1
0d50: 5d 2e 43 6f 6d 70 61 72 65 4e 6f 43 61 73 65 28 ].CompareNoCase(
0d60: 4e 61 6d 65 73 5b 31 5d 29 20 3d 3d 20 30 3b 0d Names[1]) == 0;.
0d70: 0a 20 20 20 20 7d 0d 0a 0d 0a 20 20 7d 3b 0d 0a . }.... };..
0d80: 0d 0a 20 20 43 50 61 72 61 6d 44 65 66 73 28 29 .. CParamDefs()
0d90: 20 3a 20 6e 50 6f 73 4f 6e 52 65 61 64 46 72 65 : nPosOnReadFre
0da0: 65 50 72 6f 70 28 2d 31 29 2c 20 6e 50 6f 73 4f eProp(-1), nPosO
0db0: 6e 57 72 69 74 65 46 72 65 65 50 72 6f 70 28 2d nWriteFreeProp(-
0dc0: 31 29 2c 20 6e 50 6f 73 43 6f 6e 73 74 72 75 63 1), nPosConstruc
0dd0: 74 6f 72 28 2d 31 29 2c 20 6e 50 6f 73 44 65 73 tor(-1), nPosDes
0de0: 74 72 75 63 74 6f 72 28 2d 31 29 2c 20 70 4d 61 tructor(-1), pMa
0df0: 70 46 75 6e 63 28 4e 55 4c 4c 29 20 7b 7d 0d 0a pFunc(NULL) {}..
0e00: 20 20 7e 43 50 61 72 61 6d 44 65 66 73 28 29 7b ~CParamDefs(){
0e10: 7d 0d 0a 0d 0a 20 20 69 6e 6c 69 6e 65 20 62 6f }.... inline bo
0e20: 6f 6c 20 41 64 64 50 61 72 61 6d 28 63 6f 6e 73 ol AddParam(cons
0e30: 74 20 63 68 61 72 20 2a 65 6e 67 5f 64 65 73 63 t char *eng_desc
0e40: 72 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 72 r, const char *r
0e50: 75 73 5f 64 65 73 63 72 2c 20 69 6e 74 20 70 72 us_descr, int pr
0e60: 6f 63 50 6f 73 2c 20 69 6e 74 20 69 73 5f 66 75 ocPos, int is_fu
0e70: 6e 63 20 3d 20 30 2c 20 0d 0a 20 20 20 20 20 20 nc = 0, ..
0e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0e90: 20 69 6e 74 20 6e 4e 75 6d 50 61 72 61 6d 20 3d int nNumParam =
0ea0: 20 30 2c 20 62 6f 6f 6c 20 69 73 55 50 20 3d 20 0, bool isUP =
0eb0: 66 61 6c 73 65 2c 20 62 6f 6f 6c 20 62 48 61 76 false, bool bHav
0ec0: 65 56 61 6c 20 3d 20 66 61 6c 73 65 29 0d 0a 20 eVal = false)..
0ed0: 20 7b 0d 0a 20 20 20 20 41 52 52 5f 54 59 50 45 {.. ARR_TYPE
0ee0: 5f 4e 41 4d 45 2a 20 70 44 65 66 50 61 72 61 6d _NAME* pDefParam
0ef0: 20 3d 20 4e 55 4c 4c 3b 0d 0a 20 20 20 20 69 66 = NULL;.. if
0f00: 20 28 70 4d 61 70 46 75 6e 63 29 0d 0a 20 20 20 (pMapFunc)..
0f10: 20 20 20 70 4d 61 70 46 75 6e 63 2d 3e 4c 6f 6f pMapFunc->Loo
0f20: 6b 75 70 28 72 75 73 5f 64 65 73 63 72 2c 20 28 kup(rus_descr, (
0f30: 43 4f 62 6a 65 63 74 2a 26 29 70 44 65 66 50 61 CObject*&)pDefPa
0f40: 72 61 6d 29 3b 0d 0a 0d 0a 20 20 20 20 70 61 72 ram);.... par
0f50: 61 6d 64 65 66 73 20 70 61 72 28 65 6e 67 5f 64 amdefs par(eng_d
0f60: 65 73 63 72 2c 20 72 75 73 5f 64 65 73 63 72 2c escr, rus_descr,
0f70: 20 70 72 6f 63 50 6f 73 2c 69 73 5f 66 75 6e 63 procPos,is_func
0f80: 2c 20 6e 4e 75 6d 50 61 72 61 6d 2c 20 69 73 55 , nNumParam, isU
0f90: 50 2c 20 62 48 61 76 65 56 61 6c 29 3b 20 0d 0a P, bHaveVal); ..
0fa0: 0d 0a 20 20 20 20 69 66 20 28 66 69 6e 64 28 76 .. if (find(v
0fb0: 65 63 5f 70 5f 64 65 66 2e 62 65 67 69 6e 28 29 ec_p_def.begin()
0fc0: 2c 20 76 65 63 5f 70 5f 64 65 66 2e 65 6e 64 28 , vec_p_def.end(
0fd0: 29 2c 20 70 61 72 29 20 3d 3d 20 76 65 63 5f 70 ), par) == vec_p
0fe0: 5f 64 65 66 2e 65 6e 64 28 29 29 0d 0a 20 20 20 _def.end())..
0ff0: 20 7b 0d 0a 20 20 20 20 20 20 76 65 63 5f 70 5f {.. vec_p_
1000: 64 65 66 2e 70 75 73 68 5f 62 61 63 6b 28 70 61 def.push_back(pa
1010: 72 29 3b 0d 0a 20 20 20 20 20 20 69 6e 74 20 70 r);.. int p
1020: 6f 73 20 3d 20 76 65 63 5f 70 5f 64 65 66 2e 73 os = vec_p_def.s
1030: 69 7a 65 28 29 20 2d 20 31 3b 20 20 20 20 20 20 ize() - 1;
1040: 0d 0a 20 20 20 20 20 20 69 66 20 28 65 6e 67 5f .. if (eng_
1050: 64 65 73 63 72 29 0d 0a 20 20 20 20 20 20 20 20 descr)..
1060: 6d 61 70 49 6e 64 65 78 65 73 5b 65 6e 67 5f 64 mapIndexes[eng_d
1070: 65 73 63 72 5d 20 3d 20 70 6f 73 3b 0d 0a 20 20 escr] = pos;..
1080: 20 20 20 20 69 66 20 28 72 75 73 5f 64 65 73 63 if (rus_desc
1090: 72 29 0d 0a 20 20 20 20 20 20 20 20 6d 61 70 49 r).. mapI
10a0: 6e 64 65 78 65 73 5b 72 75 73 5f 64 65 73 63 72 ndexes[rus_descr
10b0: 5d 20 3d 20 70 6f 73 3b 0d 0a 20 20 20 20 20 20 ] = pos;..
10c0: 0d 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 .. return t
10d0: 72 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 rue;.. }..
10e0: 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 72 65 74 else.. ret
10f0: 75 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 20 20 urn false;..
1100: 7d 0d 0a 20 20 69 6e 6c 69 6e 65 20 62 6f 6f 6c }.. inline bool
1110: 20 52 65 6d 6f 76 65 50 61 72 61 6d 28 63 6f 6e RemoveParam(con
1120: 73 74 20 63 68 61 72 20 2a 65 6e 67 5f 64 65 73 st char *eng_des
1130: 63 72 2c 20 63 6f 6e 73 74 20 63 68 61 72 20 2a cr, const char *
1140: 72 75 73 5f 64 65 73 63 72 29 0d 0a 20 20 7b 0d rus_descr).. {.
1150: 0a 20 20 20 20 76 65 63 74 6f 72 3c 70 61 72 61 . vector<para
1160: 6d 64 65 66 73 3e 3a 3a 69 74 65 72 61 74 6f 72 mdefs>::iterator
1170: 20 49 74 65 72 3b 0d 0a 20 20 20 20 70 61 72 61 Iter;.. para
1180: 6d 64 65 66 73 20 70 61 72 28 65 6e 67 5f 64 65 mdefs par(eng_de
1190: 73 63 72 2c 20 72 75 73 5f 64 65 73 63 72 29 3b scr, rus_descr);
11a0: 20 0d 0a 0d 0a 20 20 20 20 49 74 65 72 20 3d 20 .... Iter =
11b0: 66 69 6e 64 28 76 65 63 5f 70 5f 64 65 66 2e 62 find(vec_p_def.b
11c0: 65 67 69 6e 28 29 2c 20 76 65 63 5f 70 5f 64 65 egin(), vec_p_de
11d0: 66 2e 65 6e 64 28 29 2c 20 70 61 72 29 3b 0d 0a f.end(), par);..
11e0: 0d 0a 20 20 20 20 69 66 20 28 49 74 65 72 20 21 .. if (Iter !
11f0: 3d 20 76 65 63 5f 70 5f 64 65 66 2e 65 6e 64 28 = vec_p_def.end(
1200: 29 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 )).. {..
1210: 20 69 66 20 28 65 6e 67 5f 64 65 73 63 72 29 0d if (eng_descr).
1220: 0a 20 20 20 20 20 20 20 20 6d 61 70 49 6e 64 65 . mapInde
1230: 78 65 73 2e 52 65 6d 6f 76 65 4b 65 79 28 65 6e xes.RemoveKey(en
1240: 67 5f 64 65 73 63 72 29 3b 0d 0a 20 20 20 20 20 g_descr);..
1250: 20 69 66 20 28 72 75 73 5f 64 65 73 63 72 29 0d if (rus_descr).
1260: 0a 20 20 20 20 20 20 20 20 6d 61 70 49 6e 64 65 . mapInde
1270: 78 65 73 2e 52 65 6d 6f 76 65 4b 65 79 28 72 75 xes.RemoveKey(ru
1280: 73 5f 64 65 73 63 72 29 3b 0d 0a 0d 0a 20 20 20 s_descr);....
1290: 20 20 20 76 65 63 5f 70 5f 64 65 66 2e 65 72 61 vec_p_def.era
12a0: 73 65 28 49 74 65 72 29 3b 20 20 20 20 20 20 0d se(Iter); .
12b0: 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 74 72 . return tr
12c0: 75 65 3b 0d 0a 20 20 20 20 7d 0d 0a 20 20 20 20 ue;.. }..
12d0: 65 6c 73 65 0d 0a 20 20 20 20 20 20 72 65 74 75 else.. retu
12e0: 72 6e 20 66 61 6c 73 65 3b 0d 0a 20 20 7d 0d 0a rn false;.. }..
12f0: 20 20 69 6e 6c 69 6e 65 20 69 6e 74 20 53 69 7a inline int Siz
1300: 65 28 29 20 63 6f 6e 73 74 0d 0a 20 20 7b 0d 0a e() const.. {..
1310: 20 20 20 20 72 65 74 75 72 6e 20 76 65 63 5f 70 return vec_p
1320: 5f 64 65 66 2e 73 69 7a 65 28 29 3b 0d 0a 20 20 _def.size();..
1330: 7d 0d 0a 20 20 69 6e 6c 69 6e 65 20 62 6f 6f 6c }.. inline bool
1340: 20 45 6d 70 74 79 28 29 20 63 6f 6e 73 74 0d 0a Empty() const..
1350: 20 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e 20 {.. return
1360: 76 65 63 5f 70 5f 64 65 66 2e 65 6d 70 74 79 28 vec_p_def.empty(
1370: 29 3b 0d 0a 20 20 7d 0d 0a 20 20 69 6e 6c 69 6e );.. }.. inlin
1380: 65 20 63 6f 6e 73 74 20 70 61 72 61 6d 64 65 66 e const paramdef
1390: 73 26 20 6f 70 65 72 61 74 6f 72 20 5b 5d 28 69 s& operator [](i
13a0: 6e 74 20 69 6e 64 65 78 29 20 63 6f 6e 73 74 0d nt index) const.
13b0: 0a 20 20 7b 0d 0a 20 20 20 20 72 65 74 75 72 6e . {.. return
13c0: 20 76 65 63 5f 70 5f 64 65 66 5b 69 6e 64 65 78 vec_p_def[index
13d0: 5d 3b 0d 0a 20 20 7d 0d 0a 20 20 69 6e 6c 69 6e ];.. }.. inlin
13e0: 65 20 76 6f 69 64 20 53 65 74 50 6f 6f 6c 53 69 e void SetPoolSi
13f0: 7a 65 28 69 6e 74 20 6e 43 6f 6e 74 4d 65 74 68 ze(int nContMeth
1400: 2c 20 69 6e 74 20 6e 43 6f 6e 74 56 61 72 73 29 , int nContVars)
1410: 0d 0a 20 20 7b 20 20 20 20 0d 0a 20 20 20 20 69 .. { .. i
1420: 66 20 28 6e 43 6f 6e 74 4d 65 74 68 20 3e 20 30 f (nContMeth > 0
1430: 29 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 ).. {..
1440: 76 65 63 5f 70 5f 64 65 66 2e 72 65 73 65 72 76 vec_p_def.reserv
1450: 65 28 6e 43 6f 6e 74 4d 65 74 68 29 3b 20 20 20 e(nContMeth);
1460: 20 0d 0a 20 20 20 20 20 20 6d 61 70 49 6e 64 65 .. mapInde
1470: 78 65 73 2e 49 6e 69 74 48 61 73 68 54 61 62 6c xes.InitHashTabl
1480: 65 28 73 74 61 74 69 63 5f 63 61 73 74 3c 75 6e e(static_cast<un
1490: 73 69 67 6e 65 64 20 69 6e 74 3e 28 6e 43 6f 6e signed int>(nCon
14a0: 74 4d 65 74 68 2a 31 2e 35 29 29 3b 0d 0a 20 20 tMeth*1.5));..
14b0: 20 20 7d 0d 0a 20 20 20 20 69 66 20 28 6e 43 6f }.. if (nCo
14c0: 6e 74 56 61 72 73 20 3e 20 30 29 0d 0a 20 20 20 ntVars > 0)..
14d0: 20 20 20 6d 61 70 49 6e 64 4f 66 50 72 6f 70 65 mapIndOfPrope
14e0: 72 74 79 2e 49 6e 69 74 48 61 73 68 54 61 62 6c rty.InitHashTabl
14f0: 65 28 6e 43 6f 6e 74 56 61 72 73 29 3b 0d 0a 20 e(nContVars);..
1500: 20 7d 0d 0a 20 20 69 6e 6c 69 6e 65 20 69 6e 74 }.. inline int
1510: 20 47 65 74 49 6e 64 65 78 42 79 4e 61 6d 65 28 GetIndexByName(
1520: 63 6f 6e 73 74 20 63 68 61 72 2a 20 6c 70 4d 65 const char* lpMe
1530: 74 68 6f 64 4e 61 6d 65 29 20 63 6f 6e 73 74 0d thodName) const.
1540: 0a 20 20 7b 0d 0a 20 20 20 20 69 6e 74 20 72 65 . {.. int re
1550: 73 20 3d 20 2d 31 3b 0d 0a 20 20 20 20 0d 0a 20 s = -1;.. ..
1560: 20 20 20 69 66 20 28 6d 61 70 49 6e 64 65 78 65 if (mapIndexe
1570: 73 2e 4c 6f 6f 6b 75 70 28 6c 70 4d 65 74 68 6f s.Lookup(lpMetho
1580: 64 4e 61 6d 65 2c 20 72 65 73 29 29 20 20 20 20 dName, res))
1590: 0d 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 72 .. return r
15a0: 65 73 3b 0d 0a 20 20 20 20 0d 0a 20 20 20 20 72 es;.. .. r
15b0: 65 74 75 72 6e 20 2d 31 3b 0d 0a 20 20 7d 0d 0a eturn -1;.. }..
15c0: 20 20 69 6e 6c 69 6e 65 20 69 6e 74 20 47 65 74 inline int Get
15d0: 49 6e 64 65 78 50 72 6f 70 65 74 72 79 28 63 6f IndexPropetry(co
15e0: 6e 73 74 20 43 53 74 72 69 6e 67 26 20 73 74 72 nst CString& str
15f0: 4e 61 6d 65 50 72 6f 70 2c 20 43 42 4c 4d 6f 64 NameProp, CBLMod
1600: 75 6c 65 20 2a 70 4d 6f 64 2c 20 62 6f 6f 6c 20 ule *pMod, bool
1610: 69 73 53 65 74 29 0d 0a 20 20 7b 0d 0a 20 20 20 isSet).. {..
1620: 20 43 53 74 72 69 6e 67 20 73 74 72 4e 61 6d 65 CString strName
1630: 50 72 6f 70 52 75 73 20 3d 20 69 73 53 65 74 20 PropRus = isSet
1640: 3f 20 22 cf f0 e8 c7 e0 ef e8 f1 e8 5f 22 20 3a ? "........._" :
1650: 20 22 cf f0 e8 cf ee eb f3 f7 e5 ed e8 e8 5f 22 "............_"
1660: 3b 0d 0a 20 20 20 20 43 53 74 72 69 6e 67 20 73 ;.. CString s
1670: 74 72 4e 61 6d 65 50 72 6f 70 45 6e 67 20 3d 20 trNamePropEng =
1680: 69 73 53 65 74 20 3f 20 22 4f 6e 57 72 69 74 65 isSet ? "OnWrite
1690: 5f 22 20 20 20 3a 20 22 4f 6e 47 65 74 5f 22 3b _" : "OnGet_";
16a0: 0d 0a 20 20 20 20 0d 0a 20 20 20 20 73 74 72 4e .. .. strN
16b0: 61 6d 65 50 72 6f 70 52 75 73 20 2b 3d 20 73 74 amePropRus += st
16c0: 72 4e 61 6d 65 50 72 6f 70 3b 20 20 20 20 0d 0a rNameProp; ..
16d0: 20 20 20 20 69 6e 74 20 69 50 72 6f 63 20 3d 20 int iProc =
16e0: 2d 31 3b 0d 0a 0d 0a 20 20 20 20 69 66 20 28 6d -1;.... if (m
16f0: 61 70 49 6e 64 4f 66 50 72 6f 70 65 72 74 79 2e apIndOfProperty.
1700: 4c 6f 6f 6b 75 70 28 73 74 72 4e 61 6d 65 50 72 Lookup(strNamePr
1710: 6f 70 52 75 73 2c 69 50 72 6f 63 29 29 0d 0a 20 opRus,iProc))..
1720: 20 20 20 20 20 72 65 74 75 72 6e 20 69 50 72 6f return iPro
1730: 63 3b 0d 0a 20 20 20 20 65 6c 73 65 20 69 66 20 c;.. else if
1740: 28 6d 61 70 49 6e 64 4f 66 50 72 6f 70 65 72 74 (mapIndOfPropert
1750: 79 2e 4c 6f 6f 6b 75 70 28 73 74 72 4e 61 6d 65 y.Lookup(strName
1760: 50 72 6f 70 45 6e 67 2c 69 50 72 6f 63 29 29 0d PropEng,iProc)).
1770: 0a 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 50 . return iP
1780: 72 6f 63 3b 0d 0a 20 20 20 20 65 6c 73 65 0d 0a roc;.. else..
1790: 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 69 50 72 {.. iPr
17a0: 6f 63 20 3d 20 70 4d 6f 64 2d 3e 46 69 6e 64 50 oc = pMod->FindP
17b0: 72 6f 63 28 73 74 72 4e 61 6d 65 50 72 6f 70 52 roc(strNamePropR
17c0: 75 73 2c 20 30 29 3b 0d 0a 20 20 20 20 20 20 69 us, 0);.. i
17d0: 66 20 28 69 50 72 6f 63 20 3d 3d 20 2d 31 29 0d f (iProc == -1).
17e0: 0a 20 20 20 20 20 20 7b 20 20 20 20 20 20 0d 0a . { ..
17f0: 20 20 20 20 20 20 20 20 73 74 72 4e 61 6d 65 50 strNameP
1800: 72 6f 70 45 6e 67 20 2b 3d 20 73 74 72 4e 61 6d ropEng += strNam
1810: 65 50 72 6f 70 3b 0d 0a 20 20 20 20 20 20 20 20 eProp;..
1820: 69 50 72 6f 63 20 3d 20 70 4d 6f 64 2d 3e 46 69 iProc = pMod->Fi
1830: 6e 64 50 72 6f 63 28 73 74 72 4e 61 6d 65 50 72 ndProc(strNamePr
1840: 6f 70 45 6e 67 2c 20 31 29 3b 0d 0a 20 20 20 20 opEng, 1);..
1850: 20 20 20 20 69 66 20 28 69 50 72 6f 63 20 3d 3d if (iProc ==
1860: 20 2d 31 29 0d 0a 20 20 20 20 20 20 20 20 20 20 -1)..
1870: 6d 61 70 49 6e 64 4f 66 50 72 6f 70 65 72 74 79 mapIndOfProperty
1880: 5b 73 74 72 4e 61 6d 65 50 72 6f 70 52 75 73 5d [strNamePropRus]
1890: 20 3d 20 69 50 72 6f 63 3b 0d 0a 20 20 20 20 20 = iProc;..
18a0: 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 else..
18b0: 20 20 20 6d 61 70 49 6e 64 4f 66 50 72 6f 70 65 mapIndOfPrope
18c0: 72 74 79 5b 73 74 72 4e 61 6d 65 50 72 6f 70 45 rty[strNamePropE
18d0: 6e 67 5d 20 3d 20 69 50 72 6f 63 3b 20 20 20 20 ng] = iProc;
18e0: 20 20 20 20 0d 0a 20 20 20 20 20 20 7d 20 20 20 .. }
18f0: 20 0d 0a 20 20 20 20 20 20 65 6c 73 65 20 20 20 .. else
1900: 20 20 20 0d 0a 20 20 20 20 20 20 20 20 6d 61 70 .. map
1910: 49 6e 64 4f 66 50 72 6f 70 65 72 74 79 5b 73 74 IndOfProperty[st
1920: 72 4e 61 6d 65 50 72 6f 70 52 75 73 5d 20 3d 20 rNamePropRus] =
1930: 69 50 72 6f 63 3b 0d 0a 20 20 20 20 20 20 20 20 iProc;..
1940: 20 20 20 20 20 20 0d 0a 20 20 20 20 20 20 72 65 .. re
1950: 74 75 72 6e 20 69 50 72 6f 63 3b 0d 0a 20 20 20 turn iProc;..
1960: 20 7d 0d 0a 20 20 7d 0d 0a 70 72 69 76 61 74 65 }.. }..private
1970: 3a 0d 0a 20 20 76 65 63 74 6f 72 3c 70 61 72 61 :.. vector<para
1980: 6d 64 65 66 73 3e 20 76 65 63 5f 70 5f 64 65 66 mdefs> vec_p_def
1990: 3b 0d 0a 20 20 74 79 70 65 64 65 66 20 76 65 63 ;.. typedef vec
19a0: 74 6f 72 3c 70 61 72 61 6d 64 65 66 73 3e 3a 3a tor<paramdefs>::
19b0: 63 6f 6e 73 74 5f 69 74 65 72 61 74 6f 72 20 43 const_iterator C
19c0: 4f 4e 53 54 5f 49 54 45 52 3b 0d 0a 20 20 43 49 ONST_ITER;.. CI
19d0: 53 74 72 69 6e 67 4d 61 70 3c 69 6e 74 2c 20 69 StringMap<int, i
19e0: 6e 74 3e 20 6d 61 70 49 6e 64 65 78 65 73 3b 20 nt> mapIndexes;
19f0: 20 0d 0a 20 20 43 49 53 74 72 69 6e 67 4d 61 70 .. CIStringMap
1a00: 3c 69 6e 74 2c 20 69 6e 74 3e 20 6d 61 70 49 6e <int, int> mapIn
1a10: 64 4f 66 50 72 6f 70 65 72 74 79 3b 20 20 0d 0a dOfProperty; ..
1a20: 0d 0a 7d 3b 0d 0a 0d 0a 23 65 6e 64 69 66 20 2f ..};....#endif /
1a30: 2f 20 21 64 65 66 69 6e 65 64 28 41 46 58 5f 50 / !defined(AFX_P
1a40: 41 52 41 4d 44 45 46 53 5f 48 5f 5f 33 42 37 37 ARAMDEFS_H__3B77
1a50: 32 32 45 34 5f 30 38 36 45 5f 34 34 33 39 5f 41 22E4_086E_4439_A
1a60: 36 39 37 5f 46 30 44 46 38 31 32 39 44 43 35 31 697_F0DF8129DC51
1a70: 5f 5f 49 4e 43 4c 55 44 45 44 5f 29 0d 0a __INCLUDED_)..