summaryrefslogtreecommitdiff
path: root/Library/Artifacts/21/2182bbf10cd9557914fe3cd861960f24
blob: 07014868661570b0584bf5cfd276c1bfa48e6929 (plain)
ofshex dumpascii
0000 00 00 0f 81 00 00 a2 88 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe ....................2019.3.6f1..
0020 ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 ...............f..!..5.9.4.Q...B
0040 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 ...............7................
0060 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 ................................
0080 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 ...............E................
00a0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 ...............#................
00c0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 ...............,................
00e0 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 ...........5...a................
0100 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 ...............#................
0120 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 ...............,................
0140 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 ...............r................
0160 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 ...............#................
0180 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 ...............,................
01a0 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 ...........H....................
01c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 ...........1...1............@...
01e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 ................................
0200 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 ...........Q...j................
0220 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 ...............J................
0240 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 ...........1...1................
0260 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 ................................
0280 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 ...............j................
02a0 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 ...........\....................
02c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 ...........H...r................
02e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 ...........1...1............@...
0300 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 ................................
0320 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 ...........Q...j................
0340 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 ...........H...w................
0360 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 ...........1...1............@...
0380 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 ...........Q...j................
03c0 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 ...........H....................
03e0 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 ...........1...1............@...
0400 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 ................................
0420 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 ...........Q...j................
0440 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 ...........y....................
0460 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 ...............#.......!........
0480 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 ...............,......."........
04a0 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 .......................#....@...
04c0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 ...........1...1.......$........
04e0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 .......................%........
0500 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 ...............j.......&........
0520 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 .......................'........
0540 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 ...........1...1.......(........
0560 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 .......................)........
0580 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 ...............j.......*........
05a0 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 ...........H...........+........
05c0 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 ...........1...1.......,....@...
05e0 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 .......................-........
0600 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 ...........Q...j................
0620 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 ...........y.........../........
0640 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 ...............#.......0........
0660 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 ...............,.......1........
0680 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 .......................2....@...
06a0 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 .......................3....@...
06c0 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 ...............#.......4........
06e0 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 ...............,.......5........
0700 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 ...........H...........6........
0720 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 ...........1...1.......7....@...
0740 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 .......................8........
0760 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 ...........Q...j.......9........
0780 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 ...........H...........:........
07a0 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 ...........1...1.......;....@...
07c0 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 .......................<........
07e0 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 ...........Q...j.......=........
0800 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 ...........H...........>........
0820 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 ...........1...1.......?....@...
0840 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 .......................@........
0860 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 ...........Q...j.......A........
0880 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 .......MonoImporter.PPtr<EditorE
08a0 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 xtension>.m_FileID.m_PathID.PPtr
08c0 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 <PrefabInstance>.m_ExternalObjec
08e0 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 ts.SourceAssetIdentifier.type.as
0900 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 sembly.name.m_UsedFileIDs.m_Defa
0920 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f ultReferences.executionOrder.ico
0940 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d n.m_UserData.m_AssetBundleName.m
0960 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 _AssetBundleVariant.....s.......
0980 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 G....Z56.:!@i.J*...............7
09a0 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 ................................
09c0 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 ...............................E
09e0 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a00 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a20 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 ...........................(...a
0a40 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0a60 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0a80 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 ...............................r
0aa0 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0ac0 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0ae0 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab ...........................H....
0b00 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0b20 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0b40 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0b60 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea ...........................H....
0b80 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0ba0 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ............@...................
0bc0 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a ...........................Q...j
0be0 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d ...............................=
0c00 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ...........................1...1
0c20 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b ................................
0c40 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a ...............................j
0c60 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b ...........................H....
0c80 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 ...........................1...1
0ca0 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b ............@...................
0cc0 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a ...........................Q...j
0ce0 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a ...........................y....
0d00 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 ................................
0d20 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f ................................
0d40 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 ...........................y...Q
0d60 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 ................................
0d80 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f ................................
0da0 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 ...............................X
0dc0 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 .......!...................H...i
0de0 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 ......."...................1...1
0e00 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......#....@...................
0e20 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......$...................Q...j
0e40 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 .......%...................H...u
0e60 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 .......&...................1...1
0e80 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b .......'....@...................
0ea0 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a .......(...................Q...j
0ec0 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 .......)...............PPtr<Edit
0ee0 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 orExtension>.m_FileID.m_PathID.P
0f00 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 Ptr<PrefabInstance>.m_DefaultRef
0f20 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 erences.m_Icon.m_ExecutionOrder.
0f40 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 m_ClassName.m_Namespace.........
0f60 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 ............\........y......`...
0f80 28 92 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 (...............................
0fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 .....................y..........
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1080 00 00 00 00 00 00 00 00 14 00 00 00 49 6e 70 75 74 42 69 6e 64 69 6e 67 52 65 73 6f 6c 76 65 72 ............InputBindingResolver
10a0 b2 91 00 00 75 73 69 6e 67 20 53 79 73 74 65 6d 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e ....using.System;..using.System.
10c0 43 6f 6c 6c 65 63 74 69 6f 6e 73 2e 47 65 6e 65 72 69 63 3b 0d 0a 75 73 69 6e 67 20 53 79 73 74 Collections.Generic;..using.Syst
10e0 65 6d 2e 52 65 66 6c 65 63 74 69 6f 6e 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 2e 43 6f 6c 6c em.Reflection;..using.Unity.Coll
1100 65 63 74 69 6f 6e 73 3b 0d 0a 75 73 69 6e 67 20 55 6e 69 74 79 45 6e 67 69 6e 65 2e 49 6e 70 75 ections;..using.UnityEngine.Inpu
1120 74 53 79 73 74 65 6d 2e 55 74 69 6c 69 74 69 65 73 3b 0d 0a 0d 0a 2f 2f 2f 2f 54 4f 44 4f 3a 20 tSystem.Utilities;....////TODO:.
1140 72 65 75 73 65 20 69 6e 74 65 72 61 63 74 69 6f 6e 2c 20 70 72 6f 63 65 73 73 6f 72 2c 20 61 6e reuse.interaction,.processor,.an
1160 64 20 63 6f 6d 70 6f 73 69 74 65 20 69 6e 73 74 61 6e 63 65 73 20 66 72 6f 6d 20 70 72 69 6f 72 d.composite.instances.from.prior
1180 20 72 65 73 6f 6c 76 65 73 0d 0a 0d 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 6e 67 69 .resolves....namespace.UnityEngi
11a0 6e 65 2e 49 6e 70 75 74 53 79 73 74 65 6d 0d 0a 7b 0d 0a 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d ne.InputSystem..{......///.<summ
11c0 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f 20 48 65 61 72 74 20 6f 66 20 74 68 65 20 62 69 6e 64 69 ary>......///.Heart.of.the.bindi
11e0 6e 67 20 72 65 73 6f 6c 75 74 69 6f 6e 20 6d 61 63 68 69 6e 65 72 79 2e 20 43 6f 6e 73 75 6d 65 ng.resolution.machinery..Consume
1200 73 20 6c 69 73 74 73 20 6f 66 20 62 69 6e 64 69 6e 67 73 0d 0a 20 20 20 20 2f 2f 2f 20 61 6e 64 s.lists.of.bindings......///.and
1220 20 73 70 69 74 73 20 6f 75 74 20 6f 75 74 20 61 20 6c 69 73 74 20 6f 66 20 72 65 73 6f 6c 76 65 .spits.out.out.a.list.of.resolve
1240 64 20 62 69 6e 64 69 6e 67 73 20 74 6f 67 65 74 68 65 72 20 77 69 74 68 20 74 68 65 69 72 20 6e d.bindings.together.with.their.n
1260 65 65 64 65 64 0d 0a 20 20 20 20 2f 2f 2f 20 65 78 65 63 75 74 69 6f 6e 20 73 74 61 74 65 2e 0d eeded......///.execution.state..
1280 0a 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 72 65 .....///.</summary>......///.<re
12a0 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 2f 2f 2f 20 4f 6e 65 20 6f 72 20 6d 6f 72 65 20 3c 73 65 65 marks>......///.One.or.more.<see
12c0 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 4d 61 70 22 3e 61 63 74 69 6f 6e 20 6d 61 .cref="InputActionMap">action.ma
12e0 70 73 3c 2f 73 65 65 3e 20 63 61 6e 20 62 65 20 61 64 64 65 64 20 74 6f 20 74 68 65 20 73 61 6d ps</see>.can.be.added.to.the.sam
1300 65 0d 0a 20 20 20 20 2f 2f 2f 20 72 65 73 6f 6c 76 65 72 2e 20 54 68 65 20 72 65 73 75 6c 74 20 e......///.resolver..The.result.
1320 69 73 20 61 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 62 69 6e 64 69 6e 67 20 is.a.combination.of.the.binding.
1340 73 74 61 74 65 20 6f 66 20 61 6c 6c 20 6d 61 70 73 2e 0d 0a 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 state.of.all.maps.......///.....
1360 20 2f 2f 2f 20 54 68 65 20 64 61 74 61 20 73 65 74 20 75 70 20 62 79 20 61 20 72 65 73 6f 6c 76 .///.The.data.set.up.by.a.resolv
1380 65 72 20 69 73 20 66 6f 72 20 63 6f 6e 73 75 6d 70 74 69 6f 6e 20 62 79 20 3c 73 65 65 20 63 72 er.is.for.consumption.by.<see.cr
13a0 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 22 2f 3e 2e 0d 0a 20 20 20 20 2f 2f ef="InputActionState"/>.......//
13c0 2f 20 45 73 73 65 6e 74 69 61 6c 6c 79 2c 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 52 65 73 6f 6c /.Essentially,.InputBindingResol
13e0 76 65 72 20 64 6f 65 73 20 61 6c 6c 20 74 68 65 20 77 69 72 69 6e 67 20 61 6e 64 20 3c 73 65 65 ver.does.all.the.wiring.and.<see
1400 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 22 2f 3e 0d 0a 20 20 20 20 .cref="InputActionState"/>......
1420 2f 2f 2f 20 64 6f 65 73 20 61 6c 6c 20 74 68 65 20 61 63 74 75 61 6c 20 65 78 65 63 75 74 69 6f ///.does.all.the.actual.executio
1440 6e 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 72 65 73 75 6c 74 69 6e 67 20 64 61 74 61 2e 0d 0a n.based.on.the.resulting.data...
1460 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 2f 2f 2f 20 3c 73 65 65 ....///.</remarks>......///.<see
1480 61 6c 73 6f 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 49 6e 69 74 also.cref="InputActionState.Init
14a0 69 61 6c 69 7a 65 22 2f 3e 0d 0a 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 72 75 63 74 20 49 ialize"/>......internal.struct.I
14c0 6e 70 75 74 42 69 6e 64 69 6e 67 52 65 73 6f 6c 76 65 72 20 3a 20 49 44 69 73 70 6f 73 61 62 6c nputBindingResolver.:.IDisposabl
14e0 65 0d 0a 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 e......{..........public.int.tot
1500 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 alProcessorCount;..........publi
1520 63 20 69 6e 74 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 c.int.totalCompositeCount;......
1540 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 ....public.int.totalInteractionC
1560 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 61 6c 4d ount;..........public.int.totalM
1580 61 70 43 6f 75 6e 74 20 3d 3e 20 6d 65 6d 6f 72 79 2e 6d 61 70 43 6f 75 6e 74 3b 0d 0a 20 20 20 apCount.=>.memory.mapCount;.....
15a0 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 61 6c 41 63 74 69 6f 6e 43 6f 75 6e 74 .....public.int.totalActionCount
15c0 20 3d 3e 20 6d 65 6d 6f 72 79 2e 61 63 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 .=>.memory.actionCount;.........
15e0 20 70 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 61 6c 42 69 6e 64 69 6e 67 43 6f 75 6e 74 20 3d 3e .public.int.totalBindingCount.=>
1600 20 6d 65 6d 6f 72 79 2e 62 69 6e 64 69 6e 67 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 70 .memory.bindingCount;..........p
1620 75 62 6c 69 63 20 69 6e 74 20 74 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 20 3d 3e 20 6d ublic.int.totalControlCount.=>.m
1640 65 6d 6f 72 79 2e 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 emory.controlCount;............p
1660 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f 6e 4d 61 70 5b 5d 20 6d 61 70 73 3b 0d 0a 20 20 ublic.InputActionMap[].maps;....
1680 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 5b 5d 20 63 6f 6e 74 ......public.InputControl[].cont
16a0 72 6f 6c 73 3b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 41 63 74 69 6f rols;..........public.InputActio
16c0 6e 53 74 61 74 65 2e 55 6e 6d 61 6e 61 67 65 64 4d 65 6d 6f 72 79 20 6d 65 6d 6f 72 79 3b 0d 0a nState.UnmanagedMemory.memory;..
16e0 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 49 6e 70 75 74 49 6e 74 65 72 61 63 74 69 6f 6e ........public.IInputInteraction
1700 5b 5d 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 3b 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 [].interactions;..........public
1720 20 49 6e 70 75 74 50 72 6f 63 65 73 73 6f 72 5b 5d 20 70 72 6f 63 65 73 73 6f 72 73 3b 0d 0a 20 .InputProcessor[].processors;...
1740 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 .......public.InputBindingCompos
1760 69 74 65 5b 5d 20 63 6f 6d 70 6f 73 69 74 65 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f ite[].composites;............///
1780 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 42 69 6e 64 69 6e 67 20 .<summary>..........///.Binding.
17a0 6d 61 73 6b 20 75 73 65 64 20 74 6f 20 67 6c 6f 62 61 6c 6c 79 20 6d 61 73 6b 20 6f 75 74 20 62 mask.used.to.globally.mask.out.b
17c0 69 6e 64 69 6e 67 73 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e indings...........///.</summary>
17e0 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 ..........///.<remarks>.........
1800 20 2f 2f 2f 20 54 68 69 73 20 69 73 20 65 6d 70 74 79 20 62 79 20 64 65 66 61 75 6c 74 2e 0d 0a .///.This.is.empty.by.default...
1820 20 20 20 20 20 20 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 54 68 65 20 62 69 6e ........///..........///.The.bin
1840 64 69 6e 67 73 20 6f 66 20 65 61 63 68 20 6d 61 70 20 77 69 6c 6c 20 62 65 20 3c 73 65 65 20 63 dings.of.each.map.will.be.<see.c
1860 72 65 66 3d 22 49 6e 70 75 74 42 69 6e 64 69 6e 67 2e 4d 61 74 63 68 65 73 22 3e 6d 61 74 63 68 ref="InputBinding.Matches">match
1880 65 64 3c 2f 73 65 65 3e 20 61 67 61 69 6e 73 74 20 74 68 69 73 0d 0a 20 20 20 20 20 20 20 20 2f ed</see>.against.this........../
18a0 2f 2f 20 62 69 6e 64 69 6e 67 2e 20 41 6e 79 20 62 69 6e 64 69 6e 67 73 20 74 68 61 74 20 64 6f //.binding..Any.bindings.that.do
18c0 6e 27 74 20 6d 61 74 63 68 20 77 69 6c 6c 20 67 65 74 20 73 6b 69 70 70 65 64 20 61 6e 64 20 6e n't.match.will.get.skipped.and.n
18e0 6f 74 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 63 6f 6e 74 72 6f 6c 73 2e 0d 0a 20 20 20 20 20 20 ot.resolved.to.controls.........
1900 20 20 2f 2f 2f 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 4e 6f 74 65 20 74 68 61 74 20 72 65 67 ..///..........///.Note.that.reg
1920 61 72 64 6c 65 73 73 20 6f 66 20 77 68 65 74 68 65 72 20 61 20 62 69 6e 64 69 6e 67 20 77 69 6c ardless.of.whether.a.binding.wil
1940 6c 20 62 65 20 72 65 73 6f 6c 76 65 64 20 74 6f 20 63 6f 6e 74 72 6f 6c 73 20 6f 72 20 6e 6f 74 l.be.resolved.to.controls.or.not
1960 2c 20 69 74 20 77 69 6c 6c 20 67 65 74 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 61 6e 20 65 6e ,.it.will.get..........///.an.en
1980 74 72 79 20 69 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 65 6d 6f 72 79 22 2f 3e 2e 20 4f 74 68 try.in.<see.cref="memory"/>..Oth
19a0 65 72 77 69 73 65 20 77 65 20 77 6f 75 6c 64 20 68 61 76 65 20 74 6f 20 68 61 76 65 20 61 20 6d erwise.we.would.have.to.have.a.m
19c0 6f 72 65 20 63 6f 6d 70 6c 69 63 61 74 65 64 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 6d 61 70 ore.complicated..........///.map
19e0 70 69 6e 67 20 66 72 6f 6d 20 3c 73 65 65 20 63 72 65 66 3d 22 49 6e 70 75 74 41 63 74 69 6f 6e ping.from.<see.cref="InputAction
1a00 4d 61 70 2e 62 69 6e 64 69 6e 67 73 22 2f 3e 20 74 6f 20 61 20 62 69 6e 64 69 6e 67 20 73 74 61 Map.bindings"/>.to.a.binding.sta
1a20 74 65 20 69 6e 20 3c 73 65 65 20 63 72 65 66 3d 22 6d 65 6d 6f 72 79 22 2f 3e 2e 0d 0a 20 20 20 te.in.<see.cref="memory"/>......
1a40 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 .....///.</remarks>..........pub
1a60 6c 69 63 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 3f 20 62 69 6e 64 69 6e 67 4d 61 73 6b 3b 0d 0a lic.InputBinding?.bindingMask;..
1a80 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 4c 69 73 74 3c 4e 61 6d 65 41 6e 64 50 61 ..........private.List<NameAndPa
1aa0 72 61 6d 65 74 65 72 73 3e 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 3b 0d 0a 0d 0a 20 20 20 20 20 rameters>.m_Parameters;.........
1ac0 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 52 65 ...///.<summary>..........///.Re
1ae0 6c 65 61 73 65 20 6e 61 74 69 76 65 20 6d 65 6d 6f 72 79 20 68 65 6c 64 20 62 79 20 74 68 65 20 lease.native.memory.held.by.the.
1b00 72 65 73 6f 6c 76 65 72 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 resolver...........///.</summary
1b20 3e 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 44 69 73 70 6f 73 65 28 29 >..........public.void.Dispose()
1b40 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 6d 6f 72 79 2e ..........{..............memory.
1b60 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 Dispose();..........}...........
1b80 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 53 74 65 61 .///.<summary>..........///.Stea
1ba0 6c 20 74 68 65 20 61 6c 72 65 61 64 79 20 61 6c 6c 6f 63 61 74 65 64 20 61 72 72 61 79 73 20 66 l.the.already.allocated.arrays.f
1bc0 72 6f 6d 20 74 68 65 20 67 69 76 65 6e 20 73 74 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 2f 2f rom.the.given.state...........//
1be0 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d /.</summary>..........///.<param
1c00 20 6e 61 6d 65 3d 22 73 74 61 74 65 22 3e 41 63 74 69 6f 6e 20 6d 61 70 20 73 74 61 74 65 20 74 .name="state">Action.map.state.t
1c20 68 61 74 20 77 61 73 20 70 72 65 76 69 6f 75 73 6c 79 20 63 72 65 61 74 65 64 2e 3c 2f 70 61 72 hat.was.previously.created.</par
1c40 61 6d 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 am>..........///.<remarks>......
1c60 20 20 20 20 2f 2f 2f 20 54 68 69 73 20 69 73 20 75 73 65 66 75 6c 20 74 6f 20 61 76 6f 69 64 20 ....///.This.is.useful.to.avoid.
1c80 61 6c 6c 6f 63 61 74 69 6e 67 20 6e 65 77 20 61 72 72 61 79 73 20 66 72 6f 6d 20 73 63 72 61 74 allocating.new.arrays.from.scrat
1ca0 63 68 20 77 68 65 6e 20 72 65 2d 72 65 73 6f 6c 76 69 6e 67 20 62 69 6e 64 69 6e 67 73 2e 0d 0a ch.when.re-resolving.bindings...
1cc0 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 ........///.</remarks>..........
1ce0 70 75 62 6c 69 63 20 76 6f 69 64 20 53 74 61 72 74 57 69 74 68 41 72 72 61 79 73 46 72 6f 6d 28 public.void.StartWithArraysFrom(
1d00 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 20 73 74 61 74 65 29 0d 0a 20 20 20 20 20 20 20 InputActionState.state).........
1d20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 73 74 61 .{..............Debug.Assert(sta
1d40 74 65 20 21 3d 20 6e 75 6c 6c 2c 20 22 52 65 63 65 69 76 65 64 20 6e 75 6c 6c 20 73 74 61 74 65 te.!=.null,."Received.null.state
1d60 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 73 20 3d 20 73 74 61 74 65 2e ");................maps.=.state.
1d80 6d 61 70 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 20 maps;..............interactions.
1da0 3d 20 73 74 61 74 65 2e 69 6e 74 65 72 61 63 74 69 6f 6e 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 =.state.interactions;...........
1dc0 20 20 20 70 72 6f 63 65 73 73 6f 72 73 20 3d 20 73 74 61 74 65 2e 70 72 6f 63 65 73 73 6f 72 73 ...processors.=.state.processors
1de0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 6f 73 69 74 65 73 20 3d 20 73 74 61 74 ;..............composites.=.stat
1e00 65 2e 63 6f 6d 70 6f 73 69 74 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 72 e.composites;..............contr
1e20 6f 6c 73 20 3d 20 73 74 61 74 65 2e 63 6f 6e 74 72 6f 6c 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ols.=.state.controls;...........
1e40 20 20 20 20 20 2f 2f 20 43 6c 65 61 72 20 74 68 65 20 61 72 72 61 79 73 20 73 6f 20 74 68 61 74 .....//.Clear.the.arrays.so.that
1e60 20 77 65 20 64 6f 6e 27 74 20 6c 65 61 76 65 20 72 65 66 65 72 65 6e 63 65 73 20 61 72 6f 75 6e .we.don't.leave.references.aroun
1e80 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 61 70 73 20 21 3d 20 6e 75 6c 6c d...............if.(maps.!=.null
1ea0 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 61 72 28 6d )..................Array.Clear(m
1ec0 61 70 73 2c 20 30 2c 20 73 74 61 74 65 2e 74 6f 74 61 6c 4d 61 70 43 6f 75 6e 74 29 3b 0d 0a 20 aps,.0,.state.totalMapCount);...
1ee0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 74 65 72 61 63 74 69 6f 6e 73 20 21 3d 20 6e ...........if.(interactions.!=.n
1f00 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 61 ull)..................Array.Clea
1f20 72 28 69 6e 74 65 72 61 63 74 69 6f 6e 73 2c 20 30 2c 20 73 74 61 74 65 2e 74 6f 74 61 6c 49 6e r(interactions,.0,.state.totalIn
1f40 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 teractionCount);..............if
1f60 20 28 70 72 6f 63 65 73 73 6f 72 73 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 .(processors.!=.null)...........
1f80 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 61 72 28 70 72 6f 63 65 73 73 6f 72 73 2c 20 30 .......Array.Clear(processors,.0
1fa0 2c 20 73 74 61 74 65 2e 74 6f 74 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 29 3b 0d 0a 20 ,.state.totalProcessorCount);...
1fc0 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6d 70 6f 73 69 74 65 73 20 21 3d 20 6e 75 6c ...........if.(composites.!=.nul
1fe0 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 2e 43 6c 65 61 72 28 l)..................Array.Clear(
2000 63 6f 6d 70 6f 73 69 74 65 73 2c 20 30 2c 20 73 74 61 74 65 2e 74 6f 74 61 6c 43 6f 6d 70 6f 73 composites,.0,.state.totalCompos
2020 69 74 65 43 6f 75 6e 74 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 63 6f 6e 74 iteCount);..............if.(cont
2040 72 6f 6c 73 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 rols.!=.null)..................A
2060 72 72 61 79 2e 43 6c 65 61 72 28 63 6f 6e 74 72 6f 6c 73 2c 20 30 2c 20 73 74 61 74 65 2e 74 6f rray.Clear(controls,.0,.state.to
2080 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 talControlCount);...............
20a0 20 2f 2f 20 4e 75 6c 6c 20 6f 75 74 20 74 68 65 20 61 72 72 61 79 73 20 6f 6e 20 74 68 65 20 73 .//.Null.out.the.arrays.on.the.s
20c0 74 61 74 65 20 73 6f 20 74 68 61 74 20 74 68 65 72 65 20 69 73 20 6e 6f 20 73 74 72 61 6e 67 65 tate.so.that.there.is.no.strange
20e0 20 62 75 67 73 20 77 69 74 68 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 68 65 20 73 .bugs.with..............//.the.s
2100 74 61 74 65 20 72 65 61 64 69 6e 67 20 66 72 6f 6d 20 61 72 72 61 79 73 20 74 68 61 74 20 6e 6f tate.reading.from.arrays.that.no
2120 20 6c 6f 6e 67 65 72 20 62 65 6c 6f 6e 67 20 74 6f 20 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 .longer.belong.to.it............
2140 20 20 20 73 74 61 74 65 2e 6d 61 70 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 ...state.maps.=.null;...........
2160 20 20 20 73 74 61 74 65 2e 69 6e 74 65 72 61 63 74 69 6f 6e 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 ...state.interactions.=.null;...
2180 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 70 72 6f 63 65 73 73 6f 72 73 20 3d 20 6e 75 ...........state.processors.=.nu
21a0 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 63 6f 6d 70 6f 73 69 74 65 ll;..............state.composite
21c0 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 74 61 74 65 2e 63 6f 6e s.=.null;..............state.con
21e0 74 72 6f 6c 73 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 trols.=.null;..........}........
2200 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 52 ....///.<summary>..........///.R
2220 65 73 6f 6c 76 65 20 61 6e 64 20 61 64 64 20 61 6c 6c 20 62 69 6e 64 69 6e 67 73 20 61 6e 64 20 esolve.and.add.all.bindings.and.
2240 61 63 74 69 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 67 69 76 65 6e 20 6d 61 70 2e 0d 0a 20 20 20 actions.from.the.given.map......
2260 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f .....///.</summary>..........///
2280 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 6d 61 70 22 3e 3c 2f 70 61 72 61 6d 3e 0d 0a 20 20 20 .<param.name="map"></param>.....
22a0 20 20 20 20 20 2f 2f 2f 20 3c 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 .....///.<remarks>..........///.
22c0 54 68 69 73 20 69 73 20 77 68 65 72 65 20 61 6c 6c 20 62 69 6e 64 69 6e 67 20 72 65 73 6f 6c 75 This.is.where.all.binding.resolu
22e0 74 69 6f 6e 20 68 61 70 70 65 6e 73 20 66 6f 72 20 61 63 74 69 6f 6e 73 2e 20 54 68 65 20 6d 65 tion.happens.for.actions..The.me
2300 74 68 6f 64 20 77 61 6c 6b 73 20 74 68 72 6f 75 67 68 20 74 68 65 20 62 69 6e 64 69 6e 67 20 61 thod.walks.through.the.binding.a
2320 72 72 61 79 0d 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 69 6e 20 3c 70 61 72 61 6d 72 65 66 20 6e rray..........///.in.<paramref.n
2340 61 6d 65 3d 22 6d 61 70 22 2f 3e 20 61 6e 64 20 61 64 64 73 20 61 6e 79 20 63 6f 6e 74 72 6f 6c ame="map"/>.and.adds.any.control
2360 73 2c 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 2c 20 70 72 6f 63 65 73 73 6f 72 73 2c 20 61 6e 64 s,.interactions,.processors,.and
2380 20 63 6f 6d 70 6f 73 69 74 65 73 20 61 73 20 69 74 20 67 6f 65 73 2e 0d 0a 20 20 20 20 20 20 20 .composites.as.it.goes..........
23a0 20 2f 2f 2f 20 3c 2f 72 65 6d 61 72 6b 73 3e 0d 0a 20 20 20 20 20 20 20 20 5b 53 79 73 74 65 6d .///.</remarks>..........[System
23c0 2e 44 69 61 67 6e 6f 73 74 69 63 73 2e 43 6f 64 65 41 6e 61 6c 79 73 69 73 2e 53 75 70 70 72 65 .Diagnostics.CodeAnalysis.Suppre
23e0 73 73 4d 65 73 73 61 67 65 28 22 4d 69 63 72 6f 73 6f 66 74 2e 50 65 72 66 6f 72 6d 61 6e 63 65 ssMessage("Microsoft.Performance
2400 22 2c 20 22 43 41 31 38 30 39 3a 41 76 6f 69 64 45 78 63 65 73 73 69 76 65 4c 6f 63 61 6c 73 22 ",."CA1809:AvoidExcessiveLocals"
2420 2c 20 4a 75 73 74 69 66 69 63 61 74 69 6f 6e 20 3d 20 22 54 4f 44 4f 3a 20 52 65 66 61 63 74 6f ,.Justification.=."TODO:.Refacto
2440 72 20 6c 61 74 65 72 2e 22 29 5d 0d 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 75 6e 73 61 r.later.")]..........public.unsa
2460 66 65 20 76 6f 69 64 20 41 64 64 41 63 74 69 6f 6e 4d 61 70 28 49 6e 70 75 74 41 63 74 69 6f 6e fe.void.AddActionMap(InputAction
2480 4d 61 70 20 6d 61 70 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 Map.map)..........{.............
24a0 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 6d 61 70 20 21 3d 20 6e 75 6c 6c 2c 20 22 52 65 63 65 .Debug.Assert(map.!=.null,."Rece
24c0 69 76 65 64 20 6e 75 6c 6c 20 6d 61 70 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ived.null.map");................
24e0 76 61 72 20 61 63 74 69 6f 6e 73 49 6e 54 68 69 73 4d 61 70 20 3d 20 6d 61 70 2e 6d 5f 41 63 74 var.actionsInThisMap.=.map.m_Act
2500 69 6f 6e 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 73 49 ions;..............var.bindingsI
2520 6e 54 68 69 73 4d 61 70 20 3d 20 6d 61 70 2e 6d 5f 42 69 6e 64 69 6e 67 73 3b 0d 0a 20 20 20 20 nThisMap.=.map.m_Bindings;......
2540 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 ........var.bindingCountInThisMa
2560 70 20 3d 20 62 69 6e 64 69 6e 67 73 49 6e 54 68 69 73 4d 61 70 3f 2e 4c 65 6e 67 74 68 20 3f 3f p.=.bindingsInThisMap?.Length.??
2580 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 43 6f 75 6e 74 .0;..............var.actionCount
25a0 49 6e 54 68 69 73 4d 61 70 20 3d 20 61 63 74 69 6f 6e 73 49 6e 54 68 69 73 4d 61 70 3f 2e 4c 65 InThisMap.=.actionsInThisMap?.Le
25c0 6e 67 74 68 20 3f 3f 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 61 70 49 ngth.??.0;..............var.mapI
25e0 6e 64 65 78 20 3d 20 74 6f 74 61 6c 4d 61 70 43 6f 75 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 ndex.=.totalMapCount;...........
2600 20 20 20 20 20 2f 2f 20 4b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 69 6e 64 69 63 65 73 20 66 6f .....//.Keep.track.of.indices.fo
2620 72 20 74 68 69 73 20 6d 61 70 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 63 74 r.this.map...............var.act
2640 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 3d 20 74 6f 74 61 6c 41 63 74 69 6f 6e 43 6f 75 6e 74 ionStartIndex.=.totalActionCount
2660 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 53 74 61 72 74 49 ;..............var.bindingStartI
2680 6e 64 65 78 20 3d 20 74 6f 74 61 6c 42 69 6e 64 69 6e 67 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 ndex.=.totalBindingCount;.......
26a0 20 20 20 20 20 20 20 76 61 72 20 63 6f 6e 74 72 6f 6c 53 74 61 72 74 49 6e 64 65 78 20 3d 20 74 .......var.controlStartIndex.=.t
26c0 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 otalControlCount;..............v
26e0 61 72 20 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 3d 20 74 6f 74 61 6c ar.interactionStartIndex.=.total
2700 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 InteractionCount;..............v
2720 61 72 20 70 72 6f 63 65 73 73 6f 72 53 74 61 72 74 49 6e 64 65 78 20 3d 20 74 6f 74 61 6c 50 72 ar.processorStartIndex.=.totalPr
2740 6f 63 65 73 73 6f 72 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 ocessorCount;..............var.c
2760 6f 6d 70 6f 73 69 74 65 53 74 61 72 74 49 6e 64 65 78 20 3d 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 ompositeStartIndex.=.totalCompos
2780 69 74 65 43 6f 75 6e 74 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 6c 6c 6f iteCount;................//.Allo
27a0 63 61 74 65 20 61 6e 20 69 6e 69 74 69 61 6c 20 62 6c 6f 63 6b 20 6f 66 20 6d 65 6d 6f 72 79 2e cate.an.initial.block.of.memory.
27c0 20 57 65 20 70 72 6f 62 61 62 6c 79 20 77 69 6c 6c 20 68 61 76 65 20 74 6f 20 72 65 2d 61 6c 6c .We.probably.will.have.to.re-all
27e0 6f 63 61 74 65 20 6f 6e 63 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 61 74 20 74 68 ocate.once..............//.at.th
2800 65 20 65 6e 64 20 74 6f 20 61 63 63 6f 6d 6d 6f 64 61 74 65 20 69 6e 74 65 72 61 63 74 69 6f 6e e.end.to.accommodate.interaction
2820 73 20 61 6e 64 20 63 6f 6e 74 72 6f 6c 73 20 61 64 64 65 64 20 66 72 6f 6d 20 74 68 65 20 6d 61 s.and.controls.added.from.the.ma
2840 70 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 65 77 4d 65 6d 6f 72 79 20 3d 20 p...............var.newMemory.=.
2860 6e 65 77 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 55 6e 6d 61 6e 61 67 65 64 4d 65 new.InputActionState.UnmanagedMe
2880 6d 6f 72 79 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 41 mory();..............newMemory.A
28a0 6c 6c 6f 63 61 74 65 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 43 6f 75 llocate(..................mapCou
28c0 6e 74 3a 20 74 6f 74 61 6c 4d 61 70 43 6f 75 6e 74 20 2b 20 31 2c 0d 0a 20 20 20 20 20 20 20 20 nt:.totalMapCount.+.1,..........
28e0 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 43 6f 75 6e 74 3a 20 74 6f 74 61 6c 41 63 74 69 6f 6e ........actionCount:.totalAction
2900 43 6f 75 6e 74 20 2b 20 61 63 74 69 6f 6e 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 70 2c 0d 0a 20 Count.+.actionCountInThisMap,...
2920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 3a 20 74 6f 74 ...............bindingCount:.tot
2940 61 6c 42 69 6e 64 69 6e 67 43 6f 75 6e 74 20 2b 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 49 6e 54 alBindingCount.+.bindingCountInT
2960 68 69 73 4d 61 70 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 72 hisMap,..................//.We.r
2980 65 61 6c 6c 6f 63 61 74 65 20 66 6f 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 6f 6e 63 65 eallocate.for.the.following.once
29a0 20 77 65 20 6b 6e 6f 77 20 74 68 65 20 66 69 6e 61 6c 20 63 6f 75 6e 74 2e 0d 0a 20 20 20 20 20 .we.know.the.final.count........
29c0 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 3a 20 74 6f 74 ...........interactionCount:.tot
29e0 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 alInteractionCount,.............
2a00 20 20 20 20 20 63 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 3a 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 .....compositeCount:.totalCompos
2a20 69 74 65 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 72 iteCount,..................contr
2a40 6f 6c 43 6f 75 6e 74 3a 20 74 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 29 3b 0d 0a 20 20 olCount:.totalControlCount);....
2a60 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 65 6d 6f 72 79 2e 69 73 41 6c 6c 6f 63 61 74 65 64 ..........if.(memory.isAllocated
2a80 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 43 6f 70 )..................newMemory.Cop
2aa0 79 44 61 74 61 46 72 6f 6d 28 6d 65 6d 6f 72 79 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 yDataFrom(memory);..............
2ac0 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 6d 61 6b 65 20 73 75 72 65 20 63 6f 6d 70 6f 73 69 74 65 20 ..////TODO:.make.sure.composite.
2ae0 6f 62 6a 65 63 74 73 20 67 65 74 20 61 6c 6c 20 74 68 65 20 62 69 6e 64 69 6e 67 73 20 74 68 65 objects.get.all.the.bindings.the
2b00 79 20 6e 65 65 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 68 61 y.need..............////TODO:.ha
2b20 6e 64 6c 65 20 63 61 73 65 20 77 68 65 72 65 20 77 65 20 68 61 76 65 20 62 69 6e 64 69 6e 67 73 ndle.case.where.we.have.bindings
2b40 20 72 65 73 6f 6c 76 69 6e 67 20 74 6f 20 74 68 65 20 73 61 6d 65 20 63 6f 6e 74 72 6f 6c 0d 0a .resolving.to.the.same.control..
2b60 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 20 20 20 20 20 20 28 6e 6f 74 20 73 6f 20 63 6c ............////......(not.so.cl
2b80 65 61 72 20 63 75 74 20 77 68 61 74 20 74 6f 20 64 6f 20 74 68 65 72 65 3b 20 65 61 63 68 20 62 ear.cut.what.to.do.there;.each.b
2ba0 69 6e 64 69 6e 67 20 6d 61 79 20 68 61 76 65 20 61 20 64 69 66 66 65 72 65 6e 74 20 69 6e 74 65 inding.may.have.a.different.inte
2bc0 72 61 63 74 69 6f 6e 20 73 65 74 75 70 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 29 0d 0a 20 20 20 raction.setup,.for.example).....
2be0 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e .........var.currentCompositeBin
2c00 64 69 6e 67 49 6e 64 65 78 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e dingIndex.=.InputActionState.kIn
2c20 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 validIndex;..............var.cur
2c40 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 49 6e 64 65 78 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e rentCompositeIndex.=.InputAction
2c60 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 State.kInvalidIndex;............
2c80 20 20 76 61 72 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 43 6f 75 6e 74 20 ..var.currentCompositePartCount.
2ca0 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 75 72 72 65 6e 74 43 6f 6d =.0;..............var.currentCom
2cc0 70 6f 73 69 74 65 41 63 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 20 3d 20 49 6e 70 75 74 41 63 positeActionIndexInMap.=.InputAc
2ce0 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 tionState.kInvalidIndex;........
2d00 20 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 ......InputAction.currentComposi
2d20 74 65 41 63 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 teAction.=.null;..............va
2d40 72 20 62 69 6e 64 69 6e 67 4d 61 73 6b 4f 6e 54 68 69 73 4d 61 70 20 3d 20 6d 61 70 2e 6d 5f 42 r.bindingMaskOnThisMap.=.map.m_B
2d60 69 6e 64 69 6e 67 4d 61 73 6b 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 64 65 76 indingMask;..............var.dev
2d80 69 63 65 73 46 6f 72 54 68 69 73 4d 61 70 20 3d 20 6d 61 70 2e 64 65 76 69 63 65 73 3b 0d 0a 0d icesForThisMap.=.map.devices;...
2da0 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 61 6e 27 74 20 75 73 65 20 60 75 73 69 6e 67 .............//.Can't.use.`using
2dc0 60 20 61 73 20 77 65 20 6e 65 65 64 20 74 6f 20 75 73 65 20 69 74 20 77 69 74 68 20 60 72 65 66 `.as.we.need.to.use.it.with.`ref
2de0 60 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 72 65 73 6f 6c 76 65 64 43 6f 6e 74 `...............var.resolvedCont
2e00 72 6f 6c 73 20 3d 20 6e 65 77 20 49 6e 70 75 74 43 6f 6e 74 72 6f 6c 4c 69 73 74 3c 49 6e 70 75 rols.=.new.InputControlList<Inpu
2e20 74 43 6f 6e 74 72 6f 6c 3e 28 41 6c 6c 6f 63 61 74 6f 72 2e 54 65 6d 70 29 3b 0d 0a 0d 0a 20 20 tControl>(Allocator.Temp);......
2e40 20 20 20 20 20 20 20 20 20 20 2f 2f 20 57 65 20 67 61 74 68 65 72 20 61 6c 6c 20 63 6f 6e 74 72 ..........//.We.gather.all.contr
2e60 6f 6c 73 20 69 6e 20 74 65 6d 70 6f 72 61 72 79 20 6d 65 6d 6f 72 79 20 61 6e 64 20 74 68 65 6e ols.in.temporary.memory.and.then
2e80 20 6d 6f 76 65 20 74 68 65 6d 20 6f 76 65 72 20 69 6e 74 6f 20 6e 65 77 4d 65 6d 6f 72 79 20 6f .move.them.over.into.newMemory.o
2ea0 6e 63 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 27 72 65 20 64 6f 6e 65 20 72 nce..............//.we're.done.r
2ec0 65 73 6f 6c 76 69 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 74 72 79 0d 0a 20 20 20 20 esolving...............try......
2ee0 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 ........{..................for.(
2f00 76 61 72 20 6e 20 3d 20 30 3b 20 6e 20 3c 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 49 6e 54 68 69 var.n.=.0;.n.<.bindingCountInThi
2f20 73 4d 61 70 3b 20 2b 2b 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 sMap;.++n)..................{...
2f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 53 74 ...................var.bindingSt
2f60 61 74 65 73 50 74 72 20 3d 20 6e 65 77 4d 65 6d 6f 72 79 2e 62 69 6e 64 69 6e 67 53 74 61 74 65 atesPtr.=.newMemory.bindingState
2f80 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 66 20 76 61 72 20 s;......................ref.var.
2fa0 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 20 3d 20 72 65 66 20 62 69 6e 64 69 6e 67 73 unresolvedBinding.=.ref.bindings
2fc0 49 6e 54 68 69 73 4d 61 70 5b 6e 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 InThisMap[n];...................
2fe0 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 49 6e 64 65 78 20 3d 20 62 69 6e 64 69 6e 67 53 74 61 ...var.bindingIndex.=.bindingSta
3000 72 74 49 6e 64 65 78 20 2b 20 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rtIndex.+.n;....................
3020 20 20 76 61 72 20 69 73 43 6f 6d 70 6f 73 69 74 65 20 3d 20 75 6e 72 65 73 6f 6c 76 65 64 42 69 ..var.isComposite.=.unresolvedBi
3040 6e 64 69 6e 67 2e 69 73 43 6f 6d 70 6f 73 69 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 nding.isComposite;..............
3060 20 20 20 20 20 20 20 20 76 61 72 20 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 20 3d 20 ........var.isPartOfComposite.=.
3080 21 69 73 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e !isComposite.&&.unresolvedBindin
30a0 67 2e 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 g.isPartOfComposite;............
30c0 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 53 74 61 74 65 20 3d 20 26 62 69 ..........var.bindingState.=.&bi
30e0 6e 64 69 6e 67 53 74 61 74 65 73 50 74 72 5b 62 69 6e 64 69 6e 67 49 6e 64 65 78 5d 3b 0d 0a 0d ndingStatesPtr[bindingIndex];...
3100 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 79 0d 0a 20 20 20 20 20 20 .....................try........
3120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
3140 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 54 4f 44 4f 3a 20 69 66 20 69 74 27 73 20 61 20 63 6f 6d .........////TODO:.if.it's.a.com
3160 70 6f 73 69 74 65 2c 20 63 68 65 63 6b 20 69 66 20 61 6e 79 20 6f 66 20 74 68 65 20 63 68 69 6c posite,.check.if.any.of.the.chil
3180 64 72 65 6e 20 6d 61 74 63 68 65 73 20 6f 75 72 20 62 69 6e 64 69 6e 67 20 6d 61 73 6b 73 20 28 dren.matches.our.binding.masks.(
31a0 69 66 20 61 6e 79 29 20 61 6e 64 20 73 6b 69 70 20 63 6f 6d 70 6f 73 69 74 65 20 69 66 20 6e 6f if.any).and.skip.composite.if.no
31c0 6e 65 20 64 6f 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ne.do...........................
31e0 20 76 61 72 20 66 69 72 73 74 43 6f 6e 74 72 6f 6c 49 6e 64 65 78 20 3d 20 30 3b 20 2f 2f 20 6e .var.firstControlIndex.=.0;.//.n
3200 75 6d 43 6f 6e 74 72 6f 6c 73 20 64 69 63 74 61 74 65 73 20 77 68 65 74 68 65 72 20 74 68 69 73 umControls.dictates.whether.this
3220 20 69 73 20 61 20 76 61 6c 69 64 20 69 6e 64 65 78 20 6f 72 20 6e 6f 74 2e 0d 0a 20 20 20 20 20 .is.a.valid.index.or.not........
3240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69 72 73 74 49 6e 74 65 ...................var.firstInte
3260 72 61 63 74 69 6f 6e 49 6e 64 65 78 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e ractionIndex.=.InputActionState.
3280 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 kInvalidIndex;..................
32a0 20 20 20 20 20 20 20 20 76 61 72 20 66 69 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 20 ........var.firstProcessorIndex.
32c0 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 =.InputActionState.kInvalidIndex
32e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 ;..........................var.a
3300 63 74 69 6f 6e 49 6e 64 65 78 46 6f 72 42 69 6e 64 69 6e 67 20 3d 20 49 6e 70 75 74 41 63 74 69 ctionIndexForBinding.=.InputActi
3320 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 onState.kInvalidIndex;..........
3340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 61 72 74 49 6e 64 65 78 20 3d 20 ................var.partIndex.=.
3360 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d InputActionState.kInvalidIndex;.
3380 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e ...........................var.n
33a0 75 6d 43 6f 6e 74 72 6f 6c 73 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 umControls.=.0;.................
33c0 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 75 6d 49 6e 74 65 72 61 63 74 69 6f 6e 73 20 3d 20 30 .........var.numInteractions.=.0
33e0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e ;..........................var.n
3400 75 6d 50 72 6f 63 65 73 73 6f 72 73 20 3d 20 30 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 umProcessors.=.0;...............
3420 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 74 68 61 74 20 69 .............//.Make.sure.that.i
3440 66 20 69 74 27 73 20 70 61 72 74 20 6f 66 20 61 20 63 6f 6d 70 6f 73 69 74 65 2c 20 77 65 20 61 f.it's.part.of.a.composite,.we.a
3460 72 65 20 61 63 74 75 61 6c 6c 79 20 70 61 72 74 20 6f 66 20 61 20 63 6f 6d 70 6f 73 69 74 65 2e re.actually.part.of.a.composite.
3480 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 73 ..........................if.(is
34a0 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 PartOfComposite.&&.currentCompos
34c0 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 20 3d 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 iteBindingIndex.==.InputActionSt
34e0 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ate.kInvalidIndex)..............
3500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 ................throw.new.Invali
3520 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 20 dOperationException(............
3540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 42 69 6e 64 69 6e 67 20 ......................$"Binding.
3560 27 7b 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 7d 27 20 69 73 20 6d 61 72 6b 65 64 20 '{unresolvedBinding}'.is.marked.
3580 61 73 20 62 65 69 6e 67 20 70 61 72 74 20 6f 66 20 61 20 63 6f 6d 70 6f 73 69 74 65 20 62 75 74 as.being.part.of.a.composite.but
35a0 20 74 68 65 20 70 72 65 63 65 64 69 6e 67 20 62 69 6e 64 69 6e 67 20 69 73 20 6e 6f 74 20 61 20 .the.preceding.binding.is.not.a.
35c0 63 6f 6d 70 6f 73 69 74 65 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 composite");....................
35e0 20 20 20 20 20 20 20 20 2f 2f 20 54 72 79 20 74 6f 20 66 69 6e 64 20 61 63 74 69 6f 6e 2e 0d 0a ........//.Try.to.find.action...
3600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 0d 0a 20 20 20 20 ........................//......
3620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 57 65 20 ....................//.NOTE:.We.
3640 69 67 6e 6f 72 65 20 61 63 74 69 6f 6e 73 20 6f 6e 20 62 69 6e 64 69 6e 67 73 20 74 68 61 74 20 ignore.actions.on.bindings.that.
3660 61 72 65 20 70 61 72 74 20 6f 66 20 63 6f 6d 70 6f 73 69 74 65 73 2e 20 57 65 20 6f 6e 6c 79 20 are.part.of.composites..We.only.
3680 61 6c 6c 6f 77 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f allow........................../
36a0 2f 20 20 20 20 20 20 20 61 63 74 69 6f 6e 73 20 74 6f 20 62 65 20 74 72 69 67 67 65 72 65 64 20 /.......actions.to.be.triggered.
36c0 66 72 6f 6d 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 20 69 74 73 65 6c 66 2e 0d 0a 20 20 20 20 from.the.composite.itself.......
36e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 49 6e ....................var.actionIn
3700 64 65 78 49 6e 4d 61 70 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 dexInMap.=.InputActionState.kInv
3720 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 alidIndex;......................
3740 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 4e 61 6d 65 20 3d 20 75 6e 72 65 73 6f 6c 76 65 64 42 ....var.actionName.=.unresolvedB
3760 69 6e 64 69 6e 67 2e 61 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 inding.action;..................
3780 20 20 20 20 20 20 20 20 49 6e 70 75 74 41 63 74 69 6f 6e 20 61 63 74 69 6f 6e 20 3d 20 6e 75 6c ........InputAction.action.=.nul
37a0 6c 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 l;..........................if.(
37c0 21 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 !isPartOfComposite).............
37e0 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............{..................
3800 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 74 72 69 6e 67 2e 49 73 4e 75 6c 6c 4f 72 ............if.(!string.IsNullOr
3820 45 6d 70 74 79 28 61 63 74 69 6f 6e 4e 61 6d 65 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 Empty(actionName))..............
3840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................{...............
3860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 73 ...................////REVIEW:.s
3880 68 6f 75 6c 64 20 77 65 20 66 61 69 6c 20 68 65 72 65 20 69 66 20 77 65 20 64 6f 6e 27 74 20 6d hould.we.fail.here.if.we.don't.m
38a0 61 6e 61 67 65 20 74 6f 20 66 69 6e 64 20 74 68 65 20 61 63 74 69 6f 6e 0d 0a 20 20 20 20 20 20 anage.to.find.the.action........
38c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e ..........................action
38e0 49 6e 64 65 78 49 6e 4d 61 70 20 3d 20 6d 61 70 2e 46 69 6e 64 41 63 74 69 6f 6e 49 6e 64 65 78 IndexInMap.=.map.FindActionIndex
3900 28 61 63 74 69 6f 6e 4e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (actionName);...................
3920 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........}....................
3940 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 20 69 66 20 28 6d 61 70 2e 6d 5f 53 69 6e 67 6c 65 74 ..........else.if.(map.m_Singlet
3960 6f 6e 41 63 74 69 6f 6e 20 21 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 onAction.!=.null)...............
3980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...............{................
39a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 70 65 63 69 61 6c 2d 63 61 73 ..................//.Special-cas
39c0 65 20 66 6f 72 20 73 69 6e 67 6c 65 74 6f 6e 20 61 63 74 69 6f 6e 73 20 74 68 61 74 20 64 6f 6e e.for.singleton.actions.that.don
39e0 27 74 20 68 61 76 65 20 6e 61 6d 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 't.have.names...................
3a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 ................actionIndexInMap
3a20 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .=.0;...........................
3a40 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...}............................
3a60 20 20 20 20 69 66 20 28 61 63 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 20 21 3d 20 49 6e 70 75 ....if.(actionIndexInMap.!=.Inpu
3a80 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 tActionState.kInvalidIndex).....
3aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 .............................act
3ac0 69 6f 6e 20 3d 20 61 63 74 69 6f 6e 73 49 6e 54 68 69 73 4d 61 70 5b 61 63 74 69 6f 6e 49 6e 64 ion.=.actionsInThisMap[actionInd
3ae0 65 78 49 6e 4d 61 70 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 exInMap];.......................
3b00 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c ...}..........................el
3b20 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 se..........................{...
3b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f ...........................actio
3b60 6e 49 6e 64 65 78 49 6e 4d 61 70 20 3d 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 41 63 nIndexInMap.=.currentCompositeAc
3b80 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tionIndexInMap;.................
3ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 20 3d 20 63 75 72 72 65 6e 74 43 6f 6d .............action.=.currentCom
3bc0 70 6f 73 69 74 65 41 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 positeAction;...................
3be0 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......}........................
3c00 20 20 20 20 2f 2f 20 49 66 20 69 74 27 73 20 61 20 63 6f 6d 70 6f 73 69 74 65 2c 20 73 74 61 72 ....//.If.it's.a.composite,.star
3c20 74 20 61 20 63 68 61 69 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.a.chain.......................
3c40 20 20 20 20 69 66 20 28 69 73 43 6f 6d 70 6f 73 69 74 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 ....if.(isComposite)............
3c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
3c80 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e .............currentCompositeBin
3ca0 64 69 6e 67 49 6e 64 65 78 20 3d 20 62 69 6e 64 69 6e 67 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 dingIndex.=.bindingIndex;.......
3cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f .......................currentCo
3ce0 6d 70 6f 73 69 74 65 41 63 74 69 6f 6e 20 3d 20 61 63 74 69 6f 6e 3b 0d 0a 20 20 20 20 20 20 20 mpositeAction.=.action;.........
3d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 .....................currentComp
3d20 6f 73 69 74 65 41 63 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 20 3d 20 61 63 74 69 6f 6e 49 6e ositeActionIndexInMap.=.actionIn
3d40 64 65 78 49 6e 4d 61 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dexInMap;.......................
3d60 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...}............................
3d80 2f 2f 20 44 65 74 65 72 6d 69 6e 65 20 69 66 20 74 68 65 20 62 69 6e 64 69 6e 67 20 69 73 20 64 //.Determine.if.the.binding.is.d
3da0 69 73 61 62 6c 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 isabled.........................
3dc0 20 20 2f 2f 20 44 69 73 61 62 6c 65 64 20 69 66 20 70 61 74 68 20 69 73 20 65 6d 70 74 79 2e 0d ..//.Disabled.if.path.is.empty..
3de0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 70 61 74 .........................var.pat
3e00 68 20 3d 20 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 2e 65 66 66 65 63 74 69 76 65 50 h.=.unresolvedBinding.effectiveP
3e20 61 74 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 ath;..........................va
3e40 72 20 62 69 6e 64 69 6e 67 49 73 44 69 73 61 62 6c 65 64 20 3d 20 73 74 72 69 6e 67 2e 49 73 4e r.bindingIsDisabled.=.string.IsN
3e60 75 6c 6c 4f 72 45 6d 70 74 79 28 70 61 74 68 29 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ullOrEmpty(path)................
3e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 6c 73 6f 2c 20 69 66 20 77 65 20 63 ................//.Also,.if.we.c
3ea0 61 6e 27 74 20 66 69 6e 64 20 74 68 65 20 61 63 74 69 6f 6e 20 74 6f 20 74 72 69 67 67 65 72 20 an't.find.the.action.to.trigger.
3ec0 66 6f 72 20 74 68 65 20 62 69 6e 64 69 6e 67 2c 20 77 65 20 6a 75 73 74 20 67 6f 20 61 6e 64 20 for.the.binding,.we.just.go.and.
3ee0 64 69 73 61 62 6c 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 disable.........................
3f00 20 20 20 20 20 2f 2f 20 74 68 65 20 62 69 6e 64 69 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 .....//.the.binding.............
3f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 7c 20 61 63 74 69 6f 6e 20 3d 3d 20 6e ..................||.action.==.n
3f40 75 6c 6c 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ull.............................
3f60 20 20 20 2f 2f 20 41 6c 73 6f 2c 20 64 69 73 61 62 6c 65 64 20 69 66 20 62 69 6e 64 69 6e 67 20 ...//.Also,.disabled.if.binding.
3f80 64 6f 65 73 6e 27 74 20 6d 61 74 63 68 20 77 69 74 68 20 6f 75 72 20 62 69 6e 64 69 6e 67 20 6d doesn't.match.with.our.binding.m
3fa0 61 73 6b 20 28 6d 69 67 68 74 20 62 65 20 65 6d 70 74 79 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 ask.(might.be.empty)............
3fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 7c 20 28 21 69 73 43 6f 6d 70 6f 73 ...................||.(!isCompos
3fe0 69 74 65 20 26 26 20 62 69 6e 64 69 6e 67 4d 61 73 6b 20 21 3d 20 6e 75 6c 6c 20 26 26 0d 0a 20 ite.&&.bindingMask.!=.null.&&...
4000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 21 ...............................!
4020 62 69 6e 64 69 6e 67 4d 61 73 6b 2e 56 61 6c 75 65 2e 4d 61 74 63 68 65 73 28 72 65 66 20 75 6e bindingMask.Value.Matches(ref.un
4040 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 resolvedBinding,................
4060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 42 69 6e 64 69 ......................InputBindi
4080 6e 67 2e 4d 61 74 63 68 4f 70 74 69 6f 6e 73 2e 45 6d 70 74 79 47 72 6f 75 70 4d 61 74 63 68 65 ng.MatchOptions.EmptyGroupMatche
40a0 73 41 6e 79 29 29 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sAny))..........................
40c0 20 20 20 20 20 20 2f 2f 20 41 6c 73 6f 2c 20 64 69 73 61 62 6c 65 64 20 69 66 20 62 69 6e 64 69 ......//.Also,.disabled.if.bindi
40e0 6e 67 20 64 6f 65 73 6e 27 74 20 6d 61 74 63 68 20 74 68 65 20 62 69 6e 64 69 6e 67 20 6d 61 73 ng.doesn't.match.the.binding.mas
4100 6b 20 6f 6e 20 74 68 65 20 6d 61 70 20 28 6d 69 67 68 74 20 62 65 20 65 6d 70 74 79 29 2e 0d 0a k.on.the.map.(might.be.empty)...
4120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7c 7c 20 28 ............................||.(
4140 21 69 73 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 62 69 6e 64 69 6e 67 4d 61 73 6b 4f 6e 54 68 69 !isComposite.&&.bindingMaskOnThi
4160 73 4d 61 70 20 21 3d 20 6e 75 6c 6c 20 26 26 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sMap.!=.null.&&.................
4180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 21 62 69 6e 64 69 6e 67 4d 61 73 6b 4f 6e 54 .................!bindingMaskOnT
41a0 68 69 73 4d 61 70 2e 56 61 6c 75 65 2e 4d 61 74 63 68 65 73 28 72 65 66 20 75 6e 72 65 73 6f 6c hisMap.Value.Matches(ref.unresol
41c0 76 65 64 42 69 6e 64 69 6e 67 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 vedBinding,.....................
41e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 2e 4d 61 .................InputBinding.Ma
4200 74 63 68 4f 70 74 69 6f 6e 73 2e 45 6d 70 74 79 47 72 6f 75 70 4d 61 74 63 68 65 73 41 6e 79 29 tchOptions.EmptyGroupMatchesAny)
4220 29 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
4240 20 2f 2f 20 46 69 6e 61 6c 6c 79 2c 20 61 6c 73 6f 20 64 69 73 61 62 6c 65 64 20 69 66 20 62 69 .//.Finally,.also.disabled.if.bi
4260 6e 64 69 6e 67 20 64 6f 65 73 6e 27 74 20 6d 61 74 63 68 20 74 68 65 20 62 69 6e 64 69 6e 67 20 nding.doesn't.match.the.binding.
4280 6d 61 73 6b 20 6f 6e 20 74 68 65 20 61 63 74 69 6f 6e 20 28 6d 69 67 68 74 20 62 65 20 65 6d 70 mask.on.the.action.(might.be.emp
42a0 74 79 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ty).............................
42c0 20 20 7c 7c 20 28 21 69 73 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 61 63 74 69 6f 6e 3f 2e 6d 5f ..||.(!isComposite.&&.action?.m_
42e0 42 69 6e 64 69 6e 67 4d 61 73 6b 20 21 3d 20 6e 75 6c 6c 20 26 26 0d 0a 20 20 20 20 20 20 20 20 BindingMask.!=.null.&&..........
4300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 21 61 63 74 69 6f 6e 2e ........................!action.
4320 6d 5f 42 69 6e 64 69 6e 67 4d 61 73 6b 2e 56 61 6c 75 65 2e 4d 61 74 63 68 65 73 28 72 65 66 20 m_BindingMask.Value.Matches(ref.
4340 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 unresolvedBinding,..............
4360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 49 6e 70 75 74 42 69 6e ........................InputBin
4380 64 69 6e 67 2e 4d 61 74 63 68 4f 70 74 69 6f 6e 73 2e 45 6d 70 74 79 47 72 6f 75 70 4d 61 74 63 ding.MatchOptions.EmptyGroupMatc
43a0 68 65 73 41 6e 79 29 29 3b 0d 0a 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hesAny));.......................
43c0 20 20 20 20 20 20 20 2f 2f 20 49 66 20 74 68 65 20 62 69 6e 64 69 6e 67 20 69 73 6e 27 74 20 64 .......//.If.the.binding.isn't.d
43e0 69 73 61 62 6c 65 64 2c 20 72 65 73 6f 6c 76 65 20 69 74 73 20 63 6f 6e 74 72 6f 6c 73 2c 20 70 isabled,.resolve.its.controls,.p
4400 72 6f 63 65 73 73 6f 72 73 2c 20 61 6e 64 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 2e 0d 0a 20 20 rocessors,.and.interactions.....
4420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 62 69 6e 64 69 ......................if.(!bindi
4440 6e 67 49 73 44 69 73 61 62 6c 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ngIsDisabled)...................
4460 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
4480 20 20 20 20 20 20 2f 2f 20 49 6e 73 74 61 6e 74 69 61 74 65 20 70 72 6f 63 65 73 73 6f 72 73 2e ......//.Instantiate.processors.
44a0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 ..............................va
44c0 72 20 70 72 6f 63 65 73 73 6f 72 53 74 72 69 6e 67 20 3d 20 75 6e 72 65 73 6f 6c 76 65 64 42 69 r.processorString.=.unresolvedBi
44e0 6e 64 69 6e 67 2e 65 66 66 65 63 74 69 76 65 50 72 6f 63 65 73 73 6f 72 73 3b 0d 0a 20 20 20 20 nding.effectiveProcessors;......
4500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 74 72 ........................if.(!str
4520 69 6e 67 2e 49 73 4e 75 6c 6c 4f 72 45 6d 70 74 79 28 70 72 6f 63 65 73 73 6f 72 53 74 72 69 6e ing.IsNullOrEmpty(processorStrin
4540 67 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g)).............................
4560 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .{..............................
4580 20 20 20 20 2f 2f 20 41 64 64 20 70 72 6f 63 65 73 73 6f 72 73 20 66 72 6f 6d 20 62 69 6e 64 69 ....//.Add.processors.from.bindi
45a0 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ng..............................
45c0 20 20 20 20 20 66 69 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 20 3d 20 52 65 73 6f 6c .....firstProcessorIndex.=.Resol
45e0 76 65 50 72 6f 63 65 73 73 6f 72 73 28 70 72 6f 63 65 73 73 6f 72 53 74 72 69 6e 67 29 3b 0d 0a veProcessors(processorString);..
4600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4620 69 66 20 28 66 69 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 if.(firstProcessorIndex.!=.Input
4640 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 ActionState.kInvalidIndex)......
4660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4680 6e 75 6d 50 72 6f 63 65 73 73 6f 72 73 20 3d 20 74 6f 74 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f numProcessors.=.totalProcessorCo
46a0 75 6e 74 20 2d 20 66 69 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 3b 0d 0a 20 20 20 20 unt.-.firstProcessorIndex;......
46c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 ........................}.......
46e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 74 72 69 .......................if.(!stri
4700 6e 67 2e 49 73 4e 75 6c 6c 4f 72 45 6d 70 74 79 28 61 63 74 69 6f 6e 2e 6d 5f 50 72 6f 63 65 73 ng.IsNullOrEmpty(action.m_Proces
4720 73 6f 72 73 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sors))..........................
4740 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....{...........................
4760 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 70 72 6f 63 65 73 73 6f 72 73 20 66 72 6f 6d 20 61 63 .......//.Add.processors.from.ac
4780 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tion............................
47a0 20 20 20 20 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 52 65 73 6f 6c 76 65 50 72 6f 63 65 73 .......var.index.=.ResolveProces
47c0 73 6f 72 73 28 61 63 74 69 6f 6e 2e 6d 5f 50 72 6f 63 65 73 73 6f 72 73 29 3b 0d 0a 20 20 20 20 sors(action.m_Processors);......
47e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 ............................if.(
4800 69 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c index.!=.InputActionState.kInval
4820 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idIndex)........................
4840 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
4860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 72 73 74 50 72 6f 63 65 73 .................if.(firstProces
4880 73 6f 72 49 6e 64 65 78 20 3d 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e sorIndex.==.InputActionState.kIn
48a0 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 validIndex).....................
48c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 72 73 74 50 72 6f 63 65 73 .....................firstProces
48e0 73 6f 72 49 6e 64 65 78 20 3d 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 sorIndex.=.index;...............
4900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 50 72 6f 63 65 73 .......................numProces
4920 73 6f 72 73 20 2b 3d 20 74 6f 74 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 20 2d 20 69 6e sors.+=.totalProcessorCount.-.in
4940 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dex;............................
4960 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......}.........................
4980 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....}..........................
49a0 20 20 20 20 20 20 2f 2f 20 49 6e 73 74 61 6e 74 69 61 74 65 20 69 6e 74 65 72 61 63 74 69 6f 6e ......//.Instantiate.interaction
49c0 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s...............................
49e0 76 61 72 20 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 72 69 6e 67 20 3d 20 75 6e 72 65 73 6f 6c 76 var.interactionString.=.unresolv
4a00 65 64 42 69 6e 64 69 6e 67 2e 65 66 66 65 63 74 69 76 65 49 6e 74 65 72 61 63 74 69 6f 6e 73 3b edBinding.effectiveInteractions;
4a20 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 ..............................if
4a40 20 28 21 73 74 72 69 6e 67 2e 49 73 4e 75 6c 6c 4f 72 45 6d 70 74 79 28 69 6e 74 65 72 61 63 74 .(!string.IsNullOrEmpty(interact
4a60 69 6f 6e 53 74 72 69 6e 67 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ionString)).....................
4a80 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
4aa0 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 20 ............//.Add.interactions.
4ac0 66 72 6f 6d 20 62 69 6e 64 69 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 from.binding....................
4ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 72 73 74 49 6e 74 65 72 61 63 74 69 6f 6e 49 ...............firstInteractionI
4b00 6e 64 65 78 20 3d 20 52 65 73 6f 6c 76 65 49 6e 74 65 72 61 63 74 69 6f 6e 73 28 69 6e 74 65 72 ndex.=.ResolveInteractions(inter
4b20 61 63 74 69 6f 6e 53 74 72 69 6e 67 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 actionString);..................
4b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 72 73 74 49 6e 74 65 72 61 63 ................if.(firstInterac
4b60 74 69 6f 6e 49 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 tionIndex.!=.InputActionState.kI
4b80 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nvalidIndex)....................
4ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 49 6e 74 65 72 61 63 74 69 6f 6e ..................numInteraction
4bc0 73 20 3d 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 2d 20 66 69 72 73 s.=.totalInteractionCount.-.firs
4be0 74 49 6e 74 65 72 61 63 74 69 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 tInteractionIndex;..............
4c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ................}...............
4c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 73 74 72 69 6e 67 2e 49 73 4e 75 6c ...............if.(!string.IsNul
4c40 6c 4f 72 45 6d 70 74 79 28 61 63 74 69 6f 6e 2e 6d 5f 49 6e 74 65 72 61 63 74 69 6f 6e 73 29 29 lOrEmpty(action.m_Interactions))
4c60 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d ..............................{.
4c80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4ca0 20 2f 2f 20 41 64 64 20 69 6e 74 65 72 61 63 74 69 6f 6e 73 20 66 72 6f 6d 20 61 63 74 69 6f 6e .//.Add.interactions.from.action
4cc0 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
4ce0 20 20 20 76 61 72 20 69 6e 64 65 78 20 3d 20 52 65 73 6f 6c 76 65 49 6e 74 65 72 61 63 74 69 6f ...var.index.=.ResolveInteractio
4d00 6e 73 28 61 63 74 69 6f 6e 2e 6d 5f 49 6e 74 65 72 61 63 74 69 6f 6e 73 29 3b 0d 0a 20 20 20 20 ns(action.m_Interactions);......
4d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 ............................if.(
4d40 69 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c index.!=.InputActionState.kInval
4d60 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idIndex)........................
4d80 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
4da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 72 73 74 49 6e 74 65 72 61 .................if.(firstIntera
4dc0 63 74 69 6f 6e 49 6e 64 65 78 20 3d 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b ctionIndex.==.InputActionState.k
4de0 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 InvalidIndex)...................
4e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 72 73 74 49 6e 74 65 .......................firstInte
4e20 72 61 63 74 69 6f 6e 49 6e 64 65 78 20 3d 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 ractionIndex.=.index;...........
4e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 49 6e ...........................numIn
4e60 74 65 72 61 63 74 69 6f 6e 73 20 2b 3d 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f teractions.+=.totalInteractionCo
4e80 75 6e 74 20 2d 20 69 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 unt.-.index;....................
4ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
4ec0 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............}..................
4ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 69 74 27 73 20 74 68 65 20 73 74 61 ..............//.If.it's.the.sta
4f00 72 74 20 6f 66 20 61 20 63 6f 6d 70 6f 73 69 74 65 20 63 68 61 69 6e 2c 20 63 72 65 61 74 65 20 rt.of.a.composite.chain,.create.
4f20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 2e 20 4f 74 68 65 72 77 69 73 65 2c 20 67 6f 20 61 6e 64 the.composite..Otherwise,.go.and
4f40 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ..............................//
4f60 20 72 65 73 6f 6c 76 65 20 63 6f 6e 74 72 6f 6c 73 20 66 6f 72 20 74 68 65 20 62 69 6e 64 69 6e .resolve.controls.for.the.bindin
4f80 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g...............................
4fa0 69 66 20 28 69 73 43 6f 6d 70 6f 73 69 74 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 if.(isComposite)................
4fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
4fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 54 68 65 20 63 6f 6d 70 6f 73 69 74 .................//.The.composit
5000 65 20 62 69 6e 64 69 6e 67 20 65 6e 74 72 79 20 69 74 73 65 6c 66 20 64 6f 65 73 20 6e 6f 74 20 e.binding.entry.itself.does.not.
5020 72 65 73 6f 6c 76 65 20 74 6f 20 61 6e 79 20 63 6f 6e 74 72 6f 6c 73 2e 0d 0a 20 20 20 20 20 20 resolve.to.any.controls.........
5040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 74 20 ..........................//.It.
5060 63 72 65 61 74 65 73 20 61 20 63 6f 6d 70 6f 73 69 74 65 20 62 69 6e 64 69 6e 67 20 6f 62 6a 65 creates.a.composite.binding.obje
5080 63 74 20 77 68 69 63 68 20 69 73 20 74 68 65 6e 20 70 6f 70 75 6c 61 74 65 64 20 66 72 6f 6d 0d ct.which.is.then.populated.from.
50a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
50c0 20 2f 2f 20 73 75 62 73 65 71 75 65 6e 74 20 62 69 6e 64 69 6e 67 73 2e 0d 0a 0d 0a 20 20 20 20 .//.subsequent.bindings.........
50e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 ............................//.I
5100 6e 73 74 61 6e 74 69 61 74 65 2e 20 46 6f 72 20 63 6f 6d 70 6f 73 69 74 65 73 2c 20 74 68 65 20 nstantiate..For.composites,.the.
5120 70 61 74 68 20 69 73 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 path.is.the.name.of.the.composit
5140 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e...............................
5160 20 20 20 20 76 61 72 20 63 6f 6d 70 6f 73 69 74 65 20 3d 20 49 6e 73 74 61 6e 74 69 61 74 65 42 ....var.composite.=.InstantiateB
5180 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 69 74 65 28 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e indingComposite(unresolvedBindin
51a0 67 2e 70 61 74 68 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g.path);........................
51c0 20 20 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 49 6e 64 65 78 20 ..........currentCompositeIndex.
51e0 3d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 =...............................
5200 20 20 20 20 20 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 .......ArrayHelpers.AppendWithCa
5220 70 61 63 69 74 79 28 72 65 66 20 63 6f 6d 70 6f 73 69 74 65 73 2c 20 72 65 66 20 74 6f 74 61 6c pacity(ref.composites,.ref.total
5240 43 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 2c 20 63 6f 6d 70 6f 73 69 74 65 29 3b 0d 0a 0d 0a 20 CompositeCount,.composite);.....
5260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f .............................../
5280 2f 20 52 65 63 6f 72 64 20 77 68 65 72 65 20 74 68 65 20 63 6f 6e 74 72 6f 6c 73 20 66 6f 72 20 /.Record.where.the.controls.for.
52a0 70 61 72 74 73 20 6f 66 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 20 73 74 61 72 74 2e 0d 0a 20 parts.of.the.composite.start....
52c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 ...............................f
52e0 69 72 73 74 43 6f 6e 74 72 6f 6c 49 6e 64 65 78 20 3d 20 6d 65 6d 6f 72 79 2e 63 6f 6e 74 72 6f irstControlIndex.=.memory.contro
5300 6c 43 6f 75 6e 74 20 2b 20 72 65 73 6f 6c 76 65 64 43 6f 6e 74 72 6f 6c 73 2e 43 6f 75 6e 74 3b lCount.+.resolvedControls.Count;
5320 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ..............................}.
5340 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 .............................els
5360 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b e..............................{
5380 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
53a0 20 20 2f 2f 20 49 66 20 77 65 27 76 65 20 72 65 61 63 68 65 64 20 74 68 65 20 65 6e 64 20 6f 66 ..//.If.we've.reached.the.end.of
53c0 20 61 20 63 6f 6d 70 6f 73 69 74 65 20 63 68 61 69 6e 2c 20 66 69 6e 69 73 68 0d 0a 20 20 20 20 .a.composite.chain,.finish......
53e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f ............................//.o
5400 66 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6d 70 6f 73 69 74 65 2e 0d 0a 20 20 20 20 20 ff.the.current.composite........
5420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 ...........................if.(!
5440 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 63 75 72 72 65 6e 74 43 6f 6d 70 isPartOfComposite.&&.currentComp
5460 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e ositeBindingIndex.!=.InputAction
5480 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 20 20 20 20 20 State.kInvalidIndex)............
54a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 ......................{.........
54c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 75 72 .............................cur
54e0 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 43 6f 75 6e 74 20 3d 20 30 3b 0d 0a 20 20 20 rentCompositePartCount.=.0;.....
5500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5520 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 20 3d 20 .currentCompositeBindingIndex.=.
5540 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d InputActionState.kInvalidIndex;.
5560 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5580 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 49 6e 64 65 78 20 3d 20 49 6e 70 .....currentCompositeIndex.=.Inp
55a0 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 20 20 utActionState.kInvalidIndex;....
55c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
55e0 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 41 63 74 69 6f 6e 20 3d 20 6e 75 6c 6c 3b ..currentCompositeAction.=.null;
5600 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
5620 20 20 20 20 20 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 41 63 74 69 6f 6e 49 6e 64 65 ......currentCompositeActionInde
5640 78 49 6e 4d 61 70 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c xInMap.=.InputActionState.kInval
5660 69 64 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idIndex;........................
5680 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........}.....................
56a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 6f 6b 20 75 70 20 63 6f 6e 74 72 6f ...............//.Look.up.contro
56c0 6c 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ls..............................
56e0 20 20 20 20 20 2f 2f 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....//.........................
5700 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 4f 54 45 3a 20 57 65 20 63 6f 6e 74 69 6e 75 6f 75 73 6c .........//.NOTE:.We.continuousl
5720 79 20 61 64 64 20 63 6f 6e 74 72 6f 6c 73 20 68 65 72 65 20 74 6f 20 60 72 65 73 6f 6c 76 65 64 y.add.controls.here.to.`resolved
5740 43 6f 6e 74 72 6f 6c 73 60 2e 20 4f 6e 63 65 20 77 65 27 76 65 20 63 6f 6d 70 6c 65 74 65 64 20 Controls`..Once.we've.completed.
5760 6f 75 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 our.............................
5780 20 20 20 20 20 2f 2f 20 20 20 20 20 20 20 70 61 73 73 20 6f 76 65 72 20 74 68 65 20 62 69 6e 64 .....//.......pass.over.the.bind
57a0 69 6e 67 73 20 69 6e 20 74 68 65 20 6d 61 70 2c 20 60 72 65 73 6f 6c 76 65 64 43 6f 6e 74 72 6f ings.in.the.map,.`resolvedContro
57c0 6c 73 60 20 77 69 6c 6c 20 68 61 76 65 20 61 6c 6c 20 74 68 65 20 63 6f 6e 74 72 6f 6c 73 20 66 ls`.will.have.all.the.controls.f
57e0 6f 72 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 or..............................
5800 20 20 20 20 2f 2f 20 20 20 20 20 20 20 74 68 65 20 63 75 72 72 65 6e 74 20 6d 61 70 2e 0d 0a 20 ....//.......the.current.map....
5820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 ...............................f
5840 69 72 73 74 43 6f 6e 74 72 6f 6c 49 6e 64 65 78 20 3d 20 6d 65 6d 6f 72 79 2e 63 6f 6e 74 72 6f irstControlIndex.=.memory.contro
5860 6c 43 6f 75 6e 74 20 2b 20 72 65 73 6f 6c 76 65 64 43 6f 6e 74 72 6f 6c 73 2e 43 6f 75 6e 74 3b lCount.+.resolvedControls.Count;
5880 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
58a0 20 20 69 66 20 28 64 65 76 69 63 65 73 46 6f 72 54 68 69 73 4d 61 70 20 21 3d 20 6e 75 6c 6c 29 ..if.(devicesForThisMap.!=.null)
58c0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
58e0 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..{.............................
5900 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 61 72 63 68 20 69 6e 20 64 65 76 69 63 65 73 20 66 6f .........//.Search.in.devices.fo
5920 72 20 6f 6e 6c 79 20 74 68 69 73 20 6d 61 70 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.only.this.map.................
5940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6c 69 73 74 20 3d ......................var.list.=
5960 20 64 65 76 69 63 65 73 46 6f 72 54 68 69 73 4d 61 70 2e 56 61 6c 75 65 3b 0d 0a 20 20 20 20 20 .devicesForThisMap.Value;.......
5980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 ...............................f
59a0 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6c 69 73 74 2e 43 6f 75 6e 74 3b 20 2b or.(var.i.=.0;.i.<.list.Count;.+
59c0 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 +i).............................
59e0 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........{......................
5a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 64 65 76 69 63 65 20 3d ....................var.device.=
5a20 20 6c 69 73 74 5b 69 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .list[i];.......................
5a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 64 65 76 69 63 65 2e 61 ...................if.(!device.a
5a60 64 64 65 64 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dded)...........................
5a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 69 6e 75 65 3b 20 2f 2f 20 ...................continue;.//.
5aa0 53 6b 69 70 20 64 65 76 69 63 65 73 20 74 68 61 74 20 68 61 76 65 20 62 65 65 6e 20 72 65 6d 6f Skip.devices.that.have.been.remo
5ac0 76 65 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ved.............................
5ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 43 6f 6e 74 72 6f 6c 73 20 2b 3d 20 49 6e 70 ..............numControls.+=.Inp
5b00 75 74 43 6f 6e 74 72 6f 6c 50 61 74 68 2e 54 72 79 46 69 6e 64 43 6f 6e 74 72 6f 6c 73 28 64 65 utControlPath.TryFindControls(de
5b20 76 69 63 65 2c 20 70 61 74 68 2c 20 30 2c 20 72 65 66 20 72 65 73 6f 6c 76 65 64 43 6f 6e 74 72 vice,.path,.0,.ref.resolvedContr
5b40 6f 6c 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ols);...........................
5b60 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........}....................
5b80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............}.................
5ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 .................else...........
5bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 .......................{........
5be0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f ..............................//
5c00 20 53 65 61 72 63 68 20 67 6c 6f 62 61 6c 6c 79 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .Search.globally................
5c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 43 6f 6e 74 72 6f .......................numContro
5c40 6c 73 20 3d 20 49 6e 70 75 74 53 79 73 74 65 6d 2e 46 69 6e 64 43 6f 6e 74 72 6f 6c 73 28 70 61 ls.=.InputSystem.FindControls(pa
5c60 74 68 2c 20 72 65 66 20 72 65 73 6f 6c 76 65 64 43 6f 6e 74 72 6f 6c 73 29 3b 0d 0a 20 20 20 20 th,.ref.resolvedControls);......
5c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 ............................}...
5ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 ...........................}....
5cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 ......................}.........
5ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 66 20 74 68 65 20 62 69 6e ...................//.If.the.bin
5d00 64 69 6e 67 20 69 73 20 70 61 72 74 20 6f 66 20 61 20 63 6f 6d 70 6f 73 69 74 65 2c 20 70 61 73 ding.is.part.of.a.composite,.pas
5d20 73 20 74 68 65 20 72 65 73 6f 6c 76 65 64 20 63 6f 6e 74 72 6f 6c 73 0d 0a 20 20 20 20 20 20 20 s.the.resolved.controls.........
5d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6f 6e 20 74 6f 20 74 68 65 20 63 6f .................//.on.to.the.co
5d60 6d 70 6f 73 69 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mposite.........................
5d80 20 20 69 66 20 28 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 20 26 26 20 63 75 72 72 65 ..if.(isPartOfComposite.&&.curre
5da0 6e 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 20 21 3d 20 49 6e 70 75 74 ntCompositeBindingIndex.!=.Input
5dc0 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 20 26 26 20 6e 75 6d ActionState.kInvalidIndex.&&.num
5de0 43 6f 6e 74 72 6f 6c 73 20 3e 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Controls.>.0)...................
5e00 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .......{........................
5e20 20 20 20 20 20 20 2f 2f 20 4d 61 6b 65 20 73 75 72 65 20 74 68 65 20 62 69 6e 64 69 6e 67 20 69 ......//.Make.sure.the.binding.i
5e40 73 20 6e 61 6d 65 64 2e 20 54 68 65 20 6e 61 6d 65 20 64 65 74 65 72 6d 69 6e 65 73 20 77 68 61 s.named..The.name.determines.wha
5e60 74 20 69 6e 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 t.in.the.composite..............
5e80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 74 6f 20 62 69 6e 64 20 74 6f 2e 0d 0a ................//.to.bind.to...
5ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 ............................if.(
5ec0 73 74 72 69 6e 67 2e 49 73 4e 75 6c 6c 4f 72 45 6d 70 74 79 28 75 6e 72 65 73 6f 6c 76 65 64 42 string.IsNullOrEmpty(unresolvedB
5ee0 69 6e 64 69 6e 67 2e 6e 61 6d 65 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 inding.name))...................
5f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 ...............throw.new.Invalid
5f20 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 OperationException(.............
5f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 42 69 6e 64 69 .........................$"Bindi
5f60 6e 67 20 27 7b 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 7d 27 20 74 68 61 74 20 69 73 ng.'{unresolvedBinding}'.that.is
5f80 20 70 61 72 74 20 6f 66 20 63 6f 6d 70 6f 73 69 74 65 20 27 7b 63 6f 6d 70 6f 73 69 74 65 73 5b .part.of.composite.'{composites[
5fa0 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 49 6e 64 65 78 5d 7d 27 20 69 73 20 6d 69 73 73 currentCompositeIndex]}'.is.miss
5fc0 69 6e 67 20 61 20 6e 61 6d 65 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ing.a.name");...................
5fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 47 69 76 65 20 61 20 70 61 72 74 20 69 6e 64 65 .............//.Give.a.part.inde
6000 78 20 66 6f 72 20 74 68 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 x.for.the.......................
6020 20 20 20 20 20 20 20 70 61 72 74 49 6e 64 65 78 20 3d 20 41 73 73 69 67 6e 43 6f 6d 70 6f 73 69 .......partIndex.=.AssignComposi
6040 74 65 50 61 72 74 49 6e 64 65 78 28 63 6f 6d 70 6f 73 69 74 65 73 5b 63 75 72 72 65 6e 74 43 6f tePartIndex(composites[currentCo
6060 6d 70 6f 73 69 74 65 49 6e 64 65 78 5d 2c 20 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 mpositeIndex],.unresolvedBinding
6080 2e 6e 61 6d 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .name,..........................
60a0 20 20 20 20 20 20 20 20 72 65 66 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 ........ref.currentCompositePart
60c0 43 6f 75 6e 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Count);.........................
60e0 20 20 20 20 20 20 20 2f 2f 20 4b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 74 6f 74 61 6c 20 6e 75 .......//.Keep.track.of.total.nu
6100 6d 62 65 72 20 6f 66 20 63 6f 6e 74 72 6f 6c 73 20 62 6f 75 6e 64 20 69 6e 20 74 68 65 20 63 6f mber.of.controls.bound.in.the.co
6120 6d 70 6f 73 69 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mposite.........................
6140 20 20 20 20 20 20 62 69 6e 64 69 6e 67 53 74 61 74 65 73 50 74 72 5b 63 75 72 72 65 6e 74 43 6f ......bindingStatesPtr[currentCo
6160 6d 70 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 5d 2e 63 6f 6e 74 72 6f 6c 43 6f 75 6e mpositeBindingIndex].controlCoun
6180 74 20 2b 3d 20 6e 75 6d 43 6f 6e 74 72 6f 6c 73 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 t.+=.numControls;...............
61a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 46 6f 72 63 65 20 61 63 74 69 6f 6e .................//.Force.action
61c0 20 69 6e 64 65 78 20 6f 6e 20 70 61 72 74 20 62 69 6e 64 69 6e 67 20 74 6f 20 62 65 20 73 61 6d .index.on.part.binding.to.be.sam
61e0 65 20 61 73 20 74 68 61 74 20 6f 66 20 63 6f 6d 70 6f 73 69 74 65 2e 0d 0a 20 20 20 20 20 20 20 e.as.that.of.composite..........
6200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 49 6e 64 65 78 .....................actionIndex
6220 46 6f 72 42 69 6e 64 69 6e 67 20 3d 20 62 69 6e 64 69 6e 67 53 74 61 74 65 73 50 74 72 5b 63 75 ForBinding.=.bindingStatesPtr[cu
6240 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 5d 2e 61 63 74 69 rrentCompositeBindingIndex].acti
6260 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 onIndex;........................
6280 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 ..}..........................els
62a0 65 20 69 66 20 28 61 63 74 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 20 21 3d 20 49 6e 70 75 74 41 e.if.(actionIndexInMap.!=.InputA
62c0 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 29 0d 0a 20 20 20 20 20 ctionState.kInvalidIndex).......
62e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 ...................{............
6300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 49 6e 64 65 78 46 6f 72 ..................actionIndexFor
6320 42 69 6e 64 69 6e 67 20 3d 20 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 2b 20 61 63 74 Binding.=.actionStartIndex.+.act
6340 69 6f 6e 49 6e 64 65 78 49 6e 4d 61 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ionIndexInMap;..................
6360 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........}.......................
6380 20 20 20 20 20 2f 2f 20 53 74 6f 72 65 20 72 65 73 6f 6c 76 65 64 20 62 69 6e 64 69 6e 67 2e 0d .....//.Store.resolved.binding..
63a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 62 69 6e 64 69 6e .........................*bindin
63c0 67 53 74 61 74 65 20 3d 20 6e 65 77 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 42 69 gState.=.new.InputActionState.Bi
63e0 6e 64 69 6e 67 53 74 61 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndingState......................
6400 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....{...........................
6420 20 20 20 63 6f 6e 74 72 6f 6c 53 74 61 72 74 49 6e 64 65 78 20 3d 20 66 69 72 73 74 43 6f 6e 74 ...controlStartIndex.=.firstCont
6440 72 6f 6c 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rolIndex,.......................
6460 20 20 20 20 20 20 20 2f 2f 20 46 6f 72 20 63 6f 6d 70 6f 73 69 74 65 73 2c 20 74 68 69 73 20 77 .......//.For.composites,.this.w
6480 69 6c 6c 20 62 65 20 61 64 6a 75 73 74 65 64 20 61 73 20 77 65 20 61 64 64 20 65 61 63 68 20 70 ill.be.adjusted.as.we.add.each.p
64a0 61 72 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 art.............................
64c0 20 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 20 3d 20 6e 75 6d 43 6f 6e 74 72 6f 6c 73 2c 0d 0a 20 ..controlCount.=.numControls,...
64e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 ...........................inter
6500 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 3d 20 66 69 72 73 74 49 6e 74 65 72 61 63 74 actionStartIndex.=.firstInteract
6520 69 6f 6e 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ionIndex,.......................
6540 20 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 3d 20 6e 75 6d 49 6e 74 .......interactionCount.=.numInt
6560 65 72 61 63 74 69 6f 6e 73 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eractions,......................
6580 20 20 20 20 20 20 20 20 70 72 6f 63 65 73 73 6f 72 53 74 61 72 74 49 6e 64 65 78 20 3d 20 66 69 ........processorStartIndex.=.fi
65a0 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 rstProcessorIndex,..............
65c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 20 3d ................processorCount.=
65e0 20 6e 75 6d 50 72 6f 63 65 73 73 6f 72 73 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .numProcessors,.................
6600 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 43 6f 6d 70 6f 73 69 74 65 20 3d 20 69 73 43 6f 6d .............isComposite.=.isCom
6620 70 6f 73 69 74 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 posite,.........................
6640 20 20 20 20 20 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 20 3d 20 75 6e 72 65 73 6f 6c .....isPartOfComposite.=.unresol
6660 76 65 64 42 69 6e 64 69 6e 67 2e 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 69 74 65 2c 0d 0a 20 vedBinding.isPartOfComposite,...
6680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 74 49 ...........................partI
66a0 6e 64 65 78 20 3d 20 70 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ndex.=.partIndex,...............
66c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 6f 6e 49 6e 64 65 78 20 3d 20 61 63 74 ...............actionIndex.=.act
66e0 69 6f 6e 49 6e 64 65 78 46 6f 72 42 69 6e 64 69 6e 67 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ionIndexForBinding,.............
6700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 6f 73 69 74 65 4f 72 43 6f 6d 70 .................compositeOrComp
6720 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 20 3d 20 69 73 43 6f 6d 70 6f 73 69 74 65 20 ositeBindingIndex.=.isComposite.
6740 3f 20 63 75 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 49 6e 64 65 78 20 3a 20 63 75 72 72 65 6e ?.currentCompositeIndex.:.curren
6760 74 43 6f 6d 70 6f 73 69 74 65 42 69 6e 64 69 6e 67 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 tCompositeBindingIndex,.........
6780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 49 6e 64 65 78 20 3d 20 .....................mapIndex.=.
67a0 74 6f 74 61 6c 4d 61 70 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 totalMapCount,..................
67c0 20 20 20 20 20 20 20 20 20 20 20 20 77 61 6e 74 73 49 6e 69 74 69 61 6c 53 74 61 74 65 43 68 65 ............wantsInitialStateChe
67e0 63 6b 20 3d 20 61 63 74 69 6f 6e 3f 2e 77 61 6e 74 73 49 6e 69 74 69 61 6c 53 74 61 74 65 43 68 ck.=.action?.wantsInitialStateCh
6800 65 63 6b 20 3f 3f 20 66 61 6c 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eck.??.false....................
6820 20 20 20 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d ......};......................}.
6840 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 63 68 20 28 45 78 63 65 .....................catch.(Exce
6860 70 74 69 6f 6e 20 65 78 63 65 70 74 69 6f 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ption.exception)................
6880 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......{.........................
68a0 20 44 65 62 75 67 2e 4c 6f 67 45 72 72 6f 72 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Debug.LogError(................
68c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 7b 65 78 63 65 70 74 69 6f 6e 2e 47 65 74 54 79 ..............$"{exception.GetTy
68e0 70 65 28 29 2e 4e 61 6d 65 7d 20 77 68 69 6c 65 20 72 65 73 6f 6c 76 69 6e 67 20 62 69 6e 64 69 pe().Name}.while.resolving.bindi
6900 6e 67 20 27 7b 75 6e 72 65 73 6f 6c 76 65 64 42 69 6e 64 69 6e 67 7d 27 20 69 6e 20 61 63 74 69 ng.'{unresolvedBinding}'.in.acti
6920 6f 6e 20 6d 61 70 20 27 7b 6d 61 70 7d 27 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 on.map.'{map}'");...............
6940 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 4c 6f 67 45 78 63 65 70 74 69 6f 6e 28 65 78 ...........Debug.LogException(ex
6960 63 65 70 74 69 6f 6e 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ception);.......................
6980 20 20 20 20 20 2f 2f 20 44 6f 6e 27 74 20 73 77 61 6c 6c 6f 77 20 65 78 63 65 70 74 69 6f 6e 73 .....//.Don't.swallow.exceptions
69a0 20 74 68 61 74 20 69 6e 64 69 63 61 74 65 20 73 6f 6d 65 74 68 69 6e 67 20 69 73 20 77 72 6f 6e .that.indicate.something.is.wron
69c0 67 20 69 6e 20 74 68 65 20 63 6f 64 65 20 72 61 74 68 65 72 20 74 68 61 6e 0d 0a 20 20 20 20 20 g.in.the.code.rather.than.......
69e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 20 74 68 65 20 64 61 74 ...................//.in.the.dat
6a00 61 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 a...........................if.(
6a20 65 78 63 65 70 74 69 6f 6e 2e 49 73 45 78 63 65 70 74 69 6f 6e 49 6e 64 69 63 61 74 69 6e 67 42 exception.IsExceptionIndicatingB
6a40 75 67 49 6e 43 6f 64 65 28 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ugInCode()).....................
6a60 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........throw;.................
6a80 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 .....}..................}.......
6aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 52 65 2d 61 6c 6c 6f 63 61 74 65 20 6d 65 6d 6f .............//.Re-allocate.memo
6ac0 72 79 20 74 6f 20 61 63 63 6f 6d 6d 6f 64 61 74 65 20 63 6f 6e 74 72 6f 6c 73 20 61 6e 64 20 69 ry.to.accommodate.controls.and.i
6ae0 6e 74 65 72 61 63 74 69 6f 6e 20 73 74 61 74 65 73 2e 20 54 68 65 20 63 6f 75 6e 74 20 66 6f 72 nteraction.states..The.count.for
6b00 20 74 68 6f 73 65 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 6f 6e .those..................//.we.on
6b20 6c 79 20 6b 6e 6f 77 20 6f 6e 63 65 20 77 65 27 76 65 20 63 6f 6d 70 6c 65 74 65 64 20 61 6c 6c ly.know.once.we've.completed.all
6b40 20 72 65 73 6f 6c 75 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 .resolution...................va
6b60 72 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 70 20 3d 20 72 65 73 6f 6c 76 r.controlCountInThisMap.=.resolv
6b80 65 64 43 6f 6e 74 72 6f 6c 73 2e 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 edControls.Count;...............
6ba0 20 20 20 76 61 72 20 6e 65 77 54 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 20 3d 20 6d 65 ...var.newTotalControlCount.=.me
6bc0 6d 6f 72 79 2e 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 20 2b 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 mory.controlCount.+.controlCount
6be0 49 6e 54 68 69 73 4d 61 70 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 InThisMap;..................if.(
6c00 6e 65 77 4d 65 6d 6f 72 79 2e 69 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 21 3d 20 74 6f newMemory.interactionCount.!=.to
6c20 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 7c 7c 0d 0a 20 20 20 20 20 20 20 20 talInteractionCount.||..........
6c40 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 63 6f 6d 70 6f 73 69 74 65 43 ............newMemory.compositeC
6c60 6f 75 6e 74 20 21 3d 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 20 7c 7c 0d 0a ount.!=.totalCompositeCount.||..
6c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 63 6f ....................newMemory.co
6ca0 6e 74 72 6f 6c 43 6f 75 6e 74 20 21 3d 20 6e 65 77 54 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 ntrolCount.!=.newTotalControlCou
6cc0 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 nt)..................{..........
6ce0 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69 6e 61 6c 4d 65 6d 6f 72 79 20 3d 20 6e 65 ............var.finalMemory.=.ne
6d00 77 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 55 6e 6d 61 6e 61 67 65 64 4d 65 6d 6f w.InputActionState.UnmanagedMemo
6d20 72 79 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e ry();........................fin
6d40 61 6c 4d 65 6d 6f 72 79 2e 41 6c 6c 6f 63 61 74 65 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 alMemory.Allocate(..............
6d60 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 43 6f 75 6e 74 3a 20 6e 65 77 4d 65 6d 6f 72 79 2e ............mapCount:.newMemory.
6d80 6d 61 70 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mapCount,.......................
6da0 20 20 20 61 63 74 69 6f 6e 43 6f 75 6e 74 3a 20 6e 65 77 4d 65 6d 6f 72 79 2e 61 63 74 69 6f 6e ...actionCount:.newMemory.action
6dc0 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Count,..........................
6de0 62 69 6e 64 69 6e 67 43 6f 75 6e 74 3a 20 6e 65 77 4d 65 6d 6f 72 79 2e 62 69 6e 64 69 6e 67 43 bindingCount:.newMemory.bindingC
6e00 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 ount,..........................c
6e20 6f 6e 74 72 6f 6c 43 6f 75 6e 74 3a 20 6e 65 77 54 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e ontrolCount:.newTotalControlCoun
6e40 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 t,..........................inte
6e60 72 61 63 74 69 6f 6e 43 6f 75 6e 74 3a 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f ractionCount:.totalInteractionCo
6e80 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f unt,..........................co
6ea0 6d 70 6f 73 69 74 65 43 6f 75 6e 74 3a 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 69 74 65 43 6f 75 6e mpositeCount:.totalCompositeCoun
6ec0 74 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e 61 6c t);........................final
6ee0 4d 65 6d 6f 72 79 2e 43 6f 70 79 44 61 74 61 46 72 6f 6d 28 6e 65 77 4d 65 6d 6f 72 79 29 3b 0d Memory.CopyDataFrom(newMemory);.
6f00 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 .......................newMemory
6f20 2e 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Dispose();.....................
6f40 20 6e 65 77 4d 65 6d 6f 72 79 20 3d 20 66 69 6e 61 6c 4d 65 6d 6f 72 79 3b 0d 0a 20 20 20 20 20 .newMemory.=.finalMemory;.......
6f60 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........}....................
6f80 2f 2f 20 41 64 64 20 63 6f 6e 74 72 6f 6c 73 20 74 6f 20 61 72 72 61 79 2e 0d 0a 20 20 20 20 20 //.Add.controls.to.array........
6fa0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 49 6e 41 72 72 ...........var.controlCountInArr
6fc0 61 79 20 3d 20 6d 65 6d 6f 72 79 2e 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 ay.=.memory.controlCount;.......
6fe0 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 41 70 70 65 6e 64 4c 69 ...........ArrayHelpers.AppendLi
7000 73 74 57 69 74 68 43 61 70 61 63 69 74 79 28 72 65 66 20 63 6f 6e 74 72 6f 6c 73 2c 20 72 65 66 stWithCapacity(ref.controls,.ref
7020 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 49 6e 41 72 72 61 79 2c 20 72 65 73 6f 6c 76 65 64 43 6f .controlCountInArray,.resolvedCo
7040 6e 74 72 6f 6c 73 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e ntrols);..................Debug.
7060 41 73 73 65 72 74 28 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 49 6e 41 72 72 61 79 20 3d 3d 20 6e 65 Assert(controlCountInArray.==.ne
7080 77 54 6f 74 61 6c 43 6f 6e 74 72 6f 6c 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 wTotalControlCount,.............
70a0 20 20 20 20 20 20 20 20 20 22 43 6f 6e 74 72 6f 6c 20 61 72 72 61 79 20 73 68 6f 75 6c 64 20 68 ........."Control.array.should.h
70c0 61 76 65 20 63 6f 6d 62 69 6e 65 64 20 63 6f 75 6e 74 20 6f 66 20 6f 6c 64 20 61 6e 64 20 6e 65 ave.combined.count.of.old.and.ne
70e0 77 20 63 6f 6e 74 72 6f 6c 73 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 w.controls");...................
7100 20 2f 2f 20 53 65 74 20 75 70 20 63 6f 6e 74 72 6f 6c 20 74 6f 20 62 69 6e 64 69 6e 67 20 69 6e .//.Set.up.control.to.binding.in
7120 64 65 78 20 6d 61 70 70 69 6e 67 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f dex.mapping...................fo
7140 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 49 6e r.(var.i.=.0;.i.<.bindingCountIn
7160 54 68 69 73 4d 61 70 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b ThisMap;.++i)..................{
7180 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e ......................var.bindin
71a0 67 53 74 61 74 65 73 50 74 72 20 3d 20 6e 65 77 4d 65 6d 6f 72 79 2e 62 69 6e 64 69 6e 67 53 74 gStatesPtr.=.newMemory.bindingSt
71c0 61 74 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 ates;......................var.b
71e0 69 6e 64 69 6e 67 53 74 61 74 65 20 3d 20 26 62 69 6e 64 69 6e 67 53 74 61 74 65 73 50 74 72 5b indingState.=.&bindingStatesPtr[
7200 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 20 2b 20 69 5d 3b 0d 0a 20 20 20 20 20 20 20 bindingStartIndex.+.i];.........
7220 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 75 6d 43 6f 6e 74 72 6f 6c 73 20 3d 20 62 .............var.numControls.=.b
7240 69 6e 64 69 6e 67 53 74 61 74 65 2d 3e 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 indingState->controlCount;......
7260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 73 74 61 72 74 49 6e 64 65 78 20 3d ................var.startIndex.=
7280 20 62 69 6e 64 69 6e 67 53 74 61 74 65 2d 3e 63 6f 6e 74 72 6f 6c 53 74 61 72 74 49 6e 64 65 78 .bindingState->controlStartIndex
72a0 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 ;......................for.(var.
72c0 6e 20 3d 20 30 3b 20 6e 20 3c 20 6e 75 6d 43 6f 6e 74 72 6f 6c 73 3b 20 2b 2b 6e 29 0d 0a 20 20 n.=.0;.n.<.numControls;.++n)....
72e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e ......................newMemory.
7300 63 6f 6e 74 72 6f 6c 49 6e 64 65 78 54 6f 42 69 6e 64 69 6e 67 49 6e 64 65 78 5b 73 74 61 72 74 controlIndexToBindingIndex[start
7320 49 6e 64 65 78 20 2b 20 6e 5d 20 3d 20 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 20 2b Index.+.n].=.bindingStartIndex.+
7340 20 69 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 .i;..................}..........
7360 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 69 74 69 61 6c 69 7a 65 20 69 6e 69 74 69 61 6c 20 ..........//.Initialize.initial.
7380 69 6e 74 65 72 61 63 74 69 6f 6e 20 73 74 61 74 65 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 interaction.states..............
73a0 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 6d 65 6d 6f 72 79 2e 69 6e 74 65 72 61 63 .....for.(var.i.=.memory.interac
73c0 74 69 6f 6e 43 6f 75 6e 74 3b 20 69 20 3c 20 6e 65 77 4d 65 6d 6f 72 79 2e 69 6e 74 65 72 61 63 tionCount;.i.<.newMemory.interac
73e0 74 69 6f 6e 43 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tionCount;.++i).................
7400 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 61 74 65 73 .....newMemory.interactionStates
7420 5b 69 5d 2e 70 68 61 73 65 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 50 68 61 73 65 2e 57 61 69 [i].phase.=.InputActionPhase.Wai
7440 74 69 6e 67 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 69 74 ting;....................//.Init
7460 69 61 6c 69 7a 65 20 61 63 74 69 6f 6e 20 64 61 74 61 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ialize.action.data..............
7480 20 20 20 20 20 76 61 72 20 72 75 6e 6e 69 6e 67 49 6e 64 65 78 49 6e 42 69 6e 64 69 6e 67 49 6e .....var.runningIndexInBindingIn
74a0 64 69 63 65 73 20 3d 20 6d 65 6d 6f 72 79 2e 62 69 6e 64 69 6e 67 43 6f 75 6e 74 3b 0d 0a 20 20 dices.=.memory.bindingCount;....
74c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 ..............for.(var.i.=.0;.i.
74e0 3c 20 61 63 74 69 6f 6e 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 70 3b 20 2b 2b 69 29 0d 0a 20 20 <.actionCountInThisMap;.++i)....
7500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
7520 20 20 20 20 20 76 61 72 20 61 63 74 69 6f 6e 20 3d 20 61 63 74 69 6f 6e 73 49 6e 54 68 69 73 4d .....var.action.=.actionsInThisM
7540 61 70 5b 69 5d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 ap[i];......................var.
7560 61 63 74 69 6f 6e 49 6e 64 65 78 20 3d 20 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 2b actionIndex.=.actionStartIndex.+
7580 20 69 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6f .i;........................//.Co
75a0 72 72 65 6c 61 74 65 20 61 63 74 69 6f 6e 20 77 69 74 68 20 69 74 73 20 74 72 69 67 67 65 72 20 rrelate.action.with.its.trigger.
75c0 73 74 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 63 74 69 state.......................acti
75e0 6f 6e 2e 6d 5f 41 63 74 69 6f 6e 49 6e 64 65 78 49 6e 53 74 61 74 65 20 3d 20 61 63 74 69 6f 6e on.m_ActionIndexInState.=.action
7600 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f Index;........................//
7620 20 43 6f 6c 6c 65 63 74 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 61 63 74 69 6f 6e 2e 0d 0a 20 .Collect.bindings.for.action....
7640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 53 74 ...................var.bindingSt
7660 61 72 74 49 6e 64 65 78 46 6f 72 41 63 74 69 6f 6e 20 3d 20 72 75 6e 6e 69 6e 67 49 6e 64 65 78 artIndexForAction.=.runningIndex
7680 49 6e 42 69 6e 64 69 6e 67 49 6e 64 69 63 65 73 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 InBindingIndices;...............
76a0 20 20 20 20 20 20 20 76 61 72 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 46 6f 72 41 63 74 69 6f 6e .......var.bindingCountForAction
76c0 20 3d 20 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e .=.0;......................var.n
76e0 75 6d 50 6f 73 73 69 62 6c 65 43 6f 6e 63 75 72 72 65 6e 74 41 63 74 75 61 74 69 6f 6e 73 20 3d umPossibleConcurrentActuations.=
7700 20 30 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 .0;........................for.(
7720 76 61 72 20 6e 20 3d 20 30 3b 20 6e 20 3c 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 49 6e 54 68 69 var.n.=.0;.n.<.bindingCountInThi
7740 73 4d 61 70 3b 20 2b 2b 6e 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sMap;.++n)......................
7760 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 62 {..........................var.b
7780 69 6e 64 69 6e 67 49 6e 64 65 78 20 3d 20 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 20 indingIndex.=.bindingStartIndex.
77a0 2b 20 6e 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 +.n;..........................va
77c0 72 20 62 69 6e 64 69 6e 67 53 74 61 74 65 20 3d 20 26 6e 65 77 4d 65 6d 6f 72 79 2e 62 69 6e 64 r.bindingState.=.&newMemory.bind
77e0 69 6e 67 53 74 61 74 65 73 5b 62 69 6e 64 69 6e 67 49 6e 64 65 78 5d 3b 0d 0a 20 20 20 20 20 20 ingStates[bindingIndex];........
7800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 69 6e 64 69 6e 67 53 74 61 ..................if.(bindingSta
7820 74 65 2d 3e 61 63 74 69 6f 6e 49 6e 64 65 78 20 21 3d 20 61 63 74 69 6f 6e 49 6e 64 65 78 29 0d te->actionIndex.!=.actionIndex).
7840 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e .............................con
7860 74 69 6e 75 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tinue;..........................
7880 69 66 20 28 62 69 6e 64 69 6e 67 53 74 61 74 65 2d 3e 69 73 50 61 72 74 4f 66 43 6f 6d 70 6f 73 if.(bindingState->isPartOfCompos
78a0 69 74 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ite)............................
78c0 20 20 63 6f 6e 74 69 6e 75 65 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..continue;.....................
78e0 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 62 69 6e 64 69 6e 67 49 6e 64 65 78 .......Debug.Assert(bindingIndex
7900 20 3c 3d 20 75 73 68 6f 72 74 2e 4d 61 78 56 61 6c 75 65 2c 20 22 42 69 6e 64 69 6e 67 20 69 6e .<=.ushort.MaxValue,."Binding.in
7920 64 65 78 20 65 78 63 65 65 64 73 20 6c 69 6d 69 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 dex.exceeds.limit");............
7940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 61 63 74 69 6f 6e 42 69 ..............newMemory.actionBi
7960 6e 64 69 6e 67 49 6e 64 69 63 65 73 5b 72 75 6e 6e 69 6e 67 49 6e 64 65 78 49 6e 42 69 6e 64 69 ndingIndices[runningIndexInBindi
7980 6e 67 49 6e 64 69 63 65 73 5d 20 3d 20 28 75 73 68 6f 72 74 29 62 69 6e 64 69 6e 67 49 6e 64 65 ngIndices].=.(ushort)bindingInde
79a0 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 72 75 x;..........................++ru
79c0 6e 6e 69 6e 67 49 6e 64 65 78 49 6e 42 69 6e 64 69 6e 67 49 6e 64 69 63 65 73 3b 0d 0a 20 20 20 nningIndexInBindingIndices;.....
79e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 62 69 6e 64 69 6e 67 43 6f .....................++bindingCo
7a00 75 6e 74 46 6f 72 41 63 74 69 6f 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 untForAction;...................
7a20 20 20 20 20 20 20 20 20 20 2f 2f 20 4b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 68 6f 77 20 6d 61 .........//.Keep.track.of.how.ma
7a40 6e 79 20 63 6f 6e 63 75 72 72 65 6e 74 20 61 63 74 75 61 74 69 6f 6e 73 20 77 65 20 6d 61 79 20 ny.concurrent.actuations.we.may.
7a60 62 65 20 73 65 65 69 6e 67 20 6f 6e 20 74 68 65 20 61 63 74 69 6f 6e 20 73 6f 20 74 68 61 74 0d be.seeing.on.the.action.so.that.
7a80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 77 65 20 6b .........................//.we.k
7aa0 6e 6f 77 20 77 68 65 74 68 65 72 20 77 65 20 6e 65 65 64 20 74 6f 20 65 6e 61 62 6c 65 20 63 6f now.whether.we.need.to.enable.co
7ac0 6e 66 6c 69 63 74 20 72 65 73 6f 6c 75 74 69 6f 6e 20 6f 72 20 6e 6f 74 2e 0d 0a 20 20 20 20 20 nflict.resolution.or.not........
7ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 69 6e 64 69 6e 67 53 74 ...................if.(bindingSt
7b00 61 74 65 2d 3e 69 73 43 6f 6d 70 6f 73 69 74 65 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ate->isComposite)...............
7b20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........{....................
7b40 20 20 20 20 20 20 20 20 20 20 2f 2f 20 43 6f 6d 70 6f 73 69 74 65 20 62 69 6e 64 69 6e 67 2e 20 ..........//.Composite.binding..
7b60 41 63 74 75 61 74 65 73 20 61 73 20 61 20 77 68 6f 6c 65 2e 20 43 68 65 63 6b 20 69 66 20 74 68 Actuates.as.a.whole..Check.if.th
7b80 65 20 63 6f 6d 70 6f 73 69 74 65 20 68 61 73 20 73 75 63 63 65 73 73 66 75 6c 6c 79 0d 0a 20 20 e.composite.has.successfully....
7ba0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 72 65 73 ..........................//.res
7bc0 6f 6c 76 65 64 20 61 6e 79 20 63 6f 6e 74 72 6f 6c 73 2e 20 49 66 20 73 6f 2c 20 69 74 20 61 64 olved.any.controls..If.so,.it.ad
7be0 64 73 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 61 63 74 75 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 ds.one.possible.actuation.......
7c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 62 69 6e 64 ........................if.(bind
7c20 69 6e 67 53 74 61 74 65 2d 3e 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 20 3e 20 30 29 0d 0a 20 20 20 ingState->controlCount.>.0).....
7c40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2b 2b 6e .............................++n
7c60 75 6d 50 6f 73 73 69 62 6c 65 43 6f 6e 63 75 72 72 65 6e 74 41 63 74 75 61 74 69 6f 6e 73 3b 0d umPossibleConcurrentActuations;.
7c80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 .........................}......
7ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 6c 73 65 0d 0a 20 20 20 20 20 20 ....................else........
7cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ..................{.............
7ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 6f 72 6d 61 6c 20 62 69 6e 64 69 .................//.Normal.bindi
7d00 6e 67 2e 20 45 76 65 72 79 20 73 75 63 63 65 73 73 66 75 6c 6c 79 20 72 65 73 6f 6c 76 65 64 20 ng..Every.successfully.resolved.
7d20 63 6f 6e 74 72 6f 6c 20 72 65 73 75 6c 74 73 20 69 6e 20 6f 6e 65 20 70 6f 73 73 69 62 6c 65 20 control.results.in.one.possible.
7d40 61 63 74 75 61 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 actuation.......................
7d60 20 20 20 20 20 20 20 20 6e 75 6d 50 6f 73 73 69 62 6c 65 43 6f 6e 63 75 72 72 65 6e 74 41 63 74 ........numPossibleConcurrentAct
7d80 75 61 74 69 6f 6e 73 20 2b 3d 20 62 69 6e 64 69 6e 67 53 74 61 74 65 2d 3e 63 6f 6e 74 72 6f 6c uations.+=.bindingState->control
7da0 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Count;..........................
7dc0 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 20 }......................}........
7de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 62 69 6e 64 69 ..............Debug.Assert(bindi
7e00 6e 67 53 74 61 72 74 49 6e 64 65 78 46 6f 72 41 63 74 69 6f 6e 20 3c 20 75 73 68 6f 72 74 2e 4d ngStartIndexForAction.<.ushort.M
7e20 61 78 56 61 6c 75 65 2c 20 22 42 69 6e 64 69 6e 67 20 73 74 61 72 74 20 69 6e 64 65 78 20 6f 6e axValue,."Binding.start.index.on
7e40 20 61 63 74 69 6f 6e 20 65 78 63 65 65 64 73 20 6c 69 6d 69 74 22 29 3b 0d 0a 20 20 20 20 20 20 .action.exceeds.limit");........
7e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 62 69 6e 64 69 ..............Debug.Assert(bindi
7e80 6e 67 43 6f 75 6e 74 46 6f 72 41 63 74 69 6f 6e 20 3c 20 75 73 68 6f 72 74 2e 4d 61 78 56 61 6c ngCountForAction.<.ushort.MaxVal
7ea0 75 65 2c 20 22 42 69 6e 64 69 6e 67 20 63 6f 75 6e 74 20 6f 6e 20 61 63 74 69 6f 6e 20 65 78 63 ue,."Binding.count.on.action.exc
7ec0 65 65 64 73 20 6c 69 6d 69 74 22 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eeds.limit");...................
7ee0 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 61 63 74 69 6f 6e 42 69 6e 64 69 6e 67 49 6e 64 69 63 65 ...newMemory.actionBindingIndice
7f00 73 41 6e 64 43 6f 75 6e 74 73 5b 61 63 74 69 6f 6e 49 6e 64 65 78 20 2a 20 32 5d 20 3d 20 28 75 sAndCounts[actionIndex.*.2].=.(u
7f20 73 68 6f 72 74 29 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 46 6f 72 41 63 74 69 6f 6e short)bindingStartIndexForAction
7f40 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 ;......................newMemory
7f60 2e 61 63 74 69 6f 6e 42 69 6e 64 69 6e 67 49 6e 64 69 63 65 73 41 6e 64 43 6f 75 6e 74 73 5b 61 .actionBindingIndicesAndCounts[a
7f80 63 74 69 6f 6e 49 6e 64 65 78 20 2a 20 32 20 2b 20 31 5d 20 3d 20 28 75 73 68 6f 72 74 29 62 69 ctionIndex.*.2.+.1].=.(ushort)bi
7fa0 6e 64 69 6e 67 43 6f 75 6e 74 46 6f 72 41 63 74 69 6f 6e 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 ndingCountForAction;............
7fc0 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 65 65 20 69 66 20 77 65 20 6d 61 79 20 6e 65 65 ............//.See.if.we.may.nee
7fe0 64 20 63 6f 6e 66 6c 69 63 74 20 72 65 73 6f 6c 75 74 69 6f 6e 20 6f 6e 20 74 68 69 73 20 61 63 d.conflict.resolution.on.this.ac
8000 74 69 6f 6e 2e 20 4e 65 76 65 72 20 6e 65 65 64 65 64 20 66 6f 72 20 70 61 73 73 2d 74 68 72 6f tion..Never.needed.for.pass-thro
8020 75 67 68 20 61 63 74 69 6f 6e 73 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ugh.actions.....................
8040 20 20 2f 2f 20 4f 74 68 65 72 77 69 73 65 2c 20 69 66 20 77 65 20 68 61 76 65 20 6d 6f 72 65 20 ..//.Otherwise,.if.we.have.more.
8060 74 68 61 6e 20 6f 6e 65 20 62 6f 75 6e 64 20 63 6f 6e 74 72 6f 6c 20 6f 72 20 68 61 76 65 20 73 than.one.bound.control.or.have.s
8080 65 76 65 72 61 6c 20 62 69 6e 64 69 6e 67 73 20 61 6e 64 20 6f 6e 65 20 6f 66 20 74 68 65 6d 0d everal.bindings.and.one.of.them.
80a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 73 20 61 20 63 6f 6d .....................//.is.a.com
80c0 70 6f 73 69 74 65 2c 20 77 65 20 65 6e 61 62 6c 65 20 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 posite,.we.enable.it............
80e0 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 69 73 50 61 73 73 54 68 72 6f 75 67 68 41 63 74 69 ...........var.isPassThroughActi
8100 6f 6e 20 3d 20 61 63 74 69 6f 6e 2e 74 79 70 65 20 3d 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 54 on.=.action.type.==.InputActionT
8120 79 70 65 2e 50 61 73 73 54 68 72 6f 75 67 68 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ype.PassThrough;................
8140 20 20 20 20 20 20 76 61 72 20 6d 61 79 4e 65 65 64 43 6f 6e 66 6c 69 63 74 52 65 73 6f 6c 75 74 ......var.mayNeedConflictResolut
8160 69 6f 6e 20 3d 20 21 69 73 50 61 73 73 54 68 72 6f 75 67 68 41 63 74 69 6f 6e 20 26 26 20 6e 75 ion.=.!isPassThroughAction.&&.nu
8180 6d 50 6f 73 73 69 62 6c 65 43 6f 6e 63 75 72 72 65 6e 74 41 63 74 75 61 74 69 6f 6e 73 20 3e 20 mPossibleConcurrentActuations.>.
81a0 31 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 69 1;........................//.Ini
81c0 74 69 61 6c 69 7a 65 20 69 6e 69 74 69 61 6c 20 74 72 69 67 67 65 72 20 73 74 61 74 65 2e 0d 0a tialize.initial.trigger.state...
81e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 61 63 ....................newMemory.ac
8200 74 69 6f 6e 53 74 61 74 65 73 5b 61 63 74 69 6f 6e 49 6e 64 65 78 5d 20 3d 0d 0a 20 20 20 20 20 tionStates[actionIndex].=.......
8220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 20 49 6e 70 75 74 41 63 74 69 ...................new.InputActi
8240 6f 6e 53 74 61 74 65 2e 54 72 69 67 67 65 72 53 74 61 74 65 0d 0a 20 20 20 20 20 20 20 20 20 20 onState.TriggerState............
8260 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........{.....................
8280 20 20 20 20 20 70 68 61 73 65 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 50 68 61 73 65 2e 44 69 .....phase.=.InputActionPhase.Di
82a0 73 61 62 6c 65 64 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 sabled,.........................
82c0 20 6d 61 70 49 6e 64 65 78 20 3d 20 6d 61 70 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 .mapIndex.=.mapIndex,...........
82e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 72 6f 6c 49 6e 64 65 78 20 3d 20 49 6e ...............controlIndex.=.In
8300 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 2c 0d 0a 20 putActionState.kInvalidIndex,...
8320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 .......................interacti
8340 6f 6e 49 6e 64 65 78 20 3d 20 49 6e 70 75 74 41 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 onIndex.=.InputActionState.kInva
8360 6c 69 64 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lidIndex,.......................
8380 20 20 20 69 73 50 61 73 73 54 68 72 6f 75 67 68 20 3d 20 69 73 50 61 73 73 54 68 72 6f 75 67 68 ...isPassThrough.=.isPassThrough
83a0 41 63 74 69 6f 6e 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Action,.........................
83c0 20 6d 61 79 4e 65 65 64 43 6f 6e 66 6c 69 63 74 52 65 73 6f 6c 75 74 69 6f 6e 20 3d 20 6d 61 79 .mayNeedConflictResolution.=.may
83e0 4e 65 65 64 43 6f 6e 66 6c 69 63 74 52 65 73 6f 6c 75 74 69 6f 6e 2c 0d 0a 20 20 20 20 20 20 20 NeedConflictResolution,.........
8400 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............};.................
8420 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 53 74 6f 72 65 20 69 .}....................//.Store.i
8440 6e 64 69 63 65 73 20 66 6f 72 20 6d 61 70 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndices.for.map..................
8460 20 6e 65 77 4d 65 6d 6f 72 79 2e 6d 61 70 49 6e 64 69 63 65 73 5b 6d 61 70 49 6e 64 65 78 5d 20 .newMemory.mapIndices[mapIndex].
8480 3d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 20 49 6e 70 75 74 =......................new.Input
84a0 41 63 74 69 6f 6e 53 74 61 74 65 2e 41 63 74 69 6f 6e 4d 61 70 49 6e 64 69 63 65 73 0d 0a 20 20 ActionState.ActionMapIndices....
84c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............{.................
84e0 20 20 20 20 20 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 3d 20 61 63 74 69 6f 6e 53 74 .....actionStartIndex.=.actionSt
8500 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 artIndex,......................a
8520 63 74 69 6f 6e 43 6f 75 6e 74 20 3d 20 61 63 74 69 6f 6e 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 ctionCount.=.actionCountInThisMa
8540 70 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 72 6f 6c 53 p,......................controlS
8560 74 61 72 74 49 6e 64 65 78 20 3d 20 63 6f 6e 74 72 6f 6c 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a tartIndex.=.controlStartIndex,..
8580 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 ....................controlCount
85a0 20 3d 20 63 6f 6e 74 72 6f 6c 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 70 2c 0d 0a 20 20 20 20 20 .=.controlCountInThisMap,.......
85c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 ...............bindingStartIndex
85e0 20 3d 20 62 69 6e 64 69 6e 67 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 .=.bindingStartIndex,...........
8600 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 43 6f 75 6e 74 20 3d 20 62 69 6e 64 69 6e ...........bindingCount.=.bindin
8620 67 43 6f 75 6e 74 49 6e 54 68 69 73 4d 61 70 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 gCountInThisMap,................
8640 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 20 3d 20 69 6e ......interactionStartIndex.=.in
8660 74 65 72 61 63 74 69 6f 6e 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 teractionStartIndex,............
8680 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 3d 20 74 6f 74 ..........interactionCount.=.tot
86a0 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 20 2d 20 69 6e 74 65 72 61 63 74 69 6f 6e alInteractionCount.-.interaction
86c0 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 StartIndex,.....................
86e0 20 70 72 6f 63 65 73 73 6f 72 53 74 61 72 74 49 6e 64 65 78 20 3d 20 70 72 6f 63 65 73 73 6f 72 .processorStartIndex.=.processor
8700 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 StartIndex,.....................
8720 20 70 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 20 3d 20 74 6f 74 61 6c 50 72 6f 63 65 73 73 6f 72 .processorCount.=.totalProcessor
8740 43 6f 75 6e 74 20 2d 20 70 72 6f 63 65 73 73 6f 72 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 Count.-.processorStartIndex,....
8760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 6f 73 69 74 65 53 74 61 72 74 ..................compositeStart
8780 49 6e 64 65 78 20 3d 20 63 6f 6d 70 6f 73 69 74 65 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 Index.=.compositeStartIndex,....
87a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 ..................compositeCount
87c0 20 3d 20 74 6f 74 61 6c 43 6f 6d 70 6f 73 69 74 65 43 6f 75 6e 74 20 2d 20 63 6f 6d 70 6f 73 69 .=.totalCompositeCount.-.composi
87e0 74 65 53 74 61 72 74 49 6e 64 65 78 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d teStartIndex,..................}
8800 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 2e 6d 5f 4d 61 70 49 6e 64 65 ;..................map.m_MapInde
8820 78 49 6e 53 74 61 74 65 20 3d 20 6d 61 70 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 xInState.=.mapIndex;............
8840 20 20 20 20 20 20 76 61 72 20 66 69 6e 61 6c 41 63 74 69 6f 6e 4d 61 70 43 6f 75 6e 74 20 3d 20 ......var.finalActionMapCount.=.
8860 6d 65 6d 6f 72 79 2e 6d 61 70 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 memory.mapCount;................
8880 20 20 41 72 72 61 79 48 65 6c 70 65 72 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 ..ArrayHelpers.AppendWithCapacit
88a0 79 28 72 65 66 20 6d 61 70 73 2c 20 72 65 66 20 66 69 6e 61 6c 41 63 74 69 6f 6e 4d 61 70 43 6f y(ref.maps,.ref.finalActionMapCo
88c0 75 6e 74 2c 20 6d 61 70 2c 20 63 61 70 61 63 69 74 79 49 6e 63 72 65 6d 65 6e 74 3a 20 34 29 3b unt,.map,.capacityIncrement:.4);
88e0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65 62 75 67 2e 41 73 73 65 72 74 28 66 ..................Debug.Assert(f
8900 69 6e 61 6c 41 63 74 69 6f 6e 4d 61 70 43 6f 75 6e 74 20 3d 3d 20 6e 65 77 4d 65 6d 6f 72 79 2e inalActionMapCount.==.newMemory.
8920 6d 61 70 43 6f 75 6e 74 2c 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 mapCount,......................"
8940 46 69 6e 61 6c 20 61 63 74 69 6f 6e 20 6d 61 70 20 63 6f 75 6e 74 20 73 68 6f 75 6c 64 20 6d 61 Final.action.map.count.should.ma
8960 74 63 68 20 6f 6c 64 20 61 63 74 69 6f 6e 20 6d 61 70 20 63 6f 75 6e 74 20 70 6c 75 73 20 6f 6e tch.old.action.map.count.plus.on
8980 65 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 73 20 61 20 e");....................//.As.a.
89a0 66 69 6e 61 6c 20 61 63 74 2c 20 73 77 61 70 20 74 68 65 20 6e 65 77 20 6d 65 6d 6f 72 79 20 69 final.act,.swap.the.new.memory.i
89c0 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 6d 6f 72 79 2e 44 69 73 70 6f n...................memory.Dispo
89e0 73 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 65 6d 6f 72 79 20 3d 20 se();..................memory.=.
8a00 6e 65 77 4d 65 6d 6f 72 79 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 20 newMemory;..............}.......
8a20 20 20 20 20 20 20 20 63 61 74 63 68 20 28 45 78 63 65 70 74 69 6f 6e 29 0d 0a 20 20 20 20 20 20 .......catch.(Exception)........
8a40 20 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 44 6f 6e 27 ......{..................//.Don'
8a60 74 20 6c 65 61 6b 20 6f 75 72 20 6e 61 74 69 76 65 20 6d 65 6d 6f 72 79 20 77 68 65 6e 20 77 65 t.leak.our.native.memory.when.we
8a80 20 74 68 72 6f 77 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 .throw.an.exception.............
8aa0 20 20 20 20 20 20 6e 65 77 4d 65 6d 6f 72 79 2e 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 20 20 20 ......newMemory.Dispose();......
8ac0 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ............throw;..............
8ae0 7d 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e 61 6c 6c 79 0d 0a 20 20 20 20 20 20 20 20 }..............finally..........
8b00 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 6f 6c 76 65 64 43 ....{..................resolvedC
8b20 6f 6e 74 72 6f 6c 73 2e 44 69 73 70 6f 73 65 28 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 ontrols.Dispose();..............
8b40 7d 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 }..........}............private.
8b60 69 6e 74 20 52 65 73 6f 6c 76 65 49 6e 74 65 72 61 63 74 69 6f 6e 73 28 73 74 72 69 6e 67 20 69 int.ResolveInteractions(string.i
8b80 6e 74 65 72 61 63 74 69 6f 6e 53 74 72 69 6e 67 29 0d 0a 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 nteractionString)..........{....
8ba0 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 57 65 27 72 65 20 70 69 67 67 ..........////REVIEW:.We're.pigg
8bc0 79 62 61 63 6b 69 6e 67 20 6f 66 66 20 74 68 65 20 70 72 6f 63 65 73 73 6f 72 20 70 61 72 73 69 ybacking.off.the.processor.parsi
8be0 6e 67 20 68 65 72 65 20 61 73 20 74 68 65 20 74 77 6f 20 73 79 6e 74 61 78 65 73 20 61 72 65 20 ng.here.as.the.two.syntaxes.are.
8c00 69 64 65 6e 74 69 63 61 6c 2e 20 4d 69 67 68 74 20 63 6f 6e 73 69 64 65 72 0d 0a 20 20 20 20 20 identical..Might.consider.......
8c20 20 20 20 20 20 20 20 2f 2f 2f 2f 20 20 20 20 20 20 20 20 6d 6f 76 69 6e 67 20 74 68 65 20 6c 6f .......////........moving.the.lo
8c40 67 69 63 20 74 6f 20 61 20 73 68 61 72 65 64 20 70 6c 61 63 65 2e 0d 0a 20 20 20 20 20 20 20 20 gic.to.a.shared.place...........
8c60 20 20 20 20 2f 2f 2f 2f 20 20 20 20 20 20 20 20 41 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 6d ....////........Alternatively,.m
8c80 61 79 20 73 70 6c 69 74 20 74 68 65 20 70 61 74 68 73 2e 20 4d 61 79 20 68 65 6c 70 20 69 6e 20 ay.split.the.paths..May.help.in.
8ca0 67 65 74 74 69 6e 67 20 72 69 64 20 6f 66 20 75 6e 6e 65 63 65 73 73 61 72 79 20 61 6c 6c 6f 63 getting.rid.of.unnecessary.alloc
8cc0 61 74 69 6f 6e 73 2e 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 4e 61 6d 65 ations.................if.(!Name
8ce0 41 6e 64 50 61 72 61 6d 65 74 65 72 73 2e 50 61 72 73 65 4d 75 6c 74 69 70 6c 65 28 69 6e 74 65 AndParameters.ParseMultiple(inte
8d00 72 61 63 74 69 6f 6e 53 74 72 69 6e 67 2c 20 72 65 66 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 29 ractionString,.ref.m_Parameters)
8d20 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 49 6e 70 75 74 41 )..................return.InputA
8d40 63 74 69 6f 6e 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 ctionState.kInvalidIndex;.......
8d60 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69 72 73 74 49 6e 74 65 72 61 63 74 69 6f 6e 49 6e 64 .........var.firstInteractionInd
8d80 65 78 20 3d 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 6f 75 6e 74 3b 0d 0a 20 20 20 ex.=.totalInteractionCount;.....
8da0 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 .........for.(var.i.=.0;.i.<.m_P
8dc0 61 72 61 6d 65 74 65 72 73 2e 43 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 arameters.Count;.++i)...........
8de0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 6f 6b 20 75 70 ...{..................//.Look.up
8e00 20 69 6e 74 65 72 61 63 74 69 6f 6e 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 .interaction...................v
8e20 61 72 20 74 79 70 65 20 3d 20 49 6e 70 75 74 49 6e 74 65 72 61 63 74 69 6f 6e 2e 73 5f 49 6e 74 ar.type.=.InputInteraction.s_Int
8e40 65 72 61 63 74 69 6f 6e 73 2e 4c 6f 6f 6b 75 70 54 79 70 65 52 65 67 69 73 74 72 61 74 69 6f 6e eractions.LookupTypeRegistration
8e60 28 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20 (m_Parameters[i].name);.........
8e80 20 20 20 20 20 20 20 20 20 69 66 20 28 74 79 70 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 .........if.(type.==.null)......
8ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 ................throw.new.Invali
8ec0 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 20 dOperationException(............
8ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 4e 6f 20 69 6e 74 65 72 61 63 74 69 6f 6e 20 77 ..............$"No.interaction.w
8f00 69 74 68 20 6e 61 6d 65 20 27 7b 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 6e 61 6d 65 7d ith.name.'{m_Parameters[i].name}
8f20 27 20 28 6d 65 6e 74 69 6f 6e 65 64 20 69 6e 20 27 7b 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 72 '.(mentioned.in.'{interactionStr
8f40 69 6e 67 7d 27 29 20 68 61 73 20 62 65 65 6e 20 72 65 67 69 73 74 65 72 65 64 22 29 3b 0d 0a 0d ing}').has.been.registered");...
8f60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 73 74 61 6e 74 69 61 74 65 20 .................//.Instantiate.
8f80 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 28 41 63 74 69 76 it...................if.(!(Activ
8fa0 61 74 6f 72 2e 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 79 70 65 29 20 69 73 20 49 49 6e ator.CreateInstance(type).is.IIn
8fc0 70 75 74 49 6e 74 65 72 61 63 74 69 6f 6e 20 69 6e 74 65 72 61 63 74 69 6f 6e 29 29 0d 0a 20 20 putInteraction.interaction))....
8fe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 ..................throw.new.Inva
9000 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 24 22 49 6e 74 65 72 61 63 74 lidOperationException($"Interact
9020 69 6f 6e 20 27 7b 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 6e 61 6d 65 7d 27 20 28 6d 65 ion.'{m_Parameters[i].name}'.(me
9040 6e 74 69 6f 6e 65 64 20 69 6e 20 27 7b 69 6e 74 65 72 61 63 74 69 6f 6e 53 74 72 69 6e 67 7d 27 ntioned.in.'{interactionString}'
9060 29 20 69 73 20 6e 6f 74 20 61 6e 20 49 49 6e 70 75 74 49 6e 74 65 72 61 63 74 69 6f 6e 22 29 3b ).is.not.an.IInputInteraction");
9080 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 61 73 73 20 70 61 72 61 ....................//.Pass.para
90a0 6d 65 74 65 72 73 20 74 6f 20 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e meters.to.it...................N
90c0 61 6d 65 64 56 61 6c 75 65 2e 41 70 70 6c 79 41 6c 6c 54 6f 4f 62 6a 65 63 74 28 69 6e 74 65 72 amedValue.ApplyAllToObject(inter
90e0 61 63 74 69 6f 6e 2c 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 70 61 72 61 6d 65 74 65 action,.m_Parameters[i].paramete
9100 72 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 74 rs);....................//.Add.t
9120 6f 20 6c 69 73 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 65 o.list...................ArrayHe
9140 6c 70 65 72 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 72 65 66 20 69 6e 74 lpers.AppendWithCapacity(ref.int
9160 65 72 61 63 74 69 6f 6e 73 2c 20 72 65 66 20 74 6f 74 61 6c 49 6e 74 65 72 61 63 74 69 6f 6e 43 eractions,.ref.totalInteractionC
9180 6f 75 6e 74 2c 20 69 6e 74 65 72 61 63 74 69 6f 6e 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 ount,.interaction);.............
91a0 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 69 72 73 74 49 6e .}................return.firstIn
91c0 74 65 72 61 63 74 69 6f 6e 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 teractionIndex;..........}......
91e0 20 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 52 65 73 6f 6c 76 65 50 72 6f 63 65 73 73 ......private.int.ResolveProcess
9200 6f 72 73 28 73 74 72 69 6e 67 20 70 72 6f 63 65 73 73 6f 72 53 74 72 69 6e 67 29 0d 0a 20 20 20 ors(string.processorString).....
9220 20 20 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 4e 61 6d 65 41 6e 64 .....{..............if.(!NameAnd
9240 50 61 72 61 6d 65 74 65 72 73 2e 50 61 72 73 65 4d 75 6c 74 69 70 6c 65 28 70 72 6f 63 65 73 73 Parameters.ParseMultiple(process
9260 6f 72 53 74 72 69 6e 67 2c 20 72 65 66 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 29 29 0d 0a 20 20 orString,.ref.m_Parameters))....
9280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 49 6e 70 75 74 41 63 74 69 6f 6e ..............return.InputAction
92a0 53 74 61 74 65 2e 6b 49 6e 76 61 6c 69 64 49 6e 64 65 78 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 State.kInvalidIndex;............
92c0 20 20 20 20 76 61 72 20 66 69 72 73 74 50 72 6f 63 65 73 73 6f 72 49 6e 64 65 78 20 3d 20 74 6f ....var.firstProcessorIndex.=.to
92e0 74 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 talProcessorCount;..............
9300 66 6f 72 20 28 76 61 72 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 for.(var.i.=.0;.i.<.m_Parameters
9320 2e 43 6f 75 6e 74 3b 20 2b 2b 69 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 20 20 .Count;.++i)..............{.....
9340 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 6f 6b 20 75 70 20 70 72 6f 63 65 73 73 6f .............//.Look.up.processo
9360 72 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 79 70 65 20 3d 20 49 r...................var.type.=.I
9380 6e 70 75 74 50 72 6f 63 65 73 73 6f 72 2e 73 5f 50 72 6f 63 65 73 73 6f 72 73 2e 4c 6f 6f 6b 75 nputProcessor.s_Processors.Looku
93a0 70 54 79 70 65 52 65 67 69 73 74 72 61 74 69 6f 6e 28 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 pTypeRegistration(m_Parameters[i
93c0 5d 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 79 ].name);..................if.(ty
93e0 70 65 20 3d 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 pe.==.null).....................
9400 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 .throw.new.InvalidOperationExcep
9420 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 tion(..........................$
9440 22 4e 6f 20 70 72 6f 63 65 73 73 6f 72 20 77 69 74 68 20 6e 61 6d 65 20 27 7b 6d 5f 50 61 72 61 "No.processor.with.name.'{m_Para
9460 6d 65 74 65 72 73 5b 69 5d 2e 6e 61 6d 65 7d 27 20 28 6d 65 6e 74 69 6f 6e 65 64 20 69 6e 20 27 meters[i].name}'.(mentioned.in.'
9480 7b 70 72 6f 63 65 73 73 6f 72 53 74 72 69 6e 67 7d 27 29 20 68 61 73 20 62 65 65 6e 20 72 65 67 {processorString}').has.been.reg
94a0 69 73 74 65 72 65 64 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f istered");....................//
94c0 20 49 6e 73 74 61 6e 74 69 61 74 65 20 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .Instantiate.it.................
94e0 20 20 69 66 20 28 21 28 41 63 74 69 76 61 74 6f 72 2e 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 ..if.(!(Activator.CreateInstance
9500 28 74 79 70 65 29 20 69 73 20 49 6e 70 75 74 50 72 6f 63 65 73 73 6f 72 20 70 72 6f 63 65 73 73 (type).is.InputProcessor.process
9520 6f 72 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 or))......................throw.
9540 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a new.InvalidOperationException(..
9560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 54 79 70 65 20 27 ........................$"Type.'
9580 7b 74 79 70 65 2e 4e 61 6d 65 7d 27 20 72 65 67 69 73 74 65 72 65 64 20 61 73 20 70 72 6f 63 65 {type.Name}'.registered.as.proce
95a0 73 73 6f 72 20 63 61 6c 6c 65 64 20 27 7b 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 6e 61 ssor.called.'{m_Parameters[i].na
95c0 6d 65 7d 27 20 28 6d 65 6e 74 69 6f 6e 65 64 20 69 6e 20 27 7b 70 72 6f 63 65 73 73 6f 72 53 74 me}'.(mentioned.in.'{processorSt
95e0 72 69 6e 67 7d 27 29 20 69 73 20 6e 6f 74 20 61 6e 20 49 6e 70 75 74 50 72 6f 63 65 73 73 6f 72 ring}').is.not.an.InputProcessor
9600 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 50 61 73 73 20 70 ");....................//.Pass.p
9620 61 72 61 6d 65 74 65 72 73 20 74 6f 20 69 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 arameters.to.it.................
9640 20 20 4e 61 6d 65 64 56 61 6c 75 65 2e 41 70 70 6c 79 41 6c 6c 54 6f 4f 62 6a 65 63 74 28 70 72 ..NamedValue.ApplyAllToObject(pr
9660 6f 63 65 73 73 6f 72 2c 20 6d 5f 50 61 72 61 6d 65 74 65 72 73 5b 69 5d 2e 70 61 72 61 6d 65 74 ocessor,.m_Parameters[i].paramet
9680 65 72 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 41 64 64 20 ers);....................//.Add.
96a0 74 6f 20 6c 69 73 74 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 72 72 61 79 48 to.list...................ArrayH
96c0 65 6c 70 65 72 73 2e 41 70 70 65 6e 64 57 69 74 68 43 61 70 61 63 69 74 79 28 72 65 66 20 70 72 elpers.AppendWithCapacity(ref.pr
96e0 6f 63 65 73 73 6f 72 73 2c 20 72 65 66 20 74 6f 74 61 6c 50 72 6f 63 65 73 73 6f 72 43 6f 75 6e ocessors,.ref.totalProcessorCoun
9700 74 2c 20 70 72 6f 63 65 73 73 6f 72 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a 0d t,.processor);..............}...
9720 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 66 69 72 73 74 50 72 6f 63 65 73 73 .............return.firstProcess
9740 6f 72 49 6e 64 65 78 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a 20 20 20 20 20 20 20 20 70 orIndex;..........}............p
9760 72 69 76 61 74 65 20 73 74 61 74 69 63 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 rivate.static.InputBindingCompos
9780 69 74 65 20 49 6e 73 74 61 6e 74 69 61 74 65 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 69 74 65 28 ite.InstantiateBindingComposite(
97a0 73 74 72 69 6e 67 20 6e 61 6d 65 41 6e 64 50 61 72 61 6d 65 74 65 72 73 29 0d 0a 20 20 20 20 20 string.nameAndParameters).......
97c0 20 20 20 7b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 61 6d 65 41 6e 64 50 61 72 ...{..............var.nameAndPar
97e0 61 6d 65 74 65 72 73 50 61 72 73 65 64 20 3d 20 4e 61 6d 65 41 6e 64 50 61 72 61 6d 65 74 65 72 ametersParsed.=.NameAndParameter
9800 73 2e 50 61 72 73 65 28 6e 61 6d 65 41 6e 64 50 61 72 61 6d 65 74 65 72 73 29 3b 0d 0a 0d 0a 20 s.Parse(nameAndParameters);.....
9820 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 6f 6b 20 75 70 2e 0d 0a 20 20 20 20 20 20 20 20 ...........//.Look.up...........
9840 20 20 20 20 76 61 72 20 74 79 70 65 20 3d 20 49 6e 70 75 74 42 69 6e 64 69 6e 67 43 6f 6d 70 6f ....var.type.=.InputBindingCompo
9860 73 69 74 65 2e 73 5f 43 6f 6d 70 6f 73 69 74 65 73 2e 4c 6f 6f 6b 75 70 54 79 70 65 52 65 67 69 site.s_Composites.LookupTypeRegi
9880 73 74 72 61 74 69 6f 6e 28 6e 61 6d 65 41 6e 64 50 61 72 61 6d 65 74 65 72 73 50 61 72 73 65 64 stration(nameAndParametersParsed
98a0 2e 6e 61 6d 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 74 79 70 65 20 3d 3d .name);..............if.(type.==
98c0 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 .null)..................throw.ne
98e0 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 20 w.InvalidOperationException(....
9900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 4e 6f 20 62 69 6e 64 69 6e 67 20 63 ..................$"No.binding.c
9920 6f 6d 70 6f 73 69 74 65 20 77 69 74 68 20 6e 61 6d 65 20 27 7b 6e 61 6d 65 41 6e 64 50 61 72 61 omposite.with.name.'{nameAndPara
9940 6d 65 74 65 72 73 50 61 72 73 65 64 2e 6e 61 6d 65 7d 27 20 68 61 73 20 62 65 65 6e 20 72 65 67 metersParsed.name}'.has.been.reg
9960 69 73 74 65 72 65 64 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 49 6e 73 istered");................//.Ins
9980 74 61 6e 74 69 61 74 65 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 21 28 41 63 74 tantiate...............if.(!(Act
99a0 69 76 61 74 6f 72 2e 43 72 65 61 74 65 49 6e 73 74 61 6e 63 65 28 74 79 70 65 29 20 69 73 20 49 ivator.CreateInstance(type).is.I
99c0 6e 70 75 74 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 69 74 65 20 69 6e 73 74 61 6e 63 65 29 29 0d nputBindingComposite.instance)).
99e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c .................throw.new.Inval
9a00 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 idOperationException(...........
9a20 20 20 20 20 20 20 20 20 20 20 20 24 22 52 65 67 69 73 74 65 72 65 64 20 74 79 70 65 20 27 7b 74 ...........$"Registered.type.'{t
9a40 79 70 65 2e 4e 61 6d 65 7d 27 20 75 73 65 64 20 66 6f 72 20 27 7b 6e 61 6d 65 41 6e 64 50 61 72 ype.Name}'.used.for.'{nameAndPar
9a60 61 6d 65 74 65 72 73 50 61 72 73 65 64 2e 6e 61 6d 65 7d 27 20 69 73 20 6e 6f 74 20 61 6e 20 49 ametersParsed.name}'.is.not.an.I
9a80 6e 70 75 74 42 69 6e 64 69 6e 67 43 6f 6d 70 6f 73 69 74 65 22 29 3b 0d 0a 0d 0a 20 20 20 20 20 nputBindingComposite");.........
9aa0 20 20 20 20 20 20 20 2f 2f 20 53 65 74 20 70 61 72 61 6d 65 74 65 72 73 2e 0d 0a 20 20 20 20 20 .......//.Set.parameters........
9ac0 20 20 20 20 20 20 20 4e 61 6d 65 64 56 61 6c 75 65 2e 41 70 70 6c 79 41 6c 6c 54 6f 4f 62 6a 65 .......NamedValue.ApplyAllToObje
9ae0 63 74 28 69 6e 73 74 61 6e 63 65 2c 20 6e 61 6d 65 41 6e 64 50 61 72 61 6d 65 74 65 72 73 50 61 ct(instance,.nameAndParametersPa
9b00 72 73 65 64 2e 70 61 72 61 6d 65 74 65 72 73 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 rsed.parameters);...............
9b20 20 72 65 74 75 72 6e 20 69 6e 73 74 61 6e 63 65 3b 0d 0a 20 20 20 20 20 20 20 20 7d 0d 0a 0d 0a .return.instance;..........}....
9b40 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 73 74 61 74 69 63 20 69 6e 74 20 41 73 73 69 67 ........private.static.int.Assig
9b60 6e 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 49 6e 64 65 78 28 6f 62 6a 65 63 74 20 63 6f 6d 70 6f nCompositePartIndex(object.compo
9b80 73 69 74 65 2c 20 73 74 72 69 6e 67 20 6e 61 6d 65 2c 20 72 65 66 20 69 6e 74 20 63 75 72 72 65 site,.string.name,.ref.int.curre
9ba0 6e 74 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 43 6f 75 6e 74 29 0d 0a 20 20 20 20 20 20 20 20 7b ntCompositePartCount)..........{
9bc0 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 74 79 70 65 20 3d 20 63 6f 6d 70 6f 73 69 ..............var.type.=.composi
9be0 74 65 2e 47 65 74 54 79 70 65 28 29 3b 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f te.GetType();................///
9c00 2f 52 45 56 49 45 57 3a 20 63 68 65 63 6b 20 66 6f 72 20 5b 49 6e 70 75 74 43 6f 6e 74 72 6f 6c /REVIEW:.check.for.[InputControl
9c20 5d 20 61 74 74 72 69 62 75 74 65 3f 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f ].attribute?................////
9c40 54 4f 44 4f 3a 20 61 6c 6c 6f 77 20 74 68 69 73 20 74 6f 20 62 65 20 61 20 70 72 6f 70 65 72 74 TODO:.allow.this.to.be.a.propert
9c60 79 20 69 6e 73 74 65 61 64 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4c 6f 6f 6b 20 75 y.instead..............//.Look.u
9c80 70 20 66 69 65 6c 64 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 66 69 65 6c 64 20 p.field...............var.field.
9ca0 3d 20 74 79 70 65 2e 47 65 74 46 69 65 6c 64 28 6e 61 6d 65 2c 0d 0a 20 20 20 20 20 20 20 20 20 =.type.GetField(name,...........
9cc0 20 20 20 20 20 20 20 42 69 6e 64 69 6e 67 46 6c 61 67 73 2e 49 67 6e 6f 72 65 43 61 73 65 20 7c .......BindingFlags.IgnoreCase.|
9ce0 20 42 69 6e 64 69 6e 67 46 6c 61 67 73 2e 49 6e 73 74 61 6e 63 65 20 7c 20 42 69 6e 64 69 6e 67 .BindingFlags.Instance.|.Binding
9d00 46 6c 61 67 73 2e 50 75 62 6c 69 63 20 7c 20 42 69 6e 64 69 6e 67 46 6c 61 67 73 2e 4e 6f 6e 50 Flags.Public.|.BindingFlags.NonP
9d20 75 62 6c 69 63 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 65 6c 64 20 3d ublic);..............if.(field.=
9d40 3d 20 6e 75 6c 6c 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 68 72 6f 77 20 6e =.null)..................throw.n
9d60 65 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 74 69 6f 6e 28 0d 0a 20 ew.InvalidOperationException(...
9d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 43 61 6e 6e 6f 74 20 66 69 6e 64 ...................$"Cannot.find
9da0 20 70 75 62 6c 69 63 20 66 69 65 6c 64 20 27 7b 6e 61 6d 65 7d 27 20 75 73 65 64 20 61 73 20 70 .public.field.'{name}'.used.as.p
9dc0 61 72 61 6d 65 74 65 72 20 6f 66 20 62 69 6e 64 69 6e 67 20 63 6f 6d 70 6f 73 69 74 65 20 27 7b arameter.of.binding.composite.'{
9de0 63 6f 6d 70 6f 73 69 74 65 7d 27 20 6f 66 20 74 79 70 65 20 27 7b 74 79 70 65 7d 27 22 29 3b 0d composite}'.of.type.'{type}'");.
9e00 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 73 68 6f 75 6c ...............////REVIEW:.shoul
9e20 64 20 77 65 20 77 72 61 70 20 70 61 72 74 20 6e 75 6d 62 65 72 73 20 69 6e 20 61 20 73 74 72 75 d.we.wrap.part.numbers.in.a.stru
9e40 63 74 20 69 6e 73 74 65 61 64 20 6f 66 20 75 73 69 6e 67 20 69 6e 74 3f 0d 0a 0d 0a 20 20 20 20 ct.instead.of.using.int?........
9e60 20 20 20 20 20 20 20 20 2f 2f 20 54 79 70 65 2d 63 68 65 63 6b 2e 0d 0a 20 20 20 20 20 20 20 20 ........//.Type-check...........
9e80 20 20 20 20 76 61 72 20 66 69 65 6c 64 54 79 70 65 20 3d 20 66 69 65 6c 64 2e 46 69 65 6c 64 54 ....var.fieldType.=.field.FieldT
9ea0 79 70 65 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 66 69 65 6c 64 54 79 70 65 20 ype;..............if.(fieldType.
9ec0 21 3d 20 74 79 70 65 6f 66 28 69 6e 74 29 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 !=.typeof(int)).................
9ee0 20 74 68 72 6f 77 20 6e 65 77 20 49 6e 76 61 6c 69 64 4f 70 65 72 61 74 69 6f 6e 45 78 63 65 70 .throw.new.InvalidOperationExcep
9f00 74 69 6f 6e 28 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 24 22 46 69 65 tion(......................$"Fie
9f20 6c 64 20 27 7b 6e 61 6d 65 7d 27 20 75 73 65 64 20 61 73 20 61 20 70 61 72 61 6d 65 74 65 72 20 ld.'{name}'.used.as.a.parameter.
9f40 6f 66 20 62 69 6e 64 69 6e 67 20 63 6f 6d 70 6f 73 69 74 65 20 27 7b 63 6f 6d 70 6f 73 69 74 65 of.binding.composite.'{composite
9f60 7d 27 20 6d 75 73 74 20 62 65 20 6f 66 20 74 79 70 65 20 27 69 6e 74 27 20 62 75 74 20 69 73 20 }'.must.be.of.type.'int'.but.is.
9f80 6f 66 20 74 79 70 65 20 27 7b 74 79 70 65 2e 4e 61 6d 65 7d 27 20 69 6e 73 74 65 61 64 22 29 3b of.type.'{type.Name}'.instead");
9fa0 0d 0a 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 2f 2f 52 45 56 49 45 57 3a 20 74 68 69 73 ................////REVIEW:.this
9fc0 20 63 72 65 61 74 65 20 67 61 72 62 61 67 65 3b 20 6e 65 65 64 20 61 20 62 65 74 74 65 72 20 73 .create.garbage;.need.a.better.s
9fe0 6f 6c 75 74 69 6f 6e 20 74 6f 20 67 65 74 20 74 6f 20 7a 65 72 6f 20 67 61 72 62 61 67 65 20 64 olution.to.get.to.zero.garbage.d
a000 75 72 69 6e 67 20 72 65 2d 72 65 73 6f 6c 76 69 6e 67 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 uring.re-resolving..............
a020 2f 2f 20 53 65 65 20 69 66 20 77 65 27 76 65 20 61 6c 72 65 61 64 79 20 61 73 73 69 67 6e 65 64 //.See.if.we've.already.assigned
a040 20 61 20 70 61 72 74 20 69 6e 64 65 78 2e 20 54 68 69 73 20 63 61 6e 20 68 61 70 70 65 6e 20 69 .a.part.index..This.can.happen.i
a060 66 20 74 68 65 72 65 20 61 72 65 20 6d 75 6c 74 69 70 6c 65 20 62 69 6e 64 69 6e 67 73 0d 0a 20 f.there.are.multiple.bindings...
a080 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 66 6f 72 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 64 ...........//.for.the.same.named
a0a0 20 73 6c 6f 74 20 6f 6e 20 74 68 65 20 63 6f 6d 70 6f 73 69 74 65 20 28 65 2e 67 2e 20 6d 75 6c .slot.on.the.composite.(e.g..mul
a0c0 74 69 70 6c 65 20 22 4e 65 67 61 74 69 76 65 22 20 62 69 6e 64 69 6e 67 73 20 6f 6e 20 61 6e 20 tiple."Negative".bindings.on.an.
a0e0 61 78 69 73 20 63 6f 6d 70 6f 73 69 74 65 29 2e 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 axis.composite)...............va
a100 72 20 70 61 72 74 49 6e 64 65 78 20 3d 20 28 69 6e 74 29 66 69 65 6c 64 2e 47 65 74 56 61 6c 75 r.partIndex.=.(int)field.GetValu
a120 65 28 63 6f 6d 70 6f 73 69 74 65 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 70 e(composite);..............if.(p
a140 61 72 74 49 6e 64 65 78 20 3d 3d 20 30 29 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0d 0a 20 artIndex.==.0)..............{...
a160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 4e 6f 2c 20 6e 6f 74 20 61 73 73 69 67 6e ...............//.No,.not.assign
a180 65 64 20 79 65 74 2e 20 43 72 65 61 74 65 20 6e 65 77 20 70 61 72 74 20 69 6e 64 65 78 2e 0d 0a ed.yet..Create.new.part.index...
a1a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 72 74 49 6e 64 65 78 20 3d 20 2b 2b 63 75 ................partIndex.=.++cu
a1c0 72 72 65 6e 74 43 6f 6d 70 6f 73 69 74 65 50 61 72 74 43 6f 75 6e 74 3b 0d 0a 20 20 20 20 20 20 rrentCompositePartCount;........
a1e0 20 20 20 20 20 20 20 20 20 20 66 69 65 6c 64 2e 53 65 74 56 61 6c 75 65 28 63 6f 6d 70 6f 73 69 ..........field.SetValue(composi
a200 74 65 2c 20 70 61 72 74 49 6e 64 65 78 29 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0d 0a te,.partIndex);..............}..
a220 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 70 61 72 74 49 6e 64 65 78 3b 0d ..............return.partIndex;.
a240 0a 20 20 20 20 20 20 20 20 7d 0d 0a 20 20 20 20 7d 0d 0a 7d 0d 0a 00 00 00 00 00 00 00 00 00 00 .........}......}..}............
a260 00 00 00 00 00 00 00 00 00 00 00 00 14 00 00 00 49 6e 70 75 74 42 69 6e 64 69 6e 67 52 65 73 6f ................InputBindingReso
a280 6c 76 65 72 00 00 00 00 lver....