Changeset 2118 for trunk/symbol_table
- Timestamp:
- May 18, 2012, 1:38:58 PM (7 years ago)
- Location:
- trunk/symbol_table
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/symbol_table/main_template.cpp
r2103 r2118 3 3 * Author: Ken Herdy 4 4 * 5 * A simple test driver that perform an 'identity' translation of CSV (single) seperate symbol values 6 * and prints results to standard output. 7 * 8 * Length sorted symbol table main. 9 * 10 * Lookahead versus Lookback 5 * A simple test driver. 6 * 7 * Lookahead versus COPYBACK 11 8 * 12 9 * The current implementation applies bit stream length grouping based on 'end' markers. … … 22 19 * contiguously in memory, BitBlock struct members are copied into contiguous memory positions. 23 20 * 24 * Design Considerations.25 *26 * (1) Hash table memory allocation.27 * (2) Negative shift values.28 * (3) Whether to specialized Hash/Symbol classes on symbol length...29 *30 21 */ 31 32 #undef IDISA_ALWAYS_INLINE33 22 34 23 #include "transpose.hpp" … … 84 73 85 74 /////////////////////////////////////////////////////////////////////////// 86 // Stream Definitions 87 /////////////////////////////////////////////////////////////////////////// 88 89 // Byte Segments - Raw byte streams - With lookback. 90 BitBlock aligned_buffer[SEGMENT_ALLOC_SIZE]; 91 uint8_t * lookback = (uint8_t *)aligned_buffer; 92 memset(lookback,0,LOOKBACK_SIZE); 93 uint8_t * raw_buffer = &lookback[LOOKBACK_SIZE]; 94 95 // Bit Segments - Hash bit streams - With lookback. 75 // Parallel Data Streams with optional CopyBack 76 /////////////////////////////////////////////////////////////////////////// 77 uint8_t * COPYBACK; 78 uint8_t * raw_buffer; 79 ALLOC_STATIC_ALIGNED_BYTE_BUFFER(COPYBACK, raw_buffer); 96 80 97 81 // hash 0 98 BitBlock aligned_h0[SEGMENT_ALLOC_SIZE/8]; 99 BitBlock * lookback_h0 = (BitBlock *) aligned_h0; 100 memset(lookback_h0,0,LOOKBACK_SIZE/BLOCK_SIZE); 101 BitBlock * h0 = &lookback_h0[LOOKBACK_SIZE/BLOCK_SIZE]; 82 BitBlock * COPYBACK_h0; 83 BitBlock * h0; 84 ALLOC_STATIC_ALIGNED_BITBLOCK_BUFFER(COPYBACK_h0, h0); 102 85 103 86 // hash 1 104 BitBlock aligned_h1[SEGMENT_ALLOC_SIZE/8]; 105 BitBlock * lookback_h1 = (BitBlock *) aligned_h1; 106 memset(lookback_h1,0,LOOKBACK_SIZE/BLOCK_SIZE); 107 BitBlock * h1 = &lookback_h1[LOOKBACK_SIZE/BLOCK_SIZE]; 87 BitBlock * COPYBACK_h1; 88 BitBlock * h1; 89 ALLOC_STATIC_ALIGNED_BITBLOCK_BUFFER(COPYBACK_h1, h1); 108 90 109 91 // starts 110 BitBlock aligned_starts[SEGMENT_ALLOC_SIZE/8]; 111 BitBlock * lookback_starts = (BitBlock *) aligned_starts; 112 memset(lookback_starts,0,LOOKBACK_SIZE/BLOCK_SIZE); 113 BitBlock * starts = &lookback_starts[LOOKBACK_SIZE/BLOCK_SIZE]; 92 BitBlock * COPYBACK_starts; 93 BitBlock * starts; 94 ALLOC_STATIC_ALIGNED_BITBLOCK_BUFFER(COPYBACK_starts, starts); 114 95 115 96 // follows_0 - Arbitrary length symbols 116 BitBlock aligned_follows_0[SEGMENT_ALLOC_SIZE/8]; 117 BitBlock * lookback_follows_0 = (BitBlock *) aligned_follows_0; 118 memset(lookback_follows_0,0,LOOKBACK_SIZE/BLOCK_SIZE); 119 BitBlock * follows_0 = &lookback_follows_0[LOOKBACK_SIZE/BLOCK_SIZE]; 120 121 // BitSteams - Without lookback 97 BitBlock * COPYBACK_follows_0; 98 BitBlock * follows_0; 99 ALLOC_STATIC_ALIGNED_BITBLOCK_BUFFER(COPYBACK_follows_0, follows_0); 100 101 /////////////////////////////////////////////////////////////////////////// 102 // Parallel Data Streams - No CopyBack 103 /////////////////////////////////////////////////////////////////////////// 104 122 105 Basis_bits basis_bits[SEGMENT_BLOCKS]; 123 106 Markers markers[SEGMENT_BLOCKS]; … … 159 142 PERF_SEC_END(parser_timer, SEGMENT_SIZE); 160 143 161 // copy loopback bytes 162 memmove(lookback,&raw_buffer[SEGMENT_SIZE-LOOKBACK_SIZE],LOOKBACK_SIZE); 163 // copy loopback bits 164 memmove(lookback_h0,&((uint8_t *)h0)[(SEGMENT_SIZE-LOOKBACK_SIZE)/8],LOOKBACK_SIZE/8); 165 memmove(lookback_h1,&((uint8_t *)h1)[(SEGMENT_SIZE-LOOKBACK_SIZE)/8],LOOKBACK_SIZE/8); 166 167 memmove(lookback_starts,&((uint8_t *)starts)[(SEGMENT_SIZE-LOOKBACK_SIZE)/8],LOOKBACK_SIZE/8); 168 memmove(lookback_follows_0,&((uint8_t *)follows_0)[(SEGMENT_SIZE-LOOKBACK_SIZE)/8],LOOKBACK_SIZE/8); 169 170 //lookback_h0[0] = h0[SEGMENT_BLOCKS-1]; 171 //lookback_h1[0] = h1[SEGMENT_BLOCKS-1]; 144 COPY_BACK_BYTE_BUFFER(COPYBACK, raw_buffer); 145 COPY_BACK_BITBLOCK_BUFFER(COPYBACK_h0,h0); 146 COPY_BACK_BITBLOCK_BUFFER(COPYBACK_h1,h1); 147 COPY_BACK_BITBLOCK_BUFFER(COPYBACK_starts,starts); 148 COPY_BACK_BITBLOCK_BUFFER(COPYBACK_follows_0,follows_0); 149 172 150 is.read ((char *)(raw_buffer), SEGMENT_SIZE); 173 151 chars_avail = is.gcount(); 174 152 175 // test176 153 #ifdef IDENTITY_TEST 177 178 cout << "," << endl; // prepend delimeter179 180 154 uint32_t blk_offset; 181 155 for(int blk=0;blk<SEGMENT_BLOCKS;blk++) { 182 156 blk_offset = blk * BLOCKSIZE; 183 157 gid_type gid; 184 ForwardScanner<BitBlock, scanword_t> fscanner(&(groups[blk].starts)); 185 186 fscanner.scan_to_next(); 187 while(!fscanner.is_done()) { 188 gid = gids.at[fscanner.get_pos() + blk_offset]; 189 cout << string((char *)st.get_raw_data(gid), st.get_lgth(gid)) << ","; 190 fscanner.scan_to_next(); 158 159 #ifdef INDEX_AT_FOLLOWS 160 ForwardScanner<BitBlock, scanword_t> scanner(&(groups[blk].follows)); 161 #else 162 ForwardScanner<BitBlock, scanword_t> scanner(&(groups[blk].starts)); 163 #endif 164 165 scanner.scan_to_next(); 166 while(!scanner.is_done()) { 167 gid = gids.at[scanner.get_pos() + blk_offset]; 168 cout << string((char *)st.get_raw_data(gid), st.get_lgth(gid)) << ","; 169 scanner.scan_to_next(); 191 170 } 192 171 } … … 240 219 blk_offset = blk * BLOCKSIZE; 241 220 gid_type gid; 242 ForwardScanner<BitBlock, scanword_t> fscanner(&(groups[blk].starts)); 243 244 fscanner.scan_to_next(); 245 while(!fscanner.is_done()) { 246 gid = gids.at[fscanner.get_pos() + blk_offset]; 221 222 #ifdef INDEX_AT_FOLLOWS 223 ForwardScanner<BitBlock, scanword_t> scanner(&(groups[blk].follows)); 224 #else 225 ForwardScanner<BitBlock, scanword_t> scanner(&(groups[blk].starts)); 226 #endif 227 228 scanner.scan_to_next(); 229 while(!scanner.is_done()) { 230 gid = gids.at[scanner.get_pos() + blk_offset]; 247 231 cout << string((char *)st.get_raw_data(gid), st.get_lgth(gid)) << ","; 248 fscanner.scan_to_next();232 scanner.scan_to_next(); 249 233 } 250 234 } -
trunk/symbol_table/src/Makefile
r2113 r2118 21 21 ########################################################################### 22 22 id: basis_bits.hpp buffer.hpp byte_pool.hpp hash_strms.hpp hash_table.hpp ../lib/hash.hpp group_strms.hpp symbol_table.hpp main.cpp marker_strms.hpp symbol_table.hpp transpose.hpp 23 $(CC) - o id main.cpp $(AFLAGS) -DID_STRATEGY -DBUFFER_PROFILING #-DID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG #-DHASH_TABLE_HPP_DEBUG23 $(CC) -E -o id main.cpp $(AFLAGS) -DID_STRATEGY -DBUFFER_PROFILING #-DID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG #-DHASH_TABLE_HPP_DEBUG 24 24 25 25 div2: basis_bits.hpp buffer.hpp byte_pool.hpp hash_strms.hpp hash_table.hpp ../lib/hash.hpp group_strms.hpp symbol_table.hpp main.cpp marker_strms.hpp symbol_table.hpp transpose.hpp … … 39 39 ########################################################################### 40 40 id_diff_test: id 41 $(CC) -o id main.cpp $(AFLAGS) -DID_STRATEGY -DIDENTITY_TEST 41 $(CC) -o id main.cpp $(AFLAGS) -DID_STRATEGY -DIDENTITY_TEST -DINDEX_AT_FOLLOWS 42 42 python $(TEST_SCRIPT) id -d 43 43 diff -rq --exclude=".svn" $(TEST_SRC_DIR) $(TEST_DST_DIR) || exit 0 44 44 45 45 div2_diff_test: div2 46 $(CC) -o div2 main.cpp $(AFLAGS) -DDIV2_STRATEGY -DIDENTITY_TEST 46 $(CC) -o div2 main.cpp $(AFLAGS) -DDIV2_STRATEGY -DIDENTITY_TEST -DINDEX_AT_FOLLOWS 47 47 python $(TEST_SCRIPT) div2 -d 48 48 diff -rq --exclude=".svn" $(TEST_SRC_DIR) $(TEST_DST_DIR) || exit 0 49 49 50 50 logbase2_diff_test: logbase2 51 $(CC) -o logbase2 main.cpp $(AFLAGS) -DLOGBASE2_STRATEGY -DIDENTITY_TEST 51 $(CC) -o logbase2 main.cpp $(AFLAGS) -DLOGBASE2_STRATEGY -DIDENTITY_TEST -DINDEX_AT_FOLLOWS 52 52 python $(TEST_SCRIPT) logbase2 -d 53 53 diff -rq --exclude=".svn" $(TEST_SRC_DIR) $(TEST_DST_DIR) || exit 0 54 54 55 55 div2_logbase2_diff_test: div2_logbase2 56 $(CC) -o div2_logbase2 main.cpp $(AFLAGS) -DDIV2_LOGBASE2_STRATEGY -DIDENTITY_TEST 56 $(CC) -o div2_logbase2 main.cpp $(AFLAGS) -DDIV2_LOGBASE2_STRATEGY -DIDENTITY_TEST -DINDEX_AT_FOLLOWS 57 57 python $(TEST_SCRIPT) div2_logbase2 -d 58 58 diff -rq --exclude=".svn" $(TEST_SRC_DIR) $(TEST_DST_DIR) || exit 0 59 59 60 60 bit_byte_diff_test: bit_byte 61 $(CC) -o bit_byte main.cpp $(AFLAGS) -DBIT_BYTE_STRATEGY -DIDENTITY_TEST 61 $(CC) -o bit_byte main.cpp $(AFLAGS) -DBIT_BYTE_STRATEGY -DIDENTITY_TEST -DINDEX_AT_FOLLOWS 62 62 python $(TEST_SCRIPT) bit_byte -d 63 63 diff -rq --exclude=".svn" $(TEST_SRC_DIR) $(TEST_DST_DIR) || exit 0 -
trunk/symbol_table/src/buffer.hpp
r2115 r2118 1 1 #ifndef BUFFER_HPP 2 2 #define BUFFER_HPP 3 /////////////////////////////////////////////////////////////////////////// 4 // Buffer Constants 5 /////////////////////////////////////////////////////////////////////////// 6 // 7 // NOTE: Buffer segments are defined as multiples of BLOCK_SIZE. 8 // BLOCK_SIZE defined as a number of bytes. 9 #define PADDING_BLOCKS 0 10 #define PADDING_SIZE (BLOCK_SIZE * PADDING_BLOCKS) 11 #define COPYBACK_BLOCKS 2 12 #define COPYBACK_SIZE (BLOCK_SIZE * COPYBACK_BLOCKS) 13 #define SEGMENT_BLOCKS 4 14 #define SEGMENT_SIZE (BLOCK_SIZE * SEGMENT_BLOCKS) 15 #define BUFFER_SIZE (COPYBACK_SIZE + SEGMENT_SIZE + PADDING_SIZE) 3 16 4 17 /////////////////////////////////////////////////////////////////////////// 5 // Buffer Management 18 // Statically Allocated Parallel Data Buffer Management 19 // 20 // Parallel data buffers with optional copyback/padding segments. 21 // 22 // |COPYBACK BLOCKS|WORKING SEGMENT BLOCKS|PADDING BLOCKS| 23 // 24 // WARNING: Statically allocated bitblock arrays must remain in scope. 25 // 6 26 /////////////////////////////////////////////////////////////////////////// 7 #define PADDING_BLOCKS 0 8 #define PADDING_SIZE BLOCK_SIZE * PADDING_BLOCKS 9 #define LOOKBACK_BLOCKS 4 10 #define LOOKBACK_SIZE BLOCK_SIZE * LOOKBACK_BLOCKS 11 #define SEGMENT_BLOCKS 5000 // Slurp file 12 #define SEGMENT_SIZE BLOCK_SIZE * (SEGMENT_BLOCKS) // A multiple of BLOCK_SIZE (n bytes) 13 #define SEGMENT_ALLOC_SIZE (LOOKBACK_SIZE + SEGMENT_SIZE + PADDING_SIZE) // / sizeof(BitBlock) 27 #define ALLOC_STATIC_ALIGNED_BYTE_BUFFER(copyback, base) \ 28 BitBlock aligned_##base[BUFFER_SIZE]; \ 29 copyback = (uint8_t *)aligned_##base; \ 30 memset(copyback,0,COPYBACK_SIZE); \ 31 base = ©back[COPYBACK_SIZE]; \ 32 33 #define ALLOC_STATIC_ALIGNED_BITBLOCK_BUFFER(copyback, base) \ 34 BitBlock aligned_##base[BUFFER_SIZE/8]; \ 35 copyback = (BitBlock *) aligned_##base; \ 36 memset(copyback,0,COPYBACK_SIZE/8); \ 37 base = ©back[COPYBACK_BLOCKS]; \ 38 39 #define COPY_BACK_BYTE_BUFFER(copyback, base) \ 40 do { memmove(copyback,&((uint8_t *)base)[SEGMENT_SIZE-COPYBACK_SIZE],COPYBACK_SIZE);\ 41 } while(0) 42 43 #define COPY_BACK_BITBLOCK_BUFFER(copyback, base) \ 44 do { memmove(copyback,&((uint8_t *)base)[(SEGMENT_SIZE-COPYBACK_SIZE)/8],COPYBACK_SIZE/8);\ 45 } while(0) 14 46 15 47 #endif // BUFFER_HPP -
trunk/symbol_table/src/symbol_table.hpp
r2113 r2118 36 36 37 37 #ifdef ID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG 38 static void print_symbol_debug(gid_type gid, const uint8_t buffer [], const int32_t spos, const uint32_t epos, const uint32_t lgth) {38 static void print_symbol_debug(gid_type gid, const uint8_t buffer [], const int32_t spos, const uint32_t fpos, const uint32_t lgth) { 39 39 cout << "{Symbol:{"; 40 40 cout << "GID:" << gid; … … 42 42 cout << ",Value:'" << string((char *)&(buffer[spos]), lgth) << "'"; 43 43 cout << ",Start:" << spos; 44 cout << ",Follows:" << epos;44 cout << ",Follows:" << fpos; 45 45 cout << "}}" << endl; 46 46 } … … 315 315 316 316 if(spos < 0) { // boundary case 317 #ifdef ID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG 318 cout << "Boundary Case: "; 319 #endif 320 317 321 spos = (BLOCK_SIZE - (-1 * spos)) & (BLOCK_SIZE - 1); 318 322 blk_count = (lgth/BLOCK_SIZE)+1; … … 324 328 gid = h_table.lookup_or_insert(buffer_base, spos, lgth, h0_base, h1_base, gid_factory, gid_data); // WARNING: spos must be >= 0 325 329 326 #ifdef I D_SYMBOL_STORE_SYMBOL_GIDS_AT_FOLLOW_POSITION327 gids.at[blk_offset + epos] = gid;330 #ifdef INDEX_AT_FOLLOWS 331 gids.at[blk_offset + fpos] = gid; 328 332 #else 329 gids.at[blk_offset + fpos - gid_data.get_bytes_lgth(gid)] = gid;333 gids.at[blk_offset + fpos - gid_data.get_bytes_lgth(gid)] = gid; 330 334 #endif 331 335 … … 372 376 373 377 while(starts_rscanner.is_done()) { // boundary case 374 starts_base--; 378 #ifdef ID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG 379 cout << "Boundary Case: "; 380 #endif 381 382 starts_base--; 375 383 376 384 blk_count++; … … 392 400 gid = h_table.lookup_or_insert(buffer_base, spos, lgth, h0_base, h1_base, gid_factory, gid_data); 393 401 394 #ifdef I D_SYMBOL_STORE_SYMBOL_GIDS_AT_END_POSITION395 gids.at[blk_offset + epos] = gid;402 #ifdef INDEX_AT_FOLLOWS 403 gids.at[blk_offset + fpos] = gid; 396 404 #else 397 gids.at[blk_offset + fpos - lgth] = gid;405 gids.at[blk_offset + fpos - lgth] = gid; 398 406 #endif 399 407 … … 419 427 gid_type gid; 420 428 int32_t spos; 421 int32_t epos;429 int32_t fpos; 422 430 ForwardScanner<BitBlock, scanword_t> fscanner(&follows); 423 431 424 432 fscanner.scan_to_next(); 425 epos = fscanner.get_pos();426 spos = ( epos - lgth);433 fpos = fscanner.get_pos(); 434 spos = (fpos - lgth); 427 435 428 436 if(!fscanner.is_done() && (spos < 0) ) { // block boundary case … … 445 453 446 454 #ifdef ID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG 447 print_symbol_debug(gid, lb_buffer, lb_spos, epos, lgth);455 print_symbol_debug(gid, lb_buffer, lb_spos, fpos, lgth); 448 456 #endif 449 457 450 458 fscanner.scan_to_next(); 451 epos = fscanner.get_pos();452 spos = ( epos - lgth);459 fpos = fscanner.get_pos(); 460 spos = (fpos - lgth); 453 461 454 462 } … … 460 468 461 469 #ifdef ID_SYMBOL_TABLE_TEMPLATE_HPP_DEBUG 462 print_symbol_debug(gid, buffer, spos, epos, lgth);470 print_symbol_debug(gid, buffer, spos, fpos, lgth); 463 471 #endif 464 472 465 473 fscanner.scan_to_next(); 466 epos = fscanner.get_pos();467 spos = ( epos - lgth);474 fpos = fscanner.get_pos(); 475 spos = (fpos - lgth); 468 476 } 469 477 -
trunk/symbol_table/symbol_table.pro.user
r2059 r2118 2 2 <qtcreator> 3 3 <data> 4 <variable>ProjectExplorer.Project.ActiveTarget</variable> 4 <variable>RunConfiguration0-BaseEnvironmentBase</variable> 5 <value type="int">2</value> 6 </data> 7 <data> 8 <variable>RunConfiguration0-CommandLineArguments</variable> 9 <valuelist type="QVariantList"/> 10 </data> 11 <data> 12 <variable>RunConfiguration0-ProFile</variable> 13 <value type="QString">symbol_table.pro</value> 14 </data> 15 <data> 16 <variable>RunConfiguration0-RunConfiguration.name</variable> 17 <value type="QString">symbol_table</value> 18 </data> 19 <data> 20 <variable>RunConfiguration0-UseDyldImageSuffix</variable> 21 <value type="bool">false</value> 22 </data> 23 <data> 24 <variable>RunConfiguration0-UseTerminal</variable> 25 <value type="bool">false</value> 26 </data> 27 <data> 28 <variable>RunConfiguration0-UserEnvironmentChanges</variable> 29 <valuelist type="QVariantList"/> 30 </data> 31 <data> 32 <variable>RunConfiguration0-UserSetName</variable> 33 <value type="bool">false</value> 34 </data> 35 <data> 36 <variable>RunConfiguration0-UserSetWorkingDirectory</variable> 37 <value type="bool">false</value> 38 </data> 39 <data> 40 <variable>RunConfiguration0-UserWorkingDirectory</variable> 41 <value type="QString"></value> 42 </data> 43 <data> 44 <variable>RunConfiguration0-type</variable> 45 <value type="QString">Qt4ProjectManager.Qt4RunConfiguration</value> 46 </data> 47 <data> 48 <variable>activeRunConfiguration</variable> 5 49 <value type="int">0</value> 6 50 </data> 7 51 <data> 8 <variable>ProjectExplorer.Project.EditorSettings</variable> 52 <variable>activebuildconfiguration</variable> 53 <value type="QString">Debug</value> 54 </data> 55 <data> 56 <variable>buildConfiguration-Debug</variable> 9 57 <valuemap type="QVariantMap"> 10 <value key="EditorConfiguration.Codec" type="QByteArray">System</value> 58 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value> 59 <value key="QtVersionId" type="int">0</value> 60 <value key="ToolChain" type="int">0</value> 61 <value key="buildConfiguration" type="int">2</value> 11 62 </valuemap> 12 63 </data> 13 64 <data> 14 <variable> ProjectExplorer.Project.Target.0</variable>65 <variable>buildConfiguration-Release</variable> 15 66 <valuemap type="QVariantMap"> 16 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Desktop</value> 17 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Desktop</value> 18 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.Target.DesktopTarget</value> 19 <value key="ProjectExplorer.Target.ActiveBuildConfiguration" type="int">0</value> 20 <value key="ProjectExplorer.Target.ActiveDeployConfiguration" type="int">0</value> 21 <value key="ProjectExplorer.Target.ActiveRunConfiguration" type="int">0</value> 22 <valuemap key="ProjectExplorer.Target.BuildConfiguration.0" type="QVariantMap"> 23 <valuemap key="ProjectExplorer.BuildConfiguration.BuildStepList.0" type="QVariantMap"> 24 <valuemap key="ProjectExplorer.BuildStepList.Step.0" type="QVariantMap"> 25 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 26 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 27 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">QtProjectManager.QMakeBuildStep</value> 28 <valuelist key="QtProjectManager.QMakeBuildStep.QMakeArguments" type="QVariantList"/> 29 <value key="QtProjectManager.QMakeBuildStep.QMakeForced" type="bool">false</value> 30 </valuemap> 31 <valuemap key="ProjectExplorer.BuildStepList.Step.1" type="QVariantMap"> 32 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 33 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 34 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.MakeStep</value> 35 <value key="Qt4ProjectManager.MakeStep.Clean" type="bool">false</value> 36 <valuelist key="Qt4ProjectManager.MakeStep.MakeArguments" type="QVariantList"/> 37 <value key="Qt4ProjectManager.MakeStep.MakeCommand" type="QString"></value> 38 </valuemap> 39 <value key="ProjectExplorer.BuildStepList.StepsCount" type="int">2</value> 40 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Build</value> 41 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Build</value> 42 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.BuildSteps.Build</value> 43 </valuemap> 44 <valuemap key="ProjectExplorer.BuildConfiguration.BuildStepList.1" type="QVariantMap"> 45 <valuemap key="ProjectExplorer.BuildStepList.Step.0" type="QVariantMap"> 46 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 47 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 48 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.MakeStep</value> 49 <value key="Qt4ProjectManager.MakeStep.Clean" type="bool">true</value> 50 <valuelist key="Qt4ProjectManager.MakeStep.MakeArguments" type="QVariantList"> 51 <value type="QString">clean</value> 52 </valuelist> 53 <value key="Qt4ProjectManager.MakeStep.MakeCommand" type="QString"></value> 54 </valuemap> 55 <value key="ProjectExplorer.BuildStepList.StepsCount" type="int">1</value> 56 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Clean</value> 57 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Clean</value> 58 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.BuildSteps.Clean</value> 59 </valuemap> 60 <value key="ProjectExplorer.BuildConfiguration.BuildStepListCount" type="int">2</value> 61 <value key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment" type="bool">false</value> 62 <valuelist key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges" type="QVariantList"/> 63 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Debug</value> 64 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Debug</value> 65 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.Qt4BuildConfiguration</value> 66 <value key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration" type="int">2</value> 67 <value key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory" type="QString">/home/nigelm/workspace2/icxml/src/xerces-c-3.1.1/src/symbol_table-build-desktop</value> 68 <value key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId" type="int">2</value> 69 <value key="Qt4ProjectManager.Qt4BuildConfiguration.ToolChain" type="int">0</value> 70 <value key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild" type="bool">true</value> 71 </valuemap> 72 <valuemap key="ProjectExplorer.Target.BuildConfiguration.1" type="QVariantMap"> 73 <valuemap key="ProjectExplorer.BuildConfiguration.BuildStepList.0" type="QVariantMap"> 74 <valuemap key="ProjectExplorer.BuildStepList.Step.0" type="QVariantMap"> 75 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 76 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 77 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">QtProjectManager.QMakeBuildStep</value> 78 <valuelist key="QtProjectManager.QMakeBuildStep.QMakeArguments" type="QVariantList"/> 79 <value key="QtProjectManager.QMakeBuildStep.QMakeForced" type="bool">false</value> 80 </valuemap> 81 <valuemap key="ProjectExplorer.BuildStepList.Step.1" type="QVariantMap"> 82 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 83 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 84 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.MakeStep</value> 85 <value key="Qt4ProjectManager.MakeStep.Clean" type="bool">false</value> 86 <valuelist key="Qt4ProjectManager.MakeStep.MakeArguments" type="QVariantList"/> 87 <value key="Qt4ProjectManager.MakeStep.MakeCommand" type="QString"></value> 88 </valuemap> 89 <value key="ProjectExplorer.BuildStepList.StepsCount" type="int">2</value> 90 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Build</value> 91 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Build</value> 92 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.BuildSteps.Build</value> 93 </valuemap> 94 <valuemap key="ProjectExplorer.BuildConfiguration.BuildStepList.1" type="QVariantMap"> 95 <valuemap key="ProjectExplorer.BuildStepList.Step.0" type="QVariantMap"> 96 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString"></value> 97 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString"></value> 98 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.MakeStep</value> 99 <value key="Qt4ProjectManager.MakeStep.Clean" type="bool">true</value> 100 <valuelist key="Qt4ProjectManager.MakeStep.MakeArguments" type="QVariantList"/> 101 <value key="Qt4ProjectManager.MakeStep.MakeCommand" type="QString"></value> 102 </valuemap> 103 <value key="ProjectExplorer.BuildStepList.StepsCount" type="int">1</value> 104 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Clean</value> 105 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Clean</value> 106 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.BuildSteps.Clean</value> 107 </valuemap> 108 <value key="ProjectExplorer.BuildConfiguration.BuildStepListCount" type="int">2</value> 109 <value key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment" type="bool">false</value> 110 <valuelist key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges" type="QVariantList"/> 111 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Release</value> 112 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Release</value> 113 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.Qt4BuildConfiguration</value> 114 <value key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration" type="int">0</value> 115 <value key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory" type="QString">/home/nigelm/workspace2/icxml/src/xerces-c-3.1.1/src/symbol_table-build-desktop</value> 116 <value key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId" type="int">2</value> 117 <value key="Qt4ProjectManager.Qt4BuildConfiguration.ToolChain" type="int">0</value> 118 <value key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild" type="bool">true</value> 119 </valuemap> 120 <value key="ProjectExplorer.Target.BuildConfigurationCount" type="int">2</value> 121 <valuemap key="ProjectExplorer.Target.DeployConfiguration.0" type="QVariantMap"> 122 <valuemap key="ProjectExplorer.BuildConfiguration.BuildStepList.0" type="QVariantMap"> 123 <value key="ProjectExplorer.BuildStepList.StepsCount" type="int">0</value> 124 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">Deploy</value> 125 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">Deploy</value> 126 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.BuildSteps.Deploy</value> 127 </valuemap> 128 <value key="ProjectExplorer.BuildConfiguration.BuildStepListCount" type="int">1</value> 129 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">No deployment</value> 130 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">No deployment</value> 131 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">ProjectExplorer.DefaultDeployConfiguration</value> 132 </valuemap> 133 <value key="ProjectExplorer.Target.DeployConfigurationCount" type="int">1</value> 134 <valuemap key="ProjectExplorer.Target.RunConfiguration.0" type="QVariantMap"> 135 <value key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName" type="QString">symbol_table</value> 136 <value key="ProjectExplorer.ProjectConfiguration.DisplayName" type="QString">symbol_table</value> 137 <value key="ProjectExplorer.ProjectConfiguration.Id" type="QString">Qt4ProjectManager.Qt4RunConfiguration</value> 138 <value key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase" type="int">2</value> 139 <valuelist key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments" type="QVariantList"/> 140 <value key="Qt4ProjectManager.Qt4RunConfiguration.ProFile" type="QString">symbol_table.pro</value> 141 <value key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix" type="bool">false</value> 142 <value key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal" type="bool">false</value> 143 <valuelist key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges" type="QVariantList"/> 144 <value key="Qt4ProjectManager.Qt4RunConfiguration.UserSetWorkingDirectory" type="bool">false</value> 145 <value key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory" type="QString"></value> 146 <value key="RunConfiguration.QmlDebugServerPort" type="uint">3768</value> 147 <value key="RunConfiguration.UseCppDebugger" type="bool">true</value> 148 <value key="RunConfiguration.UseQmlDebugger" type="bool">false</value> 149 </valuemap> 150 <value key="ProjectExplorer.Target.RunConfigurationCount" type="int">1</value> 67 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value> 68 <value key="QtVersionId" type="int">0</value> 69 <value key="buildConfiguration" type="int">0</value> 151 70 </valuemap> 152 71 </data> 153 72 <data> 154 <variable>ProjectExplorer.Project.TargetCount</variable> 155 <value type="int">1</value> 73 <variable>buildconfiguration-Debug-buildstep0</variable> 74 <valuemap type="QVariantMap"> 75 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value> 76 </valuemap> 156 77 </data> 157 78 <data> 158 <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable> 159 <value type="QString">{3369d8a0-08d7-4ba0-929a-410d90a79a51}</value> 79 <variable>buildconfiguration-Debug-buildstep1</variable> 80 <valuemap type="QVariantMap"> 81 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value> 82 </valuemap> 160 83 </data> 161 84 <data> 162 <variable>ProjectExplorer.Project.Updater.FileVersion</variable> 163 <value type="int">8</value> 85 <variable>buildconfiguration-Debug-cleanstep0</variable> 86 <valuemap type="QVariantMap"> 87 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Debug</value> 88 <value key="cleanConfig" type="bool">true</value> 89 <valuelist key="makeargs" type="QVariantList"> 90 <value type="QString">clean</value> 91 </valuelist> 92 </valuemap> 93 </data> 94 <data> 95 <variable>buildconfiguration-Release-buildstep0</variable> 96 <valuemap type="QVariantMap"> 97 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value> 98 </valuemap> 99 </data> 100 <data> 101 <variable>buildconfiguration-Release-buildstep1</variable> 102 <valuemap type="QVariantMap"> 103 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value> 104 </valuemap> 105 </data> 106 <data> 107 <variable>buildconfiguration-Release-cleanstep0</variable> 108 <valuemap type="QVariantMap"> 109 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString">Release</value> 110 </valuemap> 111 </data> 112 <data> 113 <variable>buildconfigurations</variable> 114 <valuelist type="QVariantList"> 115 <value type="QString">Debug</value> 116 <value type="QString">Release</value> 117 </valuelist> 118 </data> 119 <data> 120 <variable>buildstep0</variable> 121 <valuemap type="QVariantMap"> 122 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value> 123 <value key="mkspec" type="QString"></value> 124 </valuemap> 125 </data> 126 <data> 127 <variable>buildstep1</variable> 128 <valuemap type="QVariantMap"> 129 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value> 130 </valuemap> 131 </data> 132 <data> 133 <variable>buildsteps</variable> 134 <valuelist type="QVariantList"> 135 <value type="QString">trolltech.qt4projectmanager.qmake</value> 136 <value type="QString">trolltech.qt4projectmanager.make</value> 137 </valuelist> 138 </data> 139 <data> 140 <variable>cleanstep0</variable> 141 <valuemap type="QVariantMap"> 142 <value key="ProjectExplorer.BuildConfiguration.DisplayName" type="QString"></value> 143 <value key="clean" type="bool">true</value> 144 </valuemap> 145 </data> 146 <data> 147 <variable>cleansteps</variable> 148 <valuelist type="QVariantList"> 149 <value type="QString">trolltech.qt4projectmanager.make</value> 150 </valuelist> 151 </data> 152 <data> 153 <variable>defaultFileEncoding</variable> 154 <value type="QByteArray">System</value> 155 </data> 156 <data> 157 <variable>project</variable> 158 <valuemap type="QVariantMap"/> 164 159 </data> 165 160 </qtcreator>
Note: See TracChangeset
for help on using the changeset viewer.