/***************************************************************************** # Copyright (C) 1994-2008 by David Gordon. # All rights reserved. # # This software is part of a beta-test version of the Consed/Autofinish # package. It should not be redistributed or # used for any commercial purpose, including commercially funded # sequencing, without written permission from the author and the # University of Washington. # # This software is provided ``AS IS'' and any express or implied # warranties, including, but not limited to, the implied warranties of # merchantability and fitness for a particular purpose, are disclaimed. # In no event shall the authors or the University of Washington be # liable for any direct, indirect, incidental, special, exemplary, or # consequential damages (including, but not limited to, procurement of # substitute goods or services; loss of use, data, or profits; or # business interruption) however caused and on any theory of liability, # whether in contract, strict liability, or tort (including negligence # or otherwise) arising in any way out of the use of this software, even # if advised of the possibility of such damage. # # Building Consed from source is error prone and not simple which is # why I provide executables. Due to time limitations I cannot # provide any assistance in building Consed. Even if you do not # modify the source, you may introduce errors due to using a # different version of the compiler, a different version of motif, # different versions of other libraries than I used, etc. For this # reason, if you discover Consed bugs, I can only offer help with # those bugs if you first reproduce those bugs with an executable # provided by me--not an executable you have built. # # Modifying Consed is also difficult. Although Consed is modular, # some modules are used by many other modules. Thus making a change # in one place can have unforeseen effects on many other features. # It may takes months for you to notice these other side-effects # which may not seen connected at all. It is not feasable for me to # provide help with modifying Consed sources because of the # potentially huge amount of time involved. # #*****************************************************************************/ #include #include #include #include #include "consedResources.h" #include "filename.h" #include "rwcregexp.h" #include #include "assert.h" #include "fallbackConsedResources.h" #include "bIsNumericMaybeWithWhitespace.h" #include "bIsNumericDouble.h" #include #include "consed_version.h" consedResources* consedResources::pDefaultResources_ = NULL; consedResources* consedResources::pEnvVariableResources_ = NULL; consedResources* consedResources::pUsersHomeResources_ = NULL; consedResources* consedResources::pCurrentDirectoryResources_ = NULL; consedResources* consedResources::pCurrentResources_ = NULL; RWCString consedResources::soConsedHome_; #define PARSE_PANIC( szMessage ) \ { \ cerr << szMessage << endl \ << "Error in file " << soFilenameStatic << " at line " \ << nCurrentLineStatic << ". Line:\n" \ << soResourceLine << endl \ << "or:" << endl \ << szLine << endl \ << " consed resources error detected from source file " \ << __FILE__ << " at " << __LINE__ << endl \ << szConsedVersion << endl \ << ends; \ exit( EXIT_FAILURE ); \ } #define BAD_VALUE( szMessage, szValue ) \ { \ cerr << szMessage << endl \ << "Value: \"" << szValue << "\"" \ << "Error in file " << soFilenameStatic << " at line " \ << nCurrentLineStatic << ". Line (soResourceLine):\n" \ << soResourceLine << endl \ << "or (szLine):" << endl \ << szLine << endl \ << " source file: " \ << __FILE__ << " at " << __LINE__ << endl \ << szConsedVersion << endl \ << ends; \ exit( EXIT_FAILURE ); \ } #define SZLINE_SIZE 100000 char szLine[SZLINE_SIZE]; RWCString soFilenameStatic; int nCurrentLineStatic; void consedResources :: setConsedHome() { char* pConsedHome = getenv( "CONSED_HOME" ); if ( !pConsedHome ) { // cerr << "CONSED_HOME is not set--that is ok. Will use /usr/local/genome" << endl; soConsedHome_ = "/usr/local/genome"; } else { soConsedHome_ = pConsedHome; } } void consedResources :: getConsedResources( ) { setConsedHome(); // put the fallback resources in an instanciation of the resources object pDefaultResources_ = new consedResources(); loadDefaultResources(); // added 12/08 so doesn't print out resources just because // they contain $CONSED_HOME in the default pDefaultResources_->translateCONSED_HOMEForAllResources(); // if global variable is set, open that file and set the global resources pEnvVariableResources_ = new consedResources(); (*pEnvVariableResources_) = (*pDefaultResources_ ); loadEnvVariableResources(); // load resources from ~/.consedrc or ~/.Xdefaults (if the former doesn't // exist) pUsersHomeResources_ = new consedResources(); (*pUsersHomeResources_ ) = (*pEnvVariableResources_ ); loadUsersHomeResources(); // load resources from ./.consedrc pCurrentDirectoryResources_ = new consedResources(); (*pCurrentDirectoryResources_) = (*pUsersHomeResources_); loadCurrentDirectoryResources(); pCurrentResources_ = pCurrentDirectoryResources_; pCurrentResources_->translateCONSED_HOMEForAllResources(); pCurrentResources_->additionalChecksOnResources(); } // this is useful for doing checks that depend on combinations // of resources, rather than just one resource at a time void consedResources :: additionalChecksOnResources() { if ( ! ( nAutoFinishPotentialHighQualityPartOfReadStart_ < nAutoFinishPotentialHighQualityPartOfReadEnd_ ) ) { cerr << "Error: you must have consed.autoFinishPotentialHighQualityPartOfReadStart < consed.autoFinishPotentialHighQualityPartOfReadEnd but consed.autoFinishPotentialHighQualityPartOfReadStart = " << nAutoFinishPotentialHighQualityPartOfReadStart_ << " and consed.autoFinishPotentialLowQualityPartOfReadEnd = " << nAutoFinishPotentialHighQualityPartOfReadEnd_ << endl; exit( EXIT_FAILURE ); } if ( dAutoFinishRedundancy_ <= 0 ) { cerr << "Error: consed.autoFinishRedundancy must be > 0 but instead is " << dAutoFinishRedundancy_ << endl; exit( EXIT_FAILURE ); } if ( nAutoFinishCallHowManyReversesToFlankGaps_ <= 0 ) { cerr << "consed.autoFinishCallHowManyReversesToFlankGaps must be positive. If you want to turn off gap-flanking reverses, do it by using consed.autoFinishCallReversesToFlankGaps: false" << endl; cerr << "consed.autoFinishCallHowManyReversesToFlankGaps is used to determine how many fwd/rev pairs are required to be confident in a particular order/orientation of two contigs so clearly it must be at least 1." << endl; exit( EXIT_FAILURE ); } if ( nAutoFinishHowManyTemplatesYouIntendToUseForCustomPrimerSubcloneReactions_ < 1 ) { cerr << "consed.autoFinishHowManyTemplatesYouIntendToUseForCustomPrimerSubcloneReactions must be at least 1" << endl; cerr << "if you are attempting to shut off custom primer subclone reactions, do it by using consed.autoFinishAllowCustomPrimerSubcloneReads: false" << endl; exit( EXIT_FAILURE ); } if ( bShowReadsAlphabetically_ && bShowReadsInAlignedReadsWindowOrderedByFile_ ) { cerr << "consed.showReadsAlphabetically and consed.showReadsInAlignedReadsWindowOrderGivenByFile must not both be true" << endl; exit( EXIT_FAILURE ); } if ( soAlwaysRunProgramToGetChromats_ != "true" && soAlwaysRunProgramToGetChromats_ != "false" && soAlwaysRunProgramToGetChromats_ != "last" ) { cerr << "consed.alwaysRunProgramToGetChromats was " << soAlwaysRunProgramToGetChromats_ << " but must be either true, false or last. last means that the program will first try to find the chromat in chromat_dir and then, if the read is a 454 read, will try to use sff2scf. If all of these fail, it will then try the program consed.programToRunToGetChromats" << endl; exit( EXIT_FAILURE ); } } void consedResources :: loadDefaultResources() { int n = 0; for( n = 0; aszFallbackConsedResources[ n ] != NULL; ++n ) { RWCString soResourceLine = aszFallbackConsedResources[n]; parseResourceLine( pDefaultResources_, soResourceLine, true, false ); } } void consedResources :: loadEnvVariableResources( ) { char* pConsedParameters = getenv( "CONSED_PARAMETERS" ); if ( !pConsedParameters ) { // cerr << "CONSED_PARAMETERS is not set--that is ok" << endl; return; } soFilenameStatic = pConsedParameters; FILE* pEnvVariableFile = fopen( pConsedParameters, "r" ); if ( !pEnvVariableFile ) { cerr << "Error: CONSED_PARAMETERS is set to " << pConsedParameters << " but couldn't open that file due to error " << errno << " " << strerror( errno ) << endl; exit( EXIT_FAILURE ); } nCurrentLineStatic = 0; bool bEndOfFile = false; do { if ( fgets( szLine, SZLINE_SIZE, pEnvVariableFile ) == NULL ) bEndOfFile = true; else { ++nCurrentLineStatic; parseResourceLine( pEnvVariableResources_, szLine, true, false ); } } while( !bEndOfFile ); fclose( pEnvVariableFile ); } void consedResources :: loadUsersHomeResources() { char* pHOME = getenv( "HOME" ); if ( !pHOME ) { cerr << "something is really screwed up because HOME is not set. Thus no user-defined resources can be set" << endl; return; } FileName filUserResources = pHOME; filUserResources += "/.consedrc"; bool bUsingConsedrc = true; if ( !filUserResources.bFileByThisNameExists() ) { bUsingConsedrc = false; filUserResources = pHOME; filUserResources += "/.Xdefaults"; // if neither file exists, just return if ( !filUserResources.bFileByThisNameExists() ) { cerr << "no ~/.consedrc file so no user resources will be used--that's ok" << endl; return; } } soFilenameStatic = filUserResources; FILE* pUserResourcesFile = fopen( (char*) filUserResources.data(), "r" ); if ( !pUserResourcesFile ) { cerr << "Error: couldn't open user resources file " << (char*) filUserResources.data() << " due to error " << errno << " " << strerror( errno ) << endl; exit( EXIT_FAILURE ); } // if we are parsing .Xdefaults, then allow resources from elsewhere // than consed bool bAllowResourcesNotFromConsed = ( bUsingConsedrc ? false : true ); nCurrentLineStatic = 0; bool bEndOfFile = false; do { if ( fgets( szLine, SZLINE_SIZE, pUserResourcesFile ) == NULL ) bEndOfFile = true; else { ++nCurrentLineStatic; parseResourceLine( pUsersHomeResources_, szLine, true, bAllowResourcesNotFromConsed ); } } while( !bEndOfFile ); fclose( pUserResourcesFile ); } void consedResources :: loadCurrentDirectoryResources() { const int nBigNumber = 500; char szCurrentDirectory[ nBigNumber+10 ]; getcwd( szCurrentDirectory, nBigNumber ); FileName filCurrentDirectoryResourcesFile = szCurrentDirectory; filCurrentDirectoryResourcesFile += "/.consedrc"; if ( !filCurrentDirectoryResourcesFile.bFileByThisNameExists() ) { cerr << "no ./.consedrc file so no project-specific resources--that's ok" << endl; return; } soFilenameStatic = filCurrentDirectoryResourcesFile; FILE* pCurrentDirectoryResourcesFile = fopen( (char*) filCurrentDirectoryResourcesFile.data(), "r" ); if ( !pCurrentDirectoryResourcesFile ) { cerr << "Error: couldn't open current directory resources file " << (char*) filCurrentDirectoryResourcesFile.data() << " due to error " << errno << " " << strerror( errno ) << endl; exit( EXIT_FAILURE ); } nCurrentLineStatic = 0; bool bEndOfFile = false; do { if ( fgets( szLine, SZLINE_SIZE, pCurrentDirectoryResourcesFile ) == NULL ) bEndOfFile = true; else { ++nCurrentLineStatic; parseResourceLine( pCurrentDirectoryResources_, szLine, true, // allow whitespace and comments false ); // allow resources other than consed } } while( !bEndOfFile ); fclose( pCurrentDirectoryResourcesFile ); } void consedResources :: parseResourceLine( consedResources* pRes, const RWCString& soResourceLine, const bool bAllowWhitespaceAndComments, const bool bAllowResourcesOtherThanConsed ) { if ( bAllowWhitespaceAndComments ) { if ( soResourceLine.length() == 0 ) return; if ( soResourceLine[0] == '!' ) return; // check if entire line is whitespace RWCRegexp regWhitespace( "^[ \t\n\r]*$" ); if ( soResourceLine( regWhitespace ) == soResourceLine ) return; } int nTemp = soResourceLine.index( "consed."); if ( nTemp == RW_NPOS ) { if ( bAllowResourcesOtherThanConsed ) return; else PARSE_PANIC( "line doesn't begin with consed." ) } int nColon = soResourceLine.index( ":" ); if ( nColon == RW_NPOS ) PARSE_PANIC( "resource line doesn't have \":\" in it" ) // if reached here, line starts with consed.xxxx: RWCString soResourceName = soResourceLine(0, nColon ); RWCString soResourceValue; bool bThereIsAResourceValue = true; if ( nColon + 1 >= soResourceLine.length() ) bThereIsAResourceValue = false; else { soResourceValue = (soResourceLine.soGetRestOfString( nColon + 1 )).stripWhitespace( RWCString::BOTH ); if (soResourceValue.isNull() ) bThereIsAResourceValue = false; } if ( !bThereIsAResourceValue ) { // resource is not set, which normally indicates an error // Put all resources here for which it is ok to have no default value. if ( soResourceName.index( "consed.tagColorCustomTag" ) == RW_NPOS && soResourceName.index( "consed.customTag" ) == RW_NPOS && soResourceName.index( "consed.tagColorCustomConsensusTag" ) == RW_NPOS && soResourceName.index( "consed.customConsensusTag" ) == RW_NPOS && soResourceName.index( "consed.fileOfAdditionalRestrictionEnzymes" ) == RW_NPOS && soResourceName.index( "consed.defaultVectorPathnameForRestrictionFragments" ) == RW_NPOS && soResourceName.index( "consed.fileOfTagTypes" ) == RW_NPOS && soResourceName.index( "consed.dumpContigOrderAndOrientationInfoToThisFile" ) == RW_NPOS && soResourceName.index( "consed.assemblyViewOnlyShowSequenceMatchesToThisContig" ) == RW_NPOS && soResourceName.index( "consed.userWantsToSaveToThisAceFile" ) == RW_NPOS && soResourceName.index( "consed.autoReportPrintDiscrepantRegionsButIgnoreReadsContainingThis" ) == RW_NPOS ) { PARSE_PANIC( "resource line has consed.xxxx: with nothing following it" ) } else // don't set anything since no value return; } if ( soResourceName == "consed.consensusTagColorRepeat" ) { pRes->soTagColorRepeat_ = soResourceValue; return; } if ( soResourceName == "consed.nMaximumNumberOfTracesShown" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaximumNumberOfTracesShown_ ) ) BAD_VALUE( "value for resource consed.nMaximumNumberOfTracesShown must be numeric", soResourceValue ); return; } if ( soResourceName == "consed.showProteinTranslation" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bShowProteinTranslation_ = true; else if ( soResourceValue == "false" ) pRes->bShowProteinTranslation_ = false; else BAD_VALUE( "value for resource consed.showProteinTranslation must be either true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersMinInsertSizeOfASubclone" ) { cerr << "Warning: resource consed.primersMinInsertSizeOfASubclone is no longer used. Instead, use consed.autoFinishIfNotEnoughFwdRevPairUseThisPerCentOfInsertSize for the same effect." << endl; return; } // this is for compatibility with the old name for this parameter if ( soResourceName == "consed.autoFinishCostOfUniversalPrimerSubcloneReaction" ) { cerr << "Warning: change resource name in .consedrc file from old name: \nconsed.autoFinishCostOfUniversalPrimerSubcloneReaction\nto new name\nconsed.autoFinishCostOfResequencingUniversalPrimerSubcloneReaction" << endl; if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfResequencingUniversalPrimerSubcloneReaction_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfUniversalPrimerSubcloneReaction must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.primersALittleLessThanAverageInsertSizeOfASubclone" ) { cerr << "Warning: consed.primersALittleLessThanAverageInsertSizeOfASubclone is no longer used. Instead, use consed.autoFinishIfNotEnoughFwdRevPairUseThisPerCentOfInsertSize for the same effect." << endl; return; } if ( soResourceName == "consed.autoFinishCreateExpSummaryFiles" ) { cerr << "Warning: consed.autoFinishCreateExpSummaryFiles is no longer used." << endl; return; } if ( soResourceName == "consed.autoFinishMinNumberOfForwardReversePairsToCalculateAverageInsertSize" ) { cerr << "Warning: consed.autoFinishMinNumberOfForwardReversePairsToCalculateAverageInsertSize is not longer used. It is superceded by consed.autoFinishMinNumberOfForwardReversePairsInLibraryToCalculateAverageInsertSize" << endl; return; } if ( soResourceName == "consed.autoFinishIfNotEnoughFwdRevPairUseThisPerCentOfInsertSize" ) { cerr << "Warning: consed.autoFinishIfNotEnoughFwdRevPairUseThisPerCentOfInsertSize superceded by consed.autoFinishIfNotEnoughFwdRevPairsUseThisPerCentOfInsertSize (just changed Pair to Pairs)" << endl; exit( 1 ); } if ( soResourceName == "consed.autoFinishNumberOfGapClosingReadsPerContigEnd" ) { cerr << "Warning: consed.autoFinishNumberOfGapClosingReadsPerContigEnd is no longer used." << endl; return; } if ( soResourceName == "consed.autoFinishTryHarderToSuggestExperimentsToCoverLowQualityRegions" ) { cerr << "Warning: consed.autoFinishTryHarderToSuggestExperimentsToCoverLowQualityRegions is no longer used." << endl; return; } if ( soResourceName == "consed.autoFinishLookForRepeatedForwardUniversalPrimerReadThisFarAway" ) { cerr << "Warning: consed.autoFinishLookForRepeatedForwardUniversalPrimerReadThisFarAway is no longer used." << endl; return; } if ( soResourceName == "consed.autoFinishExcludeContigIfDepthOfCoverageOutOfLine" ) { cerr << "Warning: consed.autoFinishExcludeContigIfDepthOfCoverageOutOfLine is no longer used and is superceded by consed.autoFinishExcludeContigIfDepthOfCoverageGreaterThanThis" << endl; return; } if ( soResourceName == "consed.autoFinishExcludeContigIfDepthOfCoverageThisMuchMoreThanLargestContig" ) { cerr << "Warning: consed.autoFinishExcludeContigIfDepthOfCoverageThisMuchMoreThanLargestContig is no longer used and is superceded by consed.autoFinishExcludeContigIfDepthOfCoverageGreaterThanThis" << endl; return; } if ( soResourceName == "consed.autoFinishModelReadLengthForPoorQualityProjects" ) { cerr << "Warning: consed.autoFinishModelReadLengthForPoorQualityProjects is no longer used" << endl; return; } if ( soResourceName == "consed.autoFinishExcludeContigIfTooShort" ) { cerr << "Warning: consed.autoFinishExcludeContigIfTooShort is no longer used. Instead use consed.autoFinishExcludeContigIfThisManyBasesOrLess which can even be 0" << endl; return; } if ( soResourceName == "consed.showReadsSortedByQualityValuesAtCursor" ) { cerr << "Warning: consed.showReadsSortedByQualityValuesAtCursor is no longer used. Instead use consed.showReadsAtCursorSortedHow: which can take values quality, base, or none. Note that currently this only applies when the cursor is set on the consensus position. When scrolling, the reads are sorted according to consed.showReadsAlphabetically and consed.showReadsInAlignedReadsWindowOrderedByFile" << endl; return; } if ( soResourceName == "consed.addNewReadsExtendConsensusUsingProtrudingNewReads" ) { PARSE_PANIC( "FATAL: consed.addNewReadsExtendConsensusUsingProtrudingNewReads is no longer used. Instead, add new reads without extending and then use consed -ace (ace file) -fixContigEnds" ); } if ( soResourceName == "consed.addNewReadsExtendConsensusScript" ) { cerr << "Warning: consed.addNewReadsExtendConsensusScript is no longer used. If you are trying to extend the consensus, use consed (ace file) -fixContigEnds" << endl; return; } if ( soResourceName == "consed.colorHighlightBackground" ) { pRes->soColorHighlightBackground_ = soResourceValue; return; } if ( soResourceName == "consed.colorHighlightForegroundX" ) { pRes->soColorHighlightForegroundX_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansMatch_same" ) { pRes->soColorMeansMatch_same_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansMatch_different" ) { pRes->soColorMeansMatch_different_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansMatch_clippedEnds" ) { pRes->soColorMeansMatch_clippedEnds_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansMatch_consensus" ) { pRes->soColorMeansMatch_consensus_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansMatch_lowQualConsensus" ) { pRes->soColorMeansMatch_lowQualConsensus_ = soResourceValue; return; } if ( soResourceName == "consed.colorConsensusLabel" ) { pRes->soColorConsensusLabel_ = soResourceValue; return; } if ( soResourceName == "consed.colorConsensusLabelBackground" ) { pRes->soColorConsensusLabelBackground_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQualityAgree" ) { pRes->soColorMeansQualityAgree_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQualityDisagree" ) { pRes->soColorMeansQualityDisagree_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQualityConsensusForeground" ) { pRes->soColorMeansQualityConsensusForeground_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality0_4" ) { pRes->soColorMeansQuality0_4_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality5_9" ) { pRes->soColorMeansQuality5_9_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality10_14" ) { pRes->soColorMeansQuality10_14_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality15_19" ) { pRes->soColorMeansQuality15_19_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality20_24" ) { pRes->soColorMeansQuality20_24_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality25_29" ) { pRes->soColorMeansQuality25_29_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality30_34" ) { pRes->soColorMeansQuality30_34_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality35_39" ) { pRes->soColorMeansQuality35_39_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality40_97" ) { pRes->soColorMeansQuality40_97_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality98" ) { pRes->soColorMeansQuality98_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansQuality99" ) { pRes->soColorMeansQuality99_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansEditedAgree" ) { pRes->soColorMeansEditedAgree_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansEditedDisagree" ) { pRes->soColorMeansEditedDisagree_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansEditedUnedited" ) { pRes->soColorMeansEditedUnedited_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansEdited98" ) { pRes->soColorMeansEdited98_ = soResourceValue; return; } if ( soResourceName == "consed.colorMeansEdited99" ) { pRes->soColorMeansEdited99_ = soResourceValue; return; } if ( soResourceName == "consed.colorVerticalScrollbarScrolledDown" ) { pRes->soColorVerticalScrollbarScrolledDown_ = soResourceValue; return; } if ( soResourceName == "consed.colorMode_editCursorForeground" ) { pRes->soColorMode_editCursorForeground_ = soResourceValue; return; } if ( soResourceName == "consed.colorMode_editCursorBackground" ) { pRes->soColorMode_editCursorBackground_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesA" ) { pRes->soColorTracesA_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesC" ) { pRes->soColorTracesC_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesG" ) { pRes->soColorTracesG_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesT" ) { pRes->soColorTracesT_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesN" ) { pRes->soColorTracesN_ = soResourceValue; return; } if ( soResourceName == "consed.colorTracesPad" ) { pRes->soColorTracesPad_ = soResourceValue; return; } if ( soResourceName == "consed.colorScale" ) { pRes->soColorScale_ = soResourceValue; return; } if ( soResourceName == "consed.colorScaleBackground" ) { pRes->soColorScaleBackground_ = soResourceValue; return; } if ( soResourceName == "consed.colorHighlightedReadNames" ) { pRes->soColorHighlightedReadNames_ = soResourceValue; return; } if ( soResourceName == "consed.colorSequencingDirectionArrow" ) { pRes->soColorSequencingDirectionArrow_ = soResourceValue; return; } if ( soResourceName == "consed.colorSequencingDirectionArrowTracesUp" ) { pRes->soColorSequencingDirectionArrowTracesUp_ = soResourceValue; return; } if ( soResourceName == "consed.colorVerticalLineAtCursor" ) { pRes->soColorVerticalLineAtCursor_ = soResourceValue; return; } if ( soResourceName == "consed.colorHorizontalLineAtCursor" ) { pRes->soColorHorizontalLineAtCursor_ = soResourceValue; return; } if ( soResourceName == "consed.colorProteinTranslation" ) { pRes->soColorProteinTranslation_ = soResourceValue; return; } if ( soResourceName == "consed.colorProteinTranslationLabels" ) { pRes->soColorProteinTranslationLabels_ = soResourceValue; return; } if ( soResourceName == "consed.colorProteinStartCodon" ) { pRes->soColorProteinStartCodon_ = soResourceValue; return; } if ( soResourceName == "consed.colorProteinStopCodon" ) { pRes->soColorProteinStopCodon_ = soResourceValue; return; } if ( soResourceName == "consed.colorUnmatchedRestrictionFragment" ) { pRes->soColorUnmatchedRestrictionFragment_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionFragmentPairTooFarApart" ) { pRes->soColorRestrictionFragmentPairTooFarApart_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionFragmentInContig" ) { pRes->soColorRestrictionFragmentInContig_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionFragmentPartlyOffContig" ) { pRes->soColorRestrictionFragmentPartlyOffContig_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionFragmentEntirelyOffContig" ) { pRes->soColorRestrictionFragmentEntirelyOffContig_ = soResourceValue; return; } if ( soResourceName == "consed.colorActualGelRestrictionFragment" ) { pRes->soColorActualGelRestrictionFragment_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionDigestScale" ) { pRes->soColorRestrictionDigestScale_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionDigestCursorIndicator" ) { pRes->soColorRestrictionDigestCursorIndicator_ = soResourceValue; return; } if ( soResourceName == "consed.colorRestrictionFragmentsOnTopOfEachOther" ) { pRes->soColorRestrictionFragmentsOnTopOfEachOther_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewScale" ) { pRes->soColorAssemblyViewScale_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewScaleNumbers" ) { pRes->soColorAssemblyViewScaleNumbers_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewContigs" ) { pRes->soColorAssemblyViewContigs_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewContigNamesForeground" ) { pRes->soColorAssemblyViewContigNamesForeground_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewContigNamesBackground" ) { pRes->soColorAssemblyViewContigNamesBackground_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentFwdRevPairs" ) { pRes->soColorAssemblyViewConsistentFwdRevPairs_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentFwdRevPairDepth" ) { pRes->soColorAssemblyViewConsistentFwdRevPairDepth_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewReadDepth" ) { pRes->soColorAssemblyViewReadDepth_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewDiscrepanciesNotIndels" ) { pRes->soColorAssemblyViewDiscrepanciesNotIndels_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewDiscrepanciesIndels" ) { pRes->soColorAssemblyViewDiscrepanciesIndels_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewTooFewConsistentFwdRevPairs" ) { pRes->soColorAssemblyViewTooFewConsistentFwdRevPairs_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewInconsistentFwdRevPair" ) { pRes->soColorAssemblyViewInconsistentFwdRevPair_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentGapSpanningFwdRevPair" ) { pRes->soColorAssemblyViewConsistentGapSpanningFwdRevPair_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewHighlight" ) { pRes->soColorAssemblyViewHighlight_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewMultipleItemsOnTopOfEachOther" ) { pRes->soColorAssemblyViewMultipleItemsOnTopOfEachOther_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewDirectSequenceMatches" ) { pRes->soColorAssemblyViewDirectSequenceMatches_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewInvertedSequenceMatches" ) { pRes->soColorAssemblyViewInvertedSequenceMatches_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment1" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment1_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment2" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment2_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment3" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment3_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment4" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment4_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment5" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment5_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment6" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment6_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment7" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment7_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment8" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment8_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment9" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment9_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewConsistentRestrictionDigestFragment10" ) { pRes->soColorAssemblyViewConsistentRestrictionDigestFragment10_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewInconsistentRestrictionDigestFragment" ) { pRes->soColorAssemblyViewInconsistentRestrictionDigestFragment_ = soResourceValue; return; } if ( soResourceName == "consed.colorAssemblyViewCloneEnd" ) { pRes->soColorAssemblyViewCloneEnd_ = soResourceValue; return; } if ( soResourceName == "consed.colorReadPrefixDefault" ) { pRes->soColorReadPrefixDefault_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorEdit" ) { pRes->soTagColorEdit_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorBecomeConsensus" ) { pRes->soTagColorBecomeConsensus_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorIgnoreMismatches" ) { pRes->soTagColorIgnoreMismatches_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorIgnoreMatches" ) { pRes->soTagColorIgnoreMatches_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorSignificantDiscrepancy" ) { pRes->soTagColorSignificantDiscrepancy_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCompression" ) { pRes->soTagColorCompression_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorDataNeeded" ) { pRes->soTagColorDataNeeded_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorComment" ) { pRes->soTagColorComment_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorTagsOverlap" ) { pRes->soTagColorTagsOverlap_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorSequencingVector" ) { pRes->soTagColorSequencingVector_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCloningVector" ) { pRes->soTagColorCloningVector_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorVector" ) { pRes->soTagColorVector_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorOligo" ) { pRes->soTagColorOligo_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorOligo3PrimeEnd" ) { pRes->soTagColorOligo3PrimeEnd_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorChimera" ) { pRes->soTagColorChimera_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorContigName" ) { pRes->soTagColorContigName_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolymorphism" ) { pRes->soTagColorPolymorphism_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHomozygoteAA" ) { pRes->soTagColorHomozygoteAA_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHomozygoteCC" ) { pRes->soTagColorHomozygoteCC_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHomozygoteGG" ) { pRes->soTagColorHomozygoteGG_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHomozygoteTT" ) { pRes->soTagColorHomozygoteTT_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteAC" ) { pRes->soTagColorHeterozygoteAC_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteAG" ) { pRes->soTagColorHeterozygoteAG_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteAT" ) { pRes->soTagColorHeterozygoteAT_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteCG" ) { pRes->soTagColorHeterozygoteCG_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteCT" ) { pRes->soTagColorHeterozygoteCT_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteGT" ) { pRes->soTagColorHeterozygoteGT_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorRepeat" ) { pRes->soTagColorRepeat_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank1" ) { pRes->soTagColorPolyPhredRank1_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank2" ) { pRes->soTagColorPolyPhredRank2_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank3" ) { pRes->soTagColorPolyPhredRank3_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank4" ) { pRes->soTagColorPolyPhredRank4_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank5" ) { pRes->soTagColorPolyPhredRank5_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolyPhredRank6" ) { pRes->soTagColorPolyPhredRank6_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorIndelSite" ) { pRes->soTagColorIndelSite_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHeterozygoteIndel" ) { pRes->soTagColorHeterozygoteIndel_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorHomozygoteIndel" ) { pRes->soTagColorHomozygoteIndel_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorPolymorphismConfirmed" ) { pRes->soTagColorPolymorphismConfirmed_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorMatchElsewhereHighQual" ) { pRes->soTagColorMatchElsewhereHighQual_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorMatchElsewhereLowQual" ) { pRes->soTagColorMatchElsewhereLowQual_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorG_dropout" ) { pRes->soTagColorG_dropout_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorMarkedHighQuality" ) { pRes->soTagColorMarkedHighQuality_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorMarkedLowQuality" ) { pRes->soTagColorMarkedLowQuality_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorAutoFinishExp" ) { pRes->soTagColorAutoFinishExp_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorDoNotFinish" ) { pRes->soTagColorDoNotFinish_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorDoNotDoPCR" ) { pRes->soTagColorDoNotDoPCR_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorConsedFixedGoldenPath" ) { pRes->soTagColorConsedFixedGoldenPath_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCloneEnd" ) { pRes->soTagColorCloneEnd_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorEditable" ) { pRes->soTagColorEditable_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorContigEndPair" ) { pRes->soTagColorContigEndPair_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorChangedGenotype" ) { pRes->soTagColorChangedGenotype_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorStartNumberingConsensus" ) { pRes->soTagColorStartNumberingConsensus_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorReferenceSequence" ) { pRes->soTagColorReferenceSequence_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorJoin" ) { pRes->soTagColorJoin_ = soResourceValue; return; } if ( soResourceName == "consed.customTag1" ) { pRes->soCustomTag1_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag1" ) { pRes->soTagColorCustomTag1_ = soResourceValue; return; } if ( soResourceName == "consed.customTag2" ) { pRes->soCustomTag2_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag2" ) { pRes->soTagColorCustomTag2_ = soResourceValue; return; } if ( soResourceName == "consed.customTag3" ) { pRes->soCustomTag3_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag3" ) { pRes->soTagColorCustomTag3_ = soResourceValue; return; } if ( soResourceName == "consed.customTag4" ) { pRes->soCustomTag4_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag4" ) { pRes->soTagColorCustomTag4_ = soResourceValue; return; } if ( soResourceName == "consed.customTag5" ) { pRes->soCustomTag5_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag5" ) { pRes->soTagColorCustomTag5_ = soResourceValue; return; } if ( soResourceName == "consed.customTag6" ) { pRes->soCustomTag6_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag6" ) { pRes->soTagColorCustomTag6_ = soResourceValue; return; } if ( soResourceName == "consed.customTag7" ) { pRes->soCustomTag7_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag7" ) { pRes->soTagColorCustomTag7_ = soResourceValue; return; } if ( soResourceName == "consed.customTag8" ) { pRes->soCustomTag8_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag8" ) { pRes->soTagColorCustomTag8_ = soResourceValue; return; } if ( soResourceName == "consed.customTag9" ) { pRes->soCustomTag9_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag9" ) { pRes->soTagColorCustomTag9_ = soResourceValue; return; } if ( soResourceName == "consed.customTag10" ) { pRes->soCustomTag10_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag10" ) { pRes->soTagColorCustomTag10_ = soResourceValue; return; } if ( soResourceName == "consed.customTag11" ) { pRes->soCustomTag11_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag11" ) { pRes->soTagColorCustomTag11_ = soResourceValue; return; } if ( soResourceName == "consed.customTag12" ) { pRes->soCustomTag12_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag12" ) { pRes->soTagColorCustomTag12_ = soResourceValue; return; } if ( soResourceName == "consed.customTag13" ) { pRes->soCustomTag13_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag13" ) { pRes->soTagColorCustomTag13_ = soResourceValue; return; } if ( soResourceName == "consed.customTag14" ) { pRes->soCustomTag14_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag14" ) { pRes->soTagColorCustomTag14_ = soResourceValue; return; } if ( soResourceName == "consed.customTag15" ) { pRes->soCustomTag15_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomTag15" ) { pRes->soTagColorCustomTag15_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag1" ) { pRes->soCustomConsensusTag1_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag1" ) { pRes->soTagColorCustomConsensusTag1_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag2" ) { pRes->soCustomConsensusTag2_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag2" ) { pRes->soTagColorCustomConsensusTag2_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag3" ) { pRes->soCustomConsensusTag3_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag3" ) { pRes->soTagColorCustomConsensusTag3_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag4" ) { pRes->soCustomConsensusTag4_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag4" ) { pRes->soTagColorCustomConsensusTag4_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag5" ) { pRes->soCustomConsensusTag5_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag5" ) { pRes->soTagColorCustomConsensusTag5_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag6" ) { pRes->soCustomConsensusTag6_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag6" ) { pRes->soTagColorCustomConsensusTag6_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag7" ) { pRes->soCustomConsensusTag7_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag7" ) { pRes->soTagColorCustomConsensusTag7_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag8" ) { pRes->soCustomConsensusTag8_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag8" ) { pRes->soTagColorCustomConsensusTag8_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag9" ) { pRes->soCustomConsensusTag9_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag9" ) { pRes->soTagColorCustomConsensusTag9_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag10" ) { pRes->soCustomConsensusTag10_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag10" ) { pRes->soTagColorCustomConsensusTag10_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag11" ) { pRes->soCustomConsensusTag11_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag11" ) { pRes->soTagColorCustomConsensusTag11_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag12" ) { pRes->soCustomConsensusTag12_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag12" ) { pRes->soTagColorCustomConsensusTag12_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag13" ) { pRes->soCustomConsensusTag13_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag13" ) { pRes->soTagColorCustomConsensusTag13_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag14" ) { pRes->soCustomConsensusTag14_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag14" ) { pRes->soTagColorCustomConsensusTag14_ = soResourceValue; return; } if ( soResourceName == "consed.customConsensusTag15" ) { pRes->soCustomConsensusTag15_ = soResourceValue; return; } if ( soResourceName == "consed.tagColorCustomConsensusTag15" ) { pRes->soTagColorCustomConsensusTag15_ = soResourceValue; return; } if ( soResourceName == "consed.printPS" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrintPS_ = true; else if ( soResourceValue == "false" ) pRes->bPrintPS_ = false; else BAD_VALUE( "value for resource consed.printPS must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.defaultTagType" ) { pRes->soDefaultTagType_ = soResourceValue; return; } if ( soResourceName == "consed.defaultTagOnConsensusNotReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bDefaultTagOnConsensusNotReads_ = true; else if ( soResourceValue == "false" ) pRes->bDefaultTagOnConsensusNotReads_ = false; else BAD_VALUE( "value for resource consed.defaultTagOnConsensusNotReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinNumberOfErrorsFixedByAnExp" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishMinNumberOfErrorsFixedByAnExp_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinNumberOfErrorsFixedByAnExp must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishRedundancy" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishRedundancy_ ) ) BAD_VALUE( "value for resource consed.autoFinishRedundancy must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAverageInsertSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishAverageInsertSize_ ) ) BAD_VALUE( "value for resource consed.autoFinishAverageInsertSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxInsertSizeOfASubclone" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxInsertSizeOfASubclone_ ) ) BAD_VALUE( "value for resource consed.primersMaxInsertSizeOfASubclone must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxMeltingTemp" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxMeltingTemp_ ) ) BAD_VALUE( "value for resource consed.primersMaxMeltingTemp must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxMeltingTempForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxMeltingTempForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMaxMeltingTempForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersPickTemplatesForPrimers" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersPickTemplatesForPrimers_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersPickTemplatesForPrimers_ = false; else BAD_VALUE( "value for resource consed.primersPickTemplatesForPrimers must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersSubcloneFullPathnameOfFileOfSequencesForScreening" ) { pRes->soPrimersSubcloneFullPathnameOfFileOfSequencesForScreening_ = soResourceValue; return; } if ( soResourceName == "consed.primersCloneFullPathnameOfFileOfSequencesForScreening" ) { pRes->soPrimersCloneFullPathnameOfFileOfSequencesForScreening_ = soResourceValue; return; } if ( soResourceName == "consed.primersMinMeltingTemp" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinMeltingTemp_ ) ) BAD_VALUE( "value for resource consed.primersMinMeltingTemp must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMinMeltingTempForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinMeltingTempForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMinMeltingTempForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.searchFunctionsUseUnalignedEndsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bSearchFunctionsUseUnalignedEndsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bSearchFunctionsUseUnalignedEndsOfReads_ = false; else BAD_VALUE( "value for resource consed.searchFunctionsUseUnalignedEndsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.searchFunctionsUseLowQualityEndsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bSearchFunctionsUseLowQualityEndsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bSearchFunctionsUseLowQualityEndsOfReads_ = false; else BAD_VALUE( "value for resource consed.searchFunctionsUseLowQualityEndsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.inexactSearchForStringMaxPerCentMismatch" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nInexactSearchForStringMaxPerCentMismatch_ ) ) BAD_VALUE( "value for resource consed.inexactSearchForStringMaxPerCentMismatch must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.onlyAllowOneReadWriteConsedAtATime" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bOnlyAllowOneReadWriteConsedAtATime_ = true; else if ( soResourceValue == "false" ) pRes->bOnlyAllowOneReadWriteConsedAtATime_ = false; else BAD_VALUE( "value for resource consed.onlyAllowOneReadWriteConsedAtATime must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowHighQualityDiscrepanciesInTemplateIfConsistentForwardReversePair" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowHighQualityDiscrepanciesInTemplateIfConsistentForwardReversePair_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowHighQualityDiscrepanciesInTemplateIfConsistentForwardReversePair_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowHighQualityDiscrepanciesInTemplateIfConsistentForwardReversePair must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.printWindowCommand" ) { pRes->soPrintWindowCommand_ = soResourceValue; return; } if ( soResourceName == "consed.fileOfTagTypes" ) { pRes->filFileOfTagTypes_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewShowConsistentFwdRevPairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowConsistentFwdRevPairs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowConsistentFwdRevPairs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowConsistentFwdRevPairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowConsistentFwdRevPairDepth" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowConsistentFwdRevPairDepth_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowConsistentFwdRevPairDepth_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowConsistentFwdRevPairDepth must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowConsistentFwdRevPairsBetweenDifferentScaffolds" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowConsistentFwdRevPairsBetweenDifferentScaffolds_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowConsistentFwdRevPairsBetweenDifferentScaffolds_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowConsistentFwdRevPairsBetweenDifferentScaffolds must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowLegsOnSquaresForConsistentFwdRevPairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowLegsOnSquaresForConsistentFwdRevPairs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowLegsOnSquaresForConsistentFwdRevPairs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowLegsOnSquaresForConsistentFwdRevPairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowGapSpanningFwdRevPairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowGapSpanningFwdRevPairs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowGapSpanningFwdRevPairs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowGapSpanningFwdRevPairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowWhichInconsistentFwdRevPairs" ) { pRes->soAssemblyViewShowWhichInconsistentFwdRevPairs_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewShowReadDepth" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowReadDepth_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowReadDepth_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowReadDepth must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowMultipleHighQualityDiscrepancies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowMultipleHighQualityDiscrepancies_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowMultipleHighQualityDiscrepancies_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowMultipleHighQualityDiscrepancies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowRestrictionDigestCutSites" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowRestrictionDigestCutSites_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowRestrictionDigestCutSites_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowRestrictionDigestCutSites must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewFilterSequenceMatchesBySize" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewFilterSequenceMatchesBySize_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewFilterSequenceMatchesBySize_ = false; else BAD_VALUE( "value for resource consed.assemblyViewFilterSequenceMatchesBySize must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewSequenceMatchesMinSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewSequenceMatchesMinSize_ ) ) BAD_VALUE( "value for resource consed.assemblyViewSequenceMatchesMinSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewSequenceMatchesMaxSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewSequenceMatchesMaxSize_ ) ) BAD_VALUE( "value for resource consed.assemblyViewSequenceMatchesMaxSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewAutomaticallyStartWithConsed" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewAutomaticallyStartWithConsed_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewAutomaticallyStartWithConsed_ = false; else BAD_VALUE( "value for resource consed.assemblyViewAutomaticallyStartWithConsed must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewDisplayTheseTagTypesOnTheseLines" ) { pRes->soAssemblyViewDisplayTheseTagTypesOnTheseLines_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewShowTags" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowTags_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowTags_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowTags must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditRecalculateHighQualitySegmentsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditRecalculateHighQualitySegmentsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditRecalculateHighQualitySegmentsOfReads_ = false; else BAD_VALUE( "value for resource consed.autoEditRecalculateHighQualitySegmentsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditConvertCloneEndBasesToXs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditConvertCloneEndBasesToXs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditConvertCloneEndBasesToXs_ = false; else BAD_VALUE( "value for resource consed.autoEditConvertCloneEndBasesToXs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditTellPhrapNotToOverlapMultiplyDiscrepantReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditTellPhrapNotToOverlapMultiplyDiscrepantReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditTellPhrapNotToOverlapMultiplyDiscrepantReads_ = false; else BAD_VALUE( "value for resource consed.autoEditTellPhrapNotToOverlapMultiplyDiscrepantReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditTagEditableLowConsensusQualityRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditTagEditableLowConsensusQualityRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditTagEditableLowConsensusQualityRegions_ = false; else BAD_VALUE( "value for resource consed.autoEditTagEditableLowConsensusQualityRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditMakeFakeRead" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditMakeFakeRead_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditMakeFakeRead_ = false; else BAD_VALUE( "value for resource consed.autoEditMakeFakeRead must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditMakeFakeReadFromRead1" ) { pRes->soAutoEditMakeFakeReadFromRead1_ = soResourceValue; return; } if ( soResourceName == "consed.autoEditMakeFakeReadFromRead2" ) { pRes->soAutoEditMakeFakeReadFromRead2_ = soResourceValue; return; } if ( soResourceName == "consed.autoEditMakeFakeReadName" ) { pRes->soAutoEditMakeFakeReadName_ = soResourceValue; return; } if ( soResourceName == "consed.autoEditMakeFakeReadFastaFilename" ) { pRes->filAutoEditMakeFakeReadFastaFilename_ = soResourceValue; return; } if ( soResourceName == "consed.autoEditMergeAssembly" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditMergeAssembly_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditMergeAssembly_ = false; else BAD_VALUE( "value for resource consed.autoEditMergeAssembly must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoEditSecondaryAceFile" ) { pRes->filAutoEditSecondaryAceFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoEditFixRunsInConsensus" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoEditFixRunsInConsensus_ = true; else if ( soResourceValue == "false" ) pRes->bAutoEditFixRunsInConsensus_ = false; else BAD_VALUE( "value for resource consed.autoEditFixRunsInConsensus must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.showAllTracesJustShowGoodTraces" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bShowAllTracesJustShowGoodTraces_ = true; else if ( soResourceValue == "false" ) pRes->bShowAllTracesJustShowGoodTraces_ = false; else BAD_VALUE( "value for resource consed.showAllTracesJustShowGoodTraces must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.addAlignedSequenceQualityOfBases" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAddAlignedSequenceQualityOfBases_ ) ) BAD_VALUE( "value for resource consed.addAlignedSequenceQualityOfBases must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.makeLightBackgroundInAlignedReadsWindowAndTracesWindow" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bMakeLightBackgroundInAlignedReadsWindowAndTracesWindow_ = true; else if ( soResourceValue == "false" ) pRes->bMakeLightBackgroundInAlignedReadsWindowAndTracesWindow_ = false; else BAD_VALUE( "value for resource consed.makeLightBackgroundInAlignedReadsWindowAndTracesWindow must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.putVerticalLineAtCursor" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPutVerticalLineAtCursor_ = true; else if ( soResourceValue == "false" ) pRes->bPutVerticalLineAtCursor_ = false; else BAD_VALUE( "value for resource consed.putVerticalLineAtCursor must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.putHorizontalLineAtCursor" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPutHorizontalLineAtCursor_ = true; else if ( soResourceValue == "false" ) pRes->bPutHorizontalLineAtCursor_ = false; else BAD_VALUE( "value for resource consed.putHorizontalLineAtCursor must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.highlightedReadsFile" ) { pRes->filHighlightedReadsFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportPrintReadNamesInRegion" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintReadNamesInRegion_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintReadNamesInRegion_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintReadNamesInRegion must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintReadNamesInRegionContig" ) { pRes->soAutoReportPrintReadNamesInRegionContig_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportPrintReadNamesInRegionLeftPos" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportPrintReadNamesInRegionLeftPos_ ) ) BAD_VALUE( "value for resource consed.autoReportPrintReadNamesInRegionLeftPos must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintReadNamesInRegionRightPos" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportPrintReadNamesInRegionRightPos_ ) ) BAD_VALUE( "value for resource consed.autoReportPrintReadNamesInRegionRightPos must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintHighlyDiscrepantRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintHighlyDiscrepantRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintHighlyDiscrepantRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintHighlyDiscrepantRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintScaffolds" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintScaffolds_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintScaffolds_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintScaffolds must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.numberUnpaddedConsensusAtUserDefined" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNumberUnpaddedConsensusAtUserDefined_ = true; else if ( soResourceValue == "false" ) pRes->bNumberUnpaddedConsensusAtUserDefined_ = false; else BAD_VALUE( "value for resource consed.numberUnpaddedConsensusAtUserDefined must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintHighQualityDiscrepancies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintHighQualityDiscrepancies_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintHighQualityDiscrepancies_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintHighQualityDiscrepancies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportHighQualityDiscrepanciesExcludeCompressionOrG_dropoutTags" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportHighQualityDiscrepanciesExcludeCompressionOrG_dropoutTags_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportHighQualityDiscrepanciesExcludeCompressionOrG_dropoutTags_ = false; else BAD_VALUE( "value for resource consed.autoReportHighQualityDiscrepanciesExcludeCompressionOrG_dropoutTags must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportHighQualityDiscrepanciesExcludeMostPads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportHighQualityDiscrepanciesExcludeMostPads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportHighQualityDiscrepanciesExcludeMostPads_ = false; else BAD_VALUE( "value for resource consed.autoReportHighQualityDiscrepanciesExcludeMostPads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintLowConsensusQualityRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintLowConsensusQualityRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintLowConsensusQualityRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintLowConsensusQualityRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintSingleSubcloneRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintSingleSubcloneRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintSingleSubcloneRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintSingleSubcloneRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintSingleStrandedRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintSingleStrandedRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintSingleStrandedRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintSingleStrandedRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintLinkingForwardReversePairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintLinkingForwardReversePairs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintLinkingForwardReversePairs_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintLinkingForwardReversePairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintFilteredInconsistentForwardReversePairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintFilteredInconsistentForwardReversePairs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintFilteredInconsistentForwardReversePairs_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintFilteredInconsistentForwardReversePairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintAssemblySummary" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintAssemblySummary_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintAssemblySummary_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintAssemblySummary must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.showAllTracesDoNotShowTraceIfTheseTagsPresent" ) { pRes->soShowAllTracesDoNotShowTraceIfTheseTagsPresent_ = soResourceValue; return; } if ( soResourceName == "consed.nameOfFakeJoiningReadsIncludesAceFileName" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNameOfFakeJoiningReadsIncludesAceFileName_ = true; else if ( soResourceValue == "false" ) pRes->bNameOfFakeJoiningReadsIncludesAceFileName_ = false; else BAD_VALUE( "value for resource consed.nameOfFakeJoiningReadsIncludesAceFileName must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.whenUserScrollsOffWindowMillisecondsBetweenScrolling" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nWhenUserScrollsOffWindowMillisecondsBetweenScrolling_ ) ) BAD_VALUE( "value for resource consed.whenUserScrollsOffWindowMillisecondsBetweenScrolling must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.whenUserScrollsOffWindowBasesToScrollEachTime" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nWhenUserScrollsOffWindowBasesToScrollEachTime_ ) ) BAD_VALUE( "value for resource consed.whenUserScrollsOffWindowBasesToScrollEachTime must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.compareContigsUseBandedRatherThanFullSmithWaterman" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bCompareContigsUseBandedRatherThanFullSmithWaterman_ = true; else if ( soResourceValue == "false" ) pRes->bCompareContigsUseBandedRatherThanFullSmithWaterman_ = false; else BAD_VALUE( "value for resource consed.compareContigsUseBandedRatherThanFullSmithWaterman must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.compareContigsBandSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nCompareContigsBandSize_ ) ) BAD_VALUE( "value for resource consed.compareContigsBandSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowFwdRevPairDepthsInRedIfOnlyThisMany" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewShowFwdRevPairDepthsInRedIfOnlyThisMany_ ) ) BAD_VALUE( "value for resource consed.assemblyViewShowFwdRevPairDepthsInRedIfOnlyThisMany must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewShowSequenceMatches" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewShowSequenceMatches_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewShowSequenceMatches_ = false; else BAD_VALUE( "value for resource consed.assemblyViewShowSequenceMatches must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOKToShowSequenceMatchesBetweenContigs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOKToShowSequenceMatchesBetweenContigs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOKToShowSequenceMatchesBetweenContigs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOKToShowSequenceMatchesBetweenContigs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOKToShowSequenceMatchesWithinContigs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOKToShowSequenceMatchesWithinContigs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOKToShowSequenceMatchesWithinContigs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOKToShowSequenceMatchesWithinContigs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOKToShowDirectSequenceMatches" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOKToShowDirectSequenceMatches_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOKToShowDirectSequenceMatches_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOKToShowDirectSequenceMatches must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOKToShowInvertedSequenceMatches" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOKToShowInvertedSequenceMatches_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOKToShowInvertedSequenceMatches_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOKToShowInvertedSequenceMatches must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToAParticularRegion" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOnlyShowSequenceMatchesToAParticularRegion_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOnlyShowSequenceMatchesToAParticularRegion_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOnlyShowSequenceMatchesToAParticularRegion must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToThisContig" ) { pRes->soAssemblyViewOnlyShowSequenceMatchesToThisContig_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToThisRegionLeft" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewOnlyShowSequenceMatchesToThisRegionLeft_ ) ) BAD_VALUE( "value for resource consed.assemblyViewOnlyShowSequenceMatchesToThisRegionLeft must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToThisRegionRight" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewOnlyShowSequenceMatchesToThisRegionRight_ ) ) BAD_VALUE( "value for resource consed.assemblyViewOnlyShowSequenceMatchesToThisRegionRight must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToEndsOfContigs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAssemblyViewOnlyShowSequenceMatchesToEndsOfContigs_ = true; else if ( soResourceValue == "false" ) pRes->bAssemblyViewOnlyShowSequenceMatchesToEndsOfContigs_ = false; else BAD_VALUE( "value for resource consed.assemblyViewOnlyShowSequenceMatchesToEndsOfContigs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewOnlyShowSequenceMatchesToEndsOfContigsThisFar" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewOnlyShowSequenceMatchesToEndsOfContigsThisFar_ ) ) BAD_VALUE( "value for resource consed.assemblyViewOnlyShowSequenceMatchesToEndsOfContigsThisFar must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.defaultReadPrefix" ) { pRes->soDefaultReadPrefix_ = soResourceValue; return; } if ( soResourceName == "consed.readPrefixesFile" ) { pRes->filReadPrefixesFile_ = soResourceValue; return; } if ( soResourceName == "consed.maxCharsDisplayedForReadPrefix" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaxCharsDisplayedForReadPrefix_ ) ) BAD_VALUE( "value for resource consed.maxCharsDisplayedForReadPrefix must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotDoPCRIfThisManyAvailableGapSpanningTemplates" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotDoPCRIfThisManyAvailableGapSpanningTemplates_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotDoPCRIfThisManyAvailableGapSpanningTemplates must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotDoUnorientedPCRIfThisManyOrMoreUnorientedPCRReactions" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotDoUnorientedPCRIfThisManyOrMoreUnorientedPCRReactions_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotDoUnorientedPCRIfThisManyOrMoreUnorientedPCRReactions must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotDoOrientedPCRIfGapSizeLargerThanThis" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotDoOrientedPCRIfGapSizeLargerThanThis_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotDoOrientedPCRIfGapSizeLargerThanThis must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotDoPCRIfEndIsExtendedByReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishDoNotDoPCRIfEndIsExtendedByReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishDoNotDoPCRIfEndIsExtendedByReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishDoNotDoPCRIfEndIsExtendedByReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMaxAcceptableErrorsPerMegabase" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMaxAcceptableErrorsPerMegabase_ ) ) BAD_VALUE( "value for resource consed.autoFinishMaxAcceptableErrorsPerMegabase must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishIfNotEnoughFwdRevPairsUseThisPerCentOfInsertSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishIfNotEnoughFwdRevPairsUseThisPerCentOfInsertSize_ ) ) BAD_VALUE( "value for resource consed.autoFinishIfNotEnoughFwdRevPairsUseThisPerCentOfInsertSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersNumberOfBasesToBackUpToStartLooking" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersNumberOfBasesToBackUpToStartLooking_ ) ) BAD_VALUE( "value for resource consed.primersNumberOfBasesToBackUpToStartLooking must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMakePCRPrimersThisManyBasesBackFromEndOfHighQualitySegment" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMakePCRPrimersThisManyBasesBackFromEndOfHighQualitySegment_ ) ) BAD_VALUE( "value for resource consed.primersMakePCRPrimersThisManyBasesBackFromEndOfHighQualitySegment must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersOKToChoosePrimersInSingleSubcloneRegion" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersOKToChoosePrimersInSingleSubcloneRegion_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersOKToChoosePrimersInSingleSubcloneRegion_ = false; else BAD_VALUE( "value for resource consed.primersOKToChoosePrimersInSingleSubcloneRegion must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersOKToChoosePrimersWhereHighQualityDiscrepancies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersOKToChoosePrimersWhereHighQualityDiscrepancies_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersOKToChoosePrimersWhereHighQualityDiscrepancies_ = false; else BAD_VALUE( "value for resource consed.primersOKToChoosePrimersWhereHighQualityDiscrepancies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersOKToChoosePrimersWhereUnalignedHighQualityRegion" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersOKToChoosePrimersWhereUnalignedHighQualityRegion_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersOKToChoosePrimersWhereUnalignedHighQualityRegion_ = false; else BAD_VALUE( "value for resource consed.primersOKToChoosePrimersWhereUnalignedHighQualityRegion must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCallReversesToFlankGaps" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCallReversesToFlankGaps_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCallReversesToFlankGaps_ = false; else BAD_VALUE( "value for resource consed.autoFinishCallReversesToFlankGaps must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowWholeCloneReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowWholeCloneReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowWholeCloneReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowWholeCloneReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowCustomPrimerSubcloneReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowCustomPrimerSubcloneReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowCustomPrimerSubcloneReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowCustomPrimerSubcloneReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowResequencingReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowResequencingReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowResequencingReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowResequencingReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowResequencingReadsOnlyForRunsAndStops" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowResequencingReadsOnlyForRunsAndStops_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowResequencingReadsOnlyForRunsAndStops_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowResequencingReadsOnlyForRunsAndStops must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowDeNovoUniversalPrimerSubcloneReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowDeNovoUniversalPrimerSubcloneReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowDeNovoUniversalPrimerSubcloneReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowDeNovoUniversalPrimerSubcloneReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowMinilibraries" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowMinilibraries_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowMinilibraries_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowMinilibraries must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowPCR" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowPCR_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowPCR_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowPCR must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowUnorientedPCRReactions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowUnorientedPCRReactions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowUnorientedPCRReactions_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowUnorientedPCRReactions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowResequencingAUniversalPrimerAutofinishRead" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowResequencingAUniversalPrimerAutofinishRead_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowResequencingAUniversalPrimerAutofinishRead_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowResequencingAUniversalPrimerAutofinishRead must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAlwaysCloseGapsUsingMinilibraries" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAlwaysCloseGapsUsingMinilibraries_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAlwaysCloseGapsUsingMinilibraries_ = false; else BAD_VALUE( "value for resource consed.autoFinishAlwaysCloseGapsUsingMinilibraries must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMaximumFinishingReadLength" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMaximumFinishingReadLength_ ) ) BAD_VALUE( "value for resource consed.autoFinishMaximumFinishingReadLength must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishSuggestMinilibraryIfGapThisManyBasesOrLarger" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishSuggestMinilibraryIfGapThisManyBasesOrLarger_ ) ) BAD_VALUE( "value for resource consed.autoFinishSuggestMinilibraryIfGapThisManyBasesOrLarger must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishSuggestSpecialChemistryForRunsAndStops" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishSuggestSpecialChemistryForRunsAndStops_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishSuggestSpecialChemistryForRunsAndStops_ = false; else BAD_VALUE( "value for resource consed.autoFinishSuggestSpecialChemistryForRunsAndStops must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishSuggestThisManyMinilibrariesPerGap" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishSuggestThisManyMinilibrariesPerGap_ ) ) BAD_VALUE( "value for resource consed.autoFinishSuggestThisManyMinilibrariesPerGap must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersWindowSizeInLooking" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersWindowSizeInLooking_ ) ) BAD_VALUE( "value for resource consed.primersWindowSizeInLooking must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersAssumeTemplatesAreDoubleStrandedUnlessSpecified" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersAssumeTemplatesAreDoubleStrandedUnlessSpecified_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersAssumeTemplatesAreDoubleStrandedUnlessSpecified_ = false; else BAD_VALUE( "value for resource consed.primersAssumeTemplatesAreDoubleStrandedUnlessSpecified must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.alignedReadsWindowInitialCharsWide" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAlignedReadsWindowInitialCharsWide_ ) ) BAD_VALUE( "value for resource consed.alignedReadsWindowInitialCharsWide must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.alignedReadsWindowInitialCharsHigh" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAlignedReadsWindowInitialCharsHigh_ ) ) BAD_VALUE( "value for resource consed.alignedReadsWindowInitialCharsHigh must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.alignedReadsWindowMaxCharsForReadNames" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAlignedReadsWindowMaxCharsForReadNames_ ) ) BAD_VALUE( "value for resource consed.alignedReadsWindowMaxCharsForReadNames must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.alignedReadsWindowAutomaticallyExpandRoomForReadNames" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAlignedReadsWindowAutomaticallyExpandRoomForReadNames_ = true; else if ( soResourceValue == "false" ) pRes->bAlignedReadsWindowAutomaticallyExpandRoomForReadNames_ = false; else BAD_VALUE( "value for resource consed.alignedReadsWindowAutomaticallyExpandRoomForReadNames must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishAllowResequencingReadsToExtendContigs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishAllowResequencingReadsToExtendContigs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishAllowResequencingReadsToExtendContigs_ = false; else BAD_VALUE( "value for resource consed.autoFinishAllowResequencingReadsToExtendContigs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCallHowManyReversesToFlankGaps" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishCallHowManyReversesToFlankGaps_ ) ) BAD_VALUE( "value for resource consed.autoFinishCallHowManyReversesToFlankGaps must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCloseGaps" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCloseGaps_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCloseGaps_ = false; else BAD_VALUE( "value for resource consed.autoFinishCloseGaps must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishContinueEvenThoughReadInfoDoesNotMakeSense" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishContinueEvenThoughReadInfoDoesNotMakeSense_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishContinueEvenThoughReadInfoDoesNotMakeSense_ = false; else BAD_VALUE( "value for resource consed.autoFinishContinueEvenThoughReadInfoDoesNotMakeSense must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCostOfResequencingUniversalPrimerSubcloneReaction" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfResequencingUniversalPrimerSubcloneReaction_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfResequencingUniversalPrimerSubcloneReaction must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCostOfCustomPrimerSubcloneReaction" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfCustomPrimerSubcloneReaction_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfCustomPrimerSubcloneReaction must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCostOfCustomPrimerCloneReaction" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfCustomPrimerCloneReaction_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfCustomPrimerCloneReaction must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCostOfDeNovoUniversalPrimerSubcloneReaction" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfDeNovoUniversalPrimerSubcloneReaction_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfDeNovoUniversalPrimerSubcloneReaction must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCostOfMinilibrary" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishCostOfMinilibrary_ ) ) BAD_VALUE( "value for resource consed.autoFinishCostOfMinilibrary must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCoverSingleSubcloneRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCoverSingleSubcloneRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCoverSingleSubcloneRegions_ = false; else BAD_VALUE( "value for resource consed.autoFinishCoverSingleSubcloneRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCoverLowConsensusQualityRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCoverLowConsensusQualityRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCoverLowConsensusQualityRegions_ = false; else BAD_VALUE( "value for resource consed.autoFinishCoverLowConsensusQualityRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDebugUniversalPrimerReadsFile" ) { pRes->filAutoFinishDebugUniversalPrimerReadsFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishDebugCustomPrimerReadsFile" ) { pRes->filAutoFinishDebugCustomPrimerReadsFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishDoNotAllowSubcloneCustomPrimerReadsCloserThanThisManyBases" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotAllowSubcloneCustomPrimerReadsCloserThanThisManyBases_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotAllowSubcloneCustomPrimerReadsCloserThanThisManyBases must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotAllowWholeCloneCustomPrimerReadsCloserThanThisManyBases" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotAllowWholeCloneCustomPrimerReadsCloserThanThisManyBases_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotAllowWholeCloneCustomPrimerReadsCloserThanThisManyBases must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotFinishWhereTheseTagsAre" ) { pRes->soAutoFinishDoNotFinishWhereTheseTagsAre_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishDoNotExtendContigsWhereTheseTagsAre" ) { pRes->soAutoFinishDoNotExtendContigsWhereTheseTagsAre_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishDoNotExtendContigsIfTagsAreThisCloseToContigEnd" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotExtendContigsIfTagsAreThisCloseToContigEnd_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotExtendContigsIfTagsAreThisCloseToContigEnd must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.dumpContigOrderAndOrientationInfoToThisFile" ) { pRes->filDumpContigOrderAndOrientationInfoToThisFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishDumpTemplates" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishDumpTemplates_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishDumpTemplates_ = false; else BAD_VALUE( "value for resource consed.autoFinishDumpTemplates must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishExcludeContigIfOnlyThisManyReadsOrLess" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishExcludeContigIfOnlyThisManyReadsOrLess_ ) ) BAD_VALUE( "value for resource consed.autoFinishExcludeContigIfOnlyThisManyReadsOrLess must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishExcludeContigIfDepthOfCoverageGreaterThanThis" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishExcludeContigIfDepthOfCoverageGreaterThanThis_ ) ) BAD_VALUE( "value for resource consed.autoFinishExcludeContigIfDepthOfCoverageGreaterThanThis must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishExcludeContigIfThisManyBasesOrLess" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishExcludeContigIfThisManyBasesOrLess_ ) ) BAD_VALUE( "value for resource consed.autoFinishExcludeContigIfThisManyBasesOrLess must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishHowManyTemplatesYouIntendToUseForCustomPrimerSubcloneReactions" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishHowManyTemplatesYouIntendToUseForCustomPrimerSubcloneReactions_ ) ) BAD_VALUE( "value for resource consed.autoFinishHowManyTemplatesYouIntendToUseForCustomPrimerSubcloneReactions must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMinNumberOfTemplatesForPrimers" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinNumberOfTemplatesForPrimers_ ) ) BAD_VALUE( "value for resource consed.primersMinNumberOfTemplatesForPrimers must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinBaseOverlapBetweenAReadAndHighQualitySegmentOfConsensus" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMinBaseOverlapBetweenAReadAndHighQualitySegmentOfConsensus_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinBaseOverlapBetweenAReadAndHighQualitySegmentOfConsensus must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishNumberOfVectorBasesAtBeginningOfAUniveralPrimerRead" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishNumberOfVectorBasesAtBeginningOfAUniveralPrimerRead_ ) ) BAD_VALUE( "value for resource consed.autoFinishNumberOfVectorBasesAtBeginningOfAUniveralPrimerRead must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCDNANotGenomic" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCDNANotGenomic_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCDNANotGenomic_ = false; else BAD_VALUE( "value for resource consed.autoFinishCDNANotGenomic must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishConfidenceThatReadWillCoverSingleSubcloneRegion" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishConfidenceThatReadWillCoverSingleSubcloneRegion_ ) ) BAD_VALUE( "value for resource consed.autoFinishConfidenceThatReadWillCoverSingleSubcloneRegion must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishPrintForwardOrReverseStrandWhenPrintingSubcloneTemplatesForCustomPrimerReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishPrintForwardOrReverseStrandWhenPrintingSubcloneTemplatesForCustomPrimerReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishPrintForwardOrReverseStrandWhenPrintingSubcloneTemplatesForCustomPrimerReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishPrintForwardOrReverseStrandWhenPrintingSubcloneTemplatesForCustomPrimerReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishPrintMinilibrariesSummaryFile" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishPrintMinilibrariesSummaryFile_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishPrintMinilibrariesSummaryFile_ = false; else BAD_VALUE( "value for resource consed.autoFinishPrintMinilibrariesSummaryFile must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishNearGapsSuggestEachMissingReadOfReadPairs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishNearGapsSuggestEachMissingReadOfReadPairs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishNearGapsSuggestEachMissingReadOfReadPairs_ = false; else BAD_VALUE( "value for resource consed.autoFinishNearGapsSuggestEachMissingReadOfReadPairs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotIgnoreLCQIfThisManyBasesFromEndOfContigForLCQTagger" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishDoNotIgnoreLCQIfThisManyBasesFromEndOfContigForLCQTagger_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotIgnoreLCQIfThisManyBasesFromEndOfContigForLCQTagger must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.checkIfTooManyWalks" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bCheckIfTooManyWalks_ = true; else if ( soResourceValue == "false" ) pRes->bCheckIfTooManyWalks_ = false; else BAD_VALUE( "value for resource consed.checkIfTooManyWalks must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.numberOfColumnsBeforeReadNameInAlignedReadsWindow" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nNumberOfColumnsBeforeReadNameInAlignedReadsWindow_ ) ) BAD_VALUE( "value for resource consed.numberOfColumnsBeforeReadNameInAlignedReadsWindow must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.compareContigsAlignsThisManyBasesMax" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nCompareContigsAlignsThisManyBasesMax_ ) ) BAD_VALUE( "value for resource consed.compareContigsAlignsThisManyBasesMax must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.compressedChromatExtension" ) { pRes->soCompressedChromatExtension_ = soResourceValue; return; } if ( soResourceName == "consed.dimLowQualityEndsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bDimLowQualityEndsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bDimLowQualityEndsOfReads_ = false; else BAD_VALUE( "value for resource consed.dimLowQualityEndsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.dimUnalignedEndsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bDimUnalignedEndsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bDimUnalignedEndsOfReads_ = false; else BAD_VALUE( "value for resource consed.dimUnalignedEndsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.fakeReadsSpecifiedByFilenameExtension" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bFakeReadsSpecifiedByFilenameExtension_ = true; else if ( soResourceValue == "false" ) pRes->bFakeReadsSpecifiedByFilenameExtension_ = false; else BAD_VALUE( "value for resource consed.fakeReadsSpecifiedByFilenameExtension must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.fullPathnameOfAddReads2ConsedScript" ) { pRes->filFullPathnameOfAddReads2ConsedScript_ = soResourceValue; return; } if ( soResourceName == "consed.fullPathnameOfFixContigEndScript" ) { pRes->filFullPathnameOfFixContigEndScript_ = soResourceValue; return; } if ( soResourceName == "consed.fixContigEndsCleanUpTemporaryFiles" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bFixContigEndsCleanUpTemporaryFiles_ = true; else if ( soResourceValue == "false" ) pRes->bFixContigEndsCleanUpTemporaryFiles_ = false; else BAD_VALUE( "value for resource consed.fixContigEndsCleanUpTemporaryFiles must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.fixContigEndsMinSmithWatermanScoreToMakeJoin" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nFixContigEndsMinSmithWatermanScoreToMakeJoin_ ) ) BAD_VALUE( "value for resource consed.fixContigEndsMinSmithWatermanScoreToMakeJoin must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.fixContigEndsMinNumberOfReadsInContig" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nFixContigEndsMinNumberOfReadsInContig_ ) ) BAD_VALUE( "value for resource consed.fixContigEndsMinNumberOfReadsInContig must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.fullPathnameOfCrossMatch" ) { pRes->filFullPathnameOfCrossMatch_ = soResourceValue; return; } if ( soResourceName == "consed.fullPathnameOfPhred" ) { pRes->filFullPathnameOfPhred_ = soResourceValue; return; } if ( soResourceName == "consed.fullPathnameOfMiniassemblyScript" ) { pRes->filFullPathnameOfMiniassemblyScript_ = soResourceValue; return; } if ( soResourceName == "consed.gunzipFullPath" ) { pRes->soGunzipFullPath_ = soResourceValue; return; } if ( soResourceName == "consed.fullPathnameOfFilter454ReadsScript" ) { pRes->filFullPathnameOfFilter454ReadsScript_ = soResourceValue; return; } if ( soResourceName == "consed.filter454ReadsAgainstThis" ) { pRes->filFilter454ReadsAgainstThis_ = soResourceValue; return; } if ( soResourceName == "consed.454LinkerSequences" ) { pRes->fil454LinkerSequences_ = soResourceValue; return; } if ( soResourceName == "consed.hideSomeTagTypesAtStartup" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bHideSomeTagTypesAtStartup_ = true; else if ( soResourceValue == "false" ) pRes->bHideSomeTagTypesAtStartup_ = false; else BAD_VALUE( "value for resource consed.hideSomeTagTypesAtStartup must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.maximumNumberOfTracesShown" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaximumNumberOfTracesShown_ ) ) BAD_VALUE( "value for resource consed.maximumNumberOfTracesShown must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateAutomaticTracePopup" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateAutomaticTracePopup_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateAutomaticTracePopup_ = false; else BAD_VALUE( "value for resource consed.navigateAutomaticTracePopup must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.navigateAutomaticAllTracesPopup" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateAutomaticAllTracesPopup_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateAutomaticAllTracesPopup_ = false; else BAD_VALUE( "value for resource consed.navigateAutomaticAllTracesPopup must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersMinimumLengthOfAPrimer" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinimumLengthOfAPrimer_ ) ) BAD_VALUE( "value for resource consed.primersMinimumLengthOfAPrimer must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaximumLengthOfAPrimer" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaximumLengthOfAPrimer_ ) ) BAD_VALUE( "value for resource consed.primersMaximumLengthOfAPrimer must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMinimumLengthOfAPrimerForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinimumLengthOfAPrimerForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMinimumLengthOfAPrimerForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaximumLengthOfAPrimerForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaximumLengthOfAPrimerForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMaximumLengthOfAPrimerForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxMeltingTempDifferenceForPCR" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dPrimersMaxMeltingTempDifferenceForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMaxMeltingTempDifferenceForPCR must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxPCRPrimerPairsToDisplay" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxPCRPrimerPairsToDisplay_ ) ) BAD_VALUE( "value for resource consed.primersMaxPCRPrimerPairsToDisplay must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersCheckJustSomePCRPrimerPairsRatherThanAll" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersCheckJustSomePCRPrimerPairsRatherThanAll_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersCheckJustSomePCRPrimerPairsRatherThanAll_ = false; else BAD_VALUE( "value for resource consed.primersCheckJustSomePCRPrimerPairsRatherThanAll must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersNumberOfTemplatesToDisplayInFront" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersNumberOfTemplatesToDisplayInFront_ ) ) BAD_VALUE( "value for resource consed.primersNumberOfTemplatesToDisplayInFront must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxLengthOfMononucleotideRepeat" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxLengthOfMononucleotideRepeat_ ) ) BAD_VALUE( "value for resource consed.primersMaxLengthOfMononucleotideRepeat must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersBadLibrariesFile" ) { pRes->filPrimersBadLibrariesFile_ = soResourceValue; return; } if ( soResourceName == "consed.primersLibrariesInfoFile" ) { pRes->filPrimersLibrariesInfoFile_ = soResourceValue; return; } if ( soResourceName == "consed.primersBadTemplatesFile" ) { pRes->filPrimersBadTemplatesFile_ = soResourceValue; return; } if ( soResourceName == "consed.primersChooseTemplatesByPositionInsteadOfQuality" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersChooseTemplatesByPositionInsteadOfQuality_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersChooseTemplatesByPositionInsteadOfQuality_ = false; else BAD_VALUE( "value for resource consed.primersChooseTemplatesByPositionInsteadOfQuality must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersWhenChoosingATemplateMinPotentialReadLength" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersWhenChoosingATemplateMinPotentialReadLength_ ) ) BAD_VALUE( "value for resource consed.primersWhenChoosingATemplateMinPotentialReadLength must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersWindowSizeInLookingForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersWindowSizeInLookingForPCR_ ) ) BAD_VALUE( "value for resource consed.primersWindowSizeInLookingForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.qualityThresholdForFindingHighQualityDiscrepancies" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nQualityThresholdForFindingHighQualityDiscrepancies_ ) ) BAD_VALUE( "value for resource consed.qualityThresholdForFindingHighQualityDiscrepancies must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.qualityThresholdForNavigateByDepthOfCoverage" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nQualityThresholdForNavigateByDepthOfCoverage_ ) ) BAD_VALUE( "value for resource consed.qualityThresholdForNavigateByDepthOfCoverage must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighDepthOfCoverageNotLow" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateByHighDepthOfCoverageNotLow_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateByHighDepthOfCoverageNotLow_ = false; else BAD_VALUE( "value for resource consed.navigateByHighDepthOfCoverageNotLow must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.MinDepthForNavigateByDepthOfCoverage" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMinDepthForNavigateByDepthOfCoverage_ ) ) BAD_VALUE( "value for resource consed.MinDepthForNavigateByDepthOfCoverage must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.defaultVectorPathnameForRestrictionFragments" ) { pRes->filDefaultVectorPathnameForRestrictionFragments_ = soResourceValue; return; } if ( soResourceName == "consed.fileOfAdditionalRestrictionEnzymes" ) { pRes->filFileOfAdditionalRestrictionEnzymes_ = soResourceValue; return; } if ( soResourceName == "consed.commonRestrictionEnzymes" ) { pRes->soCommonRestrictionEnzymes_ = soResourceValue; return; } if ( soResourceName == "consed.defaultSelectedRestrictionEnzymes" ) { pRes->soDefaultSelectedRestrictionEnzymes_ = soResourceValue; return; } if ( soResourceName == "consed.restrictionEnzymesActualFragmentsFile" ) { pRes->filRestrictionEnzymesActualFragmentsFile_ = soResourceValue; return; } if ( soResourceName == "consed.restrictionDigestInitialWindowSizeInTextRows" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nRestrictionDigestInitialWindowSizeInTextRows_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestInitialWindowSizeInTextRows must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.restrictionDigestDoNoShowAreaOfFragmentsOverThisSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nRestrictionDigestDoNoShowAreaOfFragmentsOverThisSize_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestDoNoShowAreaOfFragmentsOverThisSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.showReadsAlphabetically" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bShowReadsAlphabetically_ = true; else if ( soResourceValue == "false" ) pRes->bShowReadsAlphabetically_ = false; else BAD_VALUE( "value for resource consed.showReadsAlphabetically must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.showReadsInAlignedReadsWindowOrderedByFile" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bShowReadsInAlignedReadsWindowOrderedByFile_ = true; else if ( soResourceValue == "false" ) pRes->bShowReadsInAlignedReadsWindowOrderedByFile_ = false; else BAD_VALUE( "value for resource consed.showReadsInAlignedReadsWindowOrderedByFile must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.showReadsInAlignedReadsWindowOrderedByThisFile" ) { pRes->filShowReadsInAlignedReadsWindowOrderedByThisFile_ = soResourceValue; return; } if ( soResourceName == "consed.showReadsAtCursorSortedHow" ) { pRes->soShowReadsAtCursorSortedHow_ = soResourceValue; return; } if ( soResourceName == "consed.showABIBasesInTraceWindow" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bShowABIBasesInTraceWindow_ = true; else if ( soResourceValue == "false" ) pRes->bShowABIBasesInTraceWindow_ = false; else BAD_VALUE( "value for resource consed.showABIBasesInTraceWindow must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.tracesWindowInitialPixelHeight" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nTracesWindowInitialPixelHeight_ ) ) BAD_VALUE( "value for resource consed.tracesWindowInitialPixelHeight must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewWindowInitialPixelHeight" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewWindowInitialPixelHeight_ ) ) BAD_VALUE( "value for resource consed.assemblyViewWindowInitialPixelHeight must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewFileOfTemplatesToNotShow" ) { pRes->filAssemblyViewFileOfTemplatesToNotShow_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewCrossMatchMinmatch" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewCrossMatchMinmatch_ ) ) BAD_VALUE( "value for resource consed.assemblyViewCrossMatchMinmatch must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewCrossMatchMinscore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewCrossMatchMinscore_ ) ) BAD_VALUE( "value for resource consed.assemblyViewCrossMatchMinscore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewFindSequenceMatchesForConsedScript" ) { pRes->filAssemblyViewFindSequenceMatchesForConsedScript_ = soResourceValue; return; } if ( soResourceName == "consed.assemblyViewCrossmatchMinmatch" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewCrossmatchMinmatch_ ) ) BAD_VALUE( "value for resource consed.assemblyViewCrossmatchMinmatch must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewCrossmatchMinscore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewCrossmatchMinscore_ ) ) BAD_VALUE( "value for resource consed.assemblyViewCrossmatchMinscore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewSequenceMatchesMinimumSimilarity" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewSequenceMatchesMinimumSimilarity_ ) ) BAD_VALUE( "value for resource consed.assemblyViewSequenceMatchesMinimumSimilarity must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.tracesWindowInitialPixelWidth" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nTracesWindowInitialPixelWidth_ ) ) BAD_VALUE( "value for resource consed.tracesWindowInitialPixelWidth must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewWindowInitialPixelWidth" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewWindowInitialPixelWidth_ ) ) BAD_VALUE( "value for resource consed.assemblyViewWindowInitialPixelWidth must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.automaticallyScaleTraces" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutomaticallyScaleTraces_ = true; else if ( soResourceValue == "false" ) pRes->bAutomaticallyScaleTraces_ = false; else BAD_VALUE( "value for resource consed.automaticallyScaleTraces must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.automaticallyScaleTracesSamplePeakHeightFractionOfWindowHeight" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutomaticallyScaleTracesSamplePeakHeightFractionOfWindowHeight_ ) ) BAD_VALUE( "value for resource consed.automaticallyScaleTracesSamplePeakHeightFractionOfWindowHeight must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.automaticallyScaleTracesSamplePeakPercentile" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutomaticallyScaleTracesSamplePeakPercentile_ ) ) BAD_VALUE( "value for resource consed.automaticallyScaleTracesSamplePeakPercentile must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.verticalTraceMagnification" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nVerticalTraceMagnification_ ) ) BAD_VALUE( "value for resource consed.verticalTraceMagnification must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.userDefinedKeys" ) { pRes->soUserDefinedKeys_ = soResourceValue; return; } if ( soResourceName == "consed.programsForUserDefinedKeys" ) { pRes->soProgramsForUserDefinedKeys_ = soResourceValue; return; } if ( soResourceName == "consed.argumentsToPassToUserDefinedPrograms" ) { pRes->soArgumentsToPassToUserDefinedPrograms_ = soResourceValue; return; } if ( soResourceName == "consed.tagsToApplyWithUserDefinedKeys" ) { pRes->soTagsToApplyWithUserDefinedKeys_ = soResourceValue; return; } if ( soResourceName == "consed.snpGenomeUseInsertionPolymorphisms" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bSnpGenomeUseInsertionPolymorphisms_ = true; else if ( soResourceValue == "false" ) pRes->bSnpGenomeUseInsertionPolymorphisms_ = false; else BAD_VALUE( "value for resource consed.snpGenomeUseInsertionPolymorphisms must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.listOfTagTypesToHide" ) { pRes->soListOfTagTypesToHide_ = soResourceValue; return; } if ( soResourceName == "consed.listOfOptionalWordsToSaveInListOfReadNames" ) { pRes->soListOfOptionalWordsToSaveInListOfReadNames_ = soResourceValue; return; } if ( soResourceName == "consed.extendConsensusWithHighQuality" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bExtendConsensusWithHighQuality_ = true; else if ( soResourceValue == "false" ) pRes->bExtendConsensusWithHighQuality_ = false; else BAD_VALUE( "value for resource consed.extendConsensusWithHighQuality must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.fastStartup" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bFastStartup_ = true; else if ( soResourceValue == "false" ) pRes->bFastStartup_ = false; else BAD_VALUE( "value for resource consed.fastStartup must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.fastStartupFile" ) { pRes->filFastStartupFile_ = soResourceValue; return; } if ( soResourceName == "consed.alwaysRunProgramToGetChromats" ) { pRes->soAlwaysRunProgramToGetChromats_ = soResourceValue; return; } if ( soResourceName == "consed.programToRunToGetChromats" ) { pRes->filProgramToRunToGetChromats_ = soResourceValue; return; } if ( soResourceName == "consed.programToRunToGetChromatsOf454Reads" ) { pRes->filProgramToRunToGetChromatsOf454Reads_ = soResourceValue; return; } if ( soResourceName == "consed.createFakeChromatsForSolexaReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bCreateFakeChromatsForSolexaReads_ = true; else if ( soResourceValue == "false" ) pRes->bCreateFakeChromatsForSolexaReads_ = false; else BAD_VALUE( "value for resource consed.createFakeChromatsForSolexaReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishUseLongModelReadRatherThanShort" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishUseLongModelReadRatherThanShort_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishUseLongModelReadRatherThanShort_ = false; else BAD_VALUE( "value for resource consed.autoFinishUseLongModelReadRatherThanShort must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.askAgainIfWantToQuitConsedIfThisManyReads" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAskAgainIfWantToQuitConsedIfThisManyReads_ ) ) BAD_VALUE( "value for resource consed.askAgainIfWantToQuitConsedIfThisManyReads must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.printWindowInstructions" ) { pRes->soPrintWindowInstructions_ = soResourceValue; return; } if ( soResourceName == "consed.allowMultipleSearchForStringWindows" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAllowMultipleSearchForStringWindows_ = true; else if ( soResourceValue == "false" ) pRes->bAllowMultipleSearchForStringWindows_ = false; else BAD_VALUE( "value for resource consed.allowMultipleSearchForStringWindows must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoPCRAmplifyFalseProductsOKIfLargerThanThis" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoPCRAmplifyFalseProductsOKIfLargerThanThis_ ) ) BAD_VALUE( "value for resource consed.autoPCRAmplifyFalseProductsOKIfLargerThanThis must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoPCRAmplifyMakePrimerOutOfFirstRegion" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoPCRAmplifyMakePrimerOutOfFirstRegion_ = true; else if ( soResourceValue == "false" ) pRes->bAutoPCRAmplifyMakePrimerOutOfFirstRegion_ = false; else BAD_VALUE( "value for resource consed.autoPCRAmplifyMakePrimerOutOfFirstRegion must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoPCRAmplifyMaybeRejectPrimerIfThisCloseToDesiredProduct" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoPCRAmplifyMaybeRejectPrimerIfThisCloseToDesiredProduct_ ) ) BAD_VALUE( "value for resource consed.autoPCRAmplifyMaybeRejectPrimerIfThisCloseToDesiredProduct must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.addNewReadsRecalculateConsensusQuality" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAddNewReadsRecalculateConsensusQuality_ = true; else if ( soResourceValue == "false" ) pRes->bAddNewReadsRecalculateConsensusQuality_ = false; else BAD_VALUE( "value for resource consed.addNewReadsRecalculateConsensusQuality must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.addNewReadsPutReadIntoItsOwnContig" ) { pRes->soAddNewReadsPutReadIntoItsOwnContig_ = soResourceValue; return; } if ( soResourceName == "consed.addNewReadsCheckThatCrossMatchRunCorrectly" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAddNewReadsCheckThatCrossMatchRunCorrectly_ = true; else if ( soResourceValue == "false" ) pRes->bAddNewReadsCheckThatCrossMatchRunCorrectly_ = false; else BAD_VALUE( "value for resource consed.addNewReadsCheckThatCrossMatchRunCorrectly must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewNumberOfRowsOfTags" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewNumberOfRowsOfTags_ ) ) BAD_VALUE( "value for resource consed.assemblyViewNumberOfRowsOfTags must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.warnUserWhenTryingToEditAllReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bWarnUserWhenTryingToEditAllReads_ = true; else if ( soResourceValue == "false" ) pRes->bWarnUserWhenTryingToEditAllReads_ = false; else BAD_VALUE( "value for resource consed.warnUserWhenTryingToEditAllReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.maybeXKEYSYMDBPath" ) { pRes->filMaybeXKEYSYMDBPath_ = soResourceValue; return; } if ( soResourceName == "consed.maybeXKEYSYMDBPath2" ) { pRes->filMaybeXKEYSYMDBPath2_ = soResourceValue; return; } if ( soResourceName == "consed.amountToMoveWithBigLeftAndRightArrows" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAmountToMoveWithBigLeftAndRightArrows_ ) ) BAD_VALUE( "value for resource consed.amountToMoveWithBigLeftAndRightArrows must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsMinDiscrepantReads" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nNavigateByHighlyDiscrepantPositionsMinDiscrepantReads_ ) ) BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsMinDiscrepantReads must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsMaxDepthOfCoverage" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nNavigateByHighlyDiscrepantPositionsMaxDepthOfCoverage_ ) ) BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsMaxDepthOfCoverage must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsIgnoreBasesBelowThisQuality" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nNavigateByHighlyDiscrepantPositionsIgnoreBasesBelowThisQuality_ ) ) BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsIgnoreBasesBelowThisQuality must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsJustListIndels" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateByHighlyDiscrepantPositionsJustListIndels_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateByHighlyDiscrepantPositionsJustListIndels_ = false; else BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsJustListIndels must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsIgnoreOtherReadsStartingAtSameLocation" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateByHighlyDiscrepantPositionsIgnoreOtherReadsStartingAtSameLocation_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateByHighlyDiscrepantPositionsIgnoreOtherReadsStartingAtSameLocation_ = false; else BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsIgnoreOtherReadsStartingAtSameLocation must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsIgnoreIfListedBasesInConsensus" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bNavigateByHighlyDiscrepantPositionsIgnoreIfListedBasesInConsensus_ = true; else if ( soResourceValue == "false" ) pRes->bNavigateByHighlyDiscrepantPositionsIgnoreIfListedBasesInConsensus_ = false; else BAD_VALUE( "value for resource consed.navigateByHighlyDiscrepantPositionsIgnoreIfListedBasesInConsensus must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.navigateByHighlyDiscrepantPositionsIgnoreIfTheseBasesInConsensus" ) { pRes->soNavigateByHighlyDiscrepantPositionsIgnoreIfTheseBasesInConsensus_ = soResourceValue; return; } if ( soResourceName == "consed.phdBallDirectory" ) { pRes->filPhdBallDirectory_ = soResourceValue; return; } if ( soResourceName == "consed.newAceFileFOF" ) { pRes->filNewAceFileFOF_ = soResourceValue; return; } if ( soResourceName == "consed.navigateByHighOrLowDepthCoalesceRegionsIfThisClose" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nNavigateByHighOrLowDepthCoalesceRegionsIfThisClose_ ) ) BAD_VALUE( "value for resource consed.navigateByHighOrLowDepthCoalesceRegionsIfThisClose must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.removeReadsDeleteNotJustPutInOwnContig" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bRemoveReadsDeleteNotJustPutInOwnContig_ = true; else if ( soResourceValue == "false" ) pRes->bRemoveReadsDeleteNotJustPutInOwnContig_ = false; else BAD_VALUE( "value for resource consed.removeReadsDeleteNotJustPutInOwnContig must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.paired454LeftReadExtension" ) { pRes->soPaired454LeftReadExtension_ = soResourceValue; return; } if ( soResourceName == "consed.paired454RightReadExtension" ) { pRes->soPaired454RightReadExtension_ = soResourceValue; return; } if ( soResourceName == "consed.snpGenome1MSnps" ) { pRes->filSnpGenome1MSnps_ = soResourceValue; return; } if ( soResourceName == "consed.diffChromosomesExcludeDeletions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bDiffChromosomesExcludeDeletions_ = true; else if ( soResourceValue == "false" ) pRes->bDiffChromosomesExcludeDeletions_ = false; else BAD_VALUE( "value for resource consed.diffChromosomesExcludeDeletions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.snpGenomeFilterByWeight" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bSnpGenomeFilterByWeight_ = true; else if ( soResourceValue == "false" ) pRes->bSnpGenomeFilterByWeight_ = false; else BAD_VALUE( "value for resource consed.snpGenomeFilterByWeight must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.wantReadsUpToThisFarFromSnps" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nWantReadsUpToThisFarFromSnps_ ) ) BAD_VALUE( "value for resource consed.wantReadsUpToThisFarFromSnps must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.phaster2PhdBallSaveWhichMate" ) { pRes->soPhaster2PhdBallSaveWhichMate_ = soResourceValue; return; } if ( soResourceName == "consed.phaster2PhdBallSaveInPhasterFormat" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPhaster2PhdBallSaveInPhasterFormat_ = true; else if ( soResourceValue == "false" ) pRes->bPhaster2PhdBallSaveInPhasterFormat_ = false; else BAD_VALUE( "value for resource consed.phaster2PhdBallSaveInPhasterFormat must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.phaster2PhdBallCalculateNewLocationsFile" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPhaster2PhdBallCalculateNewLocationsFile_ = true; else if ( soResourceValue == "false" ) pRes->bPhaster2PhdBallCalculateNewLocationsFile_ = false; else BAD_VALUE( "value for resource consed.phaster2PhdBallCalculateNewLocationsFile must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.phdBall2FastaIgnoreLowQualityReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPhdBall2FastaIgnoreLowQualityReads_ = true; else if ( soResourceValue == "false" ) pRes->bPhdBall2FastaIgnoreLowQualityReads_ = false; else BAD_VALUE( "value for resource consed.phdBall2FastaIgnoreLowQualityReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.phdBall2FastaLowestAverageQuality" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPhdBall2FastaLowestAverageQuality_ ) ) BAD_VALUE( "value for resource consed.phdBall2FastaLowestAverageQuality must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.nextPhredPipelineControlFile" ) { pRes->filNextPhredPipelineControlFile_ = soResourceValue; return; } if ( soResourceName == "consed.nextPhredPipelineTiffPerlScript" ) { pRes->filNextPhredPipelineTiffPerlScript_ = soResourceValue; return; } if ( soResourceName == "consed.nextPhredPipelinePhasterPerlScript" ) { pRes->filNextPhredPipelinePhasterPerlScript_ = soResourceValue; return; } if ( soResourceName == "consed.nextPhredPipelineVersion" ) { pRes->soNextPhredPipelineVersion_ = soResourceValue; return; } if ( soResourceName == "consed.nextPhredPipelineMainDirectory" ) { pRes->soNextPhredPipelineMainDirectory_ = soResourceValue; return; } if ( soResourceName == "consed.maxNumberOfReadsPerPhdBall" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaxNumberOfReadsPerPhdBall_ ) ) BAD_VALUE( "value for resource consed.maxNumberOfReadsPerPhdBall must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.userWantsToSaveToThisAceFile" ) { pRes->filUserWantsToSaveToThisAceFile_ = soResourceValue; return; } if ( soResourceName == "consed.autoFinishEmulate9_66Behavior" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishEmulate9_66Behavior_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishEmulate9_66Behavior_ = false; else BAD_VALUE( "value for resource consed.autoFinishEmulate9_66Behavior must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersPCRPrimersGroupedIntoWindowOfThisManyBases" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersPCRPrimersGroupedIntoWindowOfThisManyBases_ ) ) BAD_VALUE( "value for resource consed.primersPCRPrimersGroupedIntoWindowOfThisManyBases must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersLookForThisManyPCRPrimerPairsPerPairOfGroups" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersLookForThisManyPCRPrimerPairsPerPairOfGroups_ ) ) BAD_VALUE( "value for resource consed.primersLookForThisManyPCRPrimerPairsPerPairOfGroups must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishStandardDeviationsFromMeanFromGapToLookForTemplatesForSuggestingEachMissingReadOfReadPairs" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishStandardDeviationsFromMeanFromGapToLookForTemplatesForSuggestingEachMissingReadOfReadPairs_ ) ) BAD_VALUE( "value for resource consed.autoFinishStandardDeviationsFromMeanFromGapToLookForTemplatesForSuggestingEachMissingReadOfReadPairs must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishCheckThatReadsFromTheSameTemplateAreConsistent" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishCheckThatReadsFromTheSameTemplateAreConsistent_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishCheckThatReadsFromTheSameTemplateAreConsistent_ = false; else BAD_VALUE( "value for resource consed.autoFinishCheckThatReadsFromTheSameTemplateAreConsistent must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotAllowSubcloneCustomPrimerReadsCloseTogether" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishDoNotAllowSubcloneCustomPrimerReadsCloseTogether_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishDoNotAllowSubcloneCustomPrimerReadsCloseTogether_ = false; else BAD_VALUE( "value for resource consed.autoFinishDoNotAllowSubcloneCustomPrimerReadsCloseTogether must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotAllowWholeCloneCustomPrimerReadsCloseTogether" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishDoNotAllowWholeCloneCustomPrimerReadsCloseTogether_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishDoNotAllowWholeCloneCustomPrimerReadsCloseTogether_ = false; else BAD_VALUE( "value for resource consed.autoFinishDoNotAllowWholeCloneCustomPrimerReadsCloseTogether must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinilibrariesPreferTemplateIfSizeThisManyStdDevsFromMean" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishMinilibrariesPreferTemplateIfSizeThisManyStdDevsFromMean_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinilibrariesPreferTemplateIfSizeThisManyStdDevsFromMean must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinNumberOfForwardReversePairsInLibraryToCalculateAverageInsertSize" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMinNumberOfForwardReversePairsInLibraryToCalculateAverageInsertSize_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinNumberOfForwardReversePairsInLibraryToCalculateAverageInsertSize must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishIfEnoughFwdRevPairsUseThisManyStdDevBelowMeanForInsertSize" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishIfEnoughFwdRevPairsUseThisManyStdDevBelowMeanForInsertSize_ ) ) BAD_VALUE( "value for resource consed.autoFinishIfEnoughFwdRevPairsUseThisManyStdDevBelowMeanForInsertSize must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishNewCustomPrimerReadThisFarFromOldCustomPrimerRead" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishNewCustomPrimerReadThisFarFromOldCustomPrimerRead_ ) ) BAD_VALUE( "value for resource consed.autoFinishNewCustomPrimerReadThisFarFromOldCustomPrimerRead must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinNumberOfSingleSubcloneBasesFixedByAnExp" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMinNumberOfSingleSubcloneBasesFixedByAnExp_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinNumberOfSingleSubcloneBasesFixedByAnExp must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishNumberOfBasesBetweenContigsAssumed" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishNumberOfBasesBetweenContigsAssumed_ ) ) BAD_VALUE( "value for resource consed.autoFinishNumberOfBasesBetweenContigsAssumed must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishPotentialHighQualityPartOfReadStart" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishPotentialHighQualityPartOfReadStart_ ) ) BAD_VALUE( "value for resource consed.autoFinishPotentialHighQualityPartOfReadStart must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishPotentialHighQualityPartOfReadEnd" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishPotentialHighQualityPartOfReadEnd_ ) ) BAD_VALUE( "value for resource consed.autoFinishPotentialHighQualityPartOfReadEnd must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishPrintCustomNavigationFileForChosenReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishPrintCustomNavigationFileForChosenReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishPrintCustomNavigationFileForChosenReads_ = false; else BAD_VALUE( "value for resource consed.autoFinishPrintCustomNavigationFileForChosenReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishReversesForFlankingGapsTemplateMustProtrudeFromContigThisMuch" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishReversesForFlankingGapsTemplateMustProtrudeFromContigThisMuch_ ) ) BAD_VALUE( "value for resource consed.autoFinishReversesForFlankingGapsTemplateMustProtrudeFromContigThisMuch must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishTagOligosWhenDoExperiments" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoFinishTagOligosWhenDoExperiments_ = true; else if ( soResourceValue == "false" ) pRes->bAutoFinishTagOligosWhenDoExperiments_ = false; else BAD_VALUE( "value for resource consed.autoFinishTagOligosWhenDoExperiments must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.countPads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bCountPads_ = true; else if ( soResourceValue == "false" ) pRes->bCountPads_ = false; else BAD_VALUE( "value for resource consed.countPads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.debugging" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nDebugging_ ) ) BAD_VALUE( "value for resource consed.debugging must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.debugging2" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nDebugging2_ ) ) BAD_VALUE( "value for resource consed.debugging2 must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.debugging3" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nDebugging3_ ) ) BAD_VALUE( "value for resource consed.debugging3 must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.debuggingString" ) { pRes->soDebuggingString_ = soResourceValue; return; } if ( soResourceName == "consed.ignoreHighQualityDiscrepanciesThisManyBasesFromEndOfAlignedRegion" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nIgnoreHighQualityDiscrepanciesThisManyBasesFromEndOfAlignedRegion_ ) ) BAD_VALUE( "value for resource consed.ignoreHighQualityDiscrepanciesThisManyBasesFromEndOfAlignedRegion must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.ignoreUnalignedHighQualitySegmentsShorterThanThis" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nIgnoreUnalignedHighQualitySegmentsShorterThanThis_ ) ) BAD_VALUE( "value for resource consed.ignoreUnalignedHighQualitySegmentsShorterThanThis must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersLookThisFarForForwardVectorInsertJunction" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersLookThisFarForForwardVectorInsertJunction_ ) ) BAD_VALUE( "value for resource consed.primersLookThisFarForForwardVectorInsertJunction must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersDNAConcentrationNanomolar" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dPrimersDNAConcentrationNanomolar_ ) ) BAD_VALUE( "value for resource consed.primersDNAConcentrationNanomolar must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxMatchElsewhereScore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxMatchElsewhereScore_ ) ) BAD_VALUE( "value for resource consed.primersMaxMatchElsewhereScore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxMatchElsewhereScoreForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxMatchElsewhereScoreForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMaxMatchElsewhereScoreForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxSelfMatchScore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxSelfMatchScore_ ) ) BAD_VALUE( "value for resource consed.primersMaxSelfMatchScore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMaxPrimerDimerScoreForPCR" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMaxPrimerDimerScoreForPCR_ ) ) BAD_VALUE( "value for resource consed.primersMaxPrimerDimerScoreForPCR must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersMinQuality" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersMinQuality_ ) ) BAD_VALUE( "value for resource consed.primersMinQuality must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersPrintInfoOnRejectedTemplates" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersPrintInfoOnRejectedTemplates_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersPrintInfoOnRejectedTemplates_ = false; else BAD_VALUE( "value for resource consed.primersPrintInfoOnRejectedTemplates must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersSaltConcentrationMillimolar" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dPrimersSaltConcentrationMillimolar_ ) ) BAD_VALUE( "value for resource consed.primersSaltConcentrationMillimolar must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.primersScreenForVector" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bPrimersScreenForVector_ = true; else if ( soResourceValue == "false" ) pRes->bPrimersScreenForVector_ = false; else BAD_VALUE( "value for resource consed.primersScreenForVector must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.primersToleranceForDifferentBeginningLocationOfUniversalPrimerReads" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersToleranceForDifferentBeginningLocationOfUniversalPrimerReads_ ) ) BAD_VALUE( "value for resource consed.primersToleranceForDifferentBeginningLocationOfUniversalPrimerReads must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.primersTooManyVectorBasesInWalkingRead" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nPrimersTooManyVectorBasesInWalkingRead_ ) ) BAD_VALUE( "value for resource consed.primersTooManyVectorBasesInWalkingRead must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.qualityThresholdForLowConsensusQuality" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nQualityThresholdForLowConsensusQuality_ ) ) BAD_VALUE( "value for resource consed.qualityThresholdForLowConsensusQuality must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.tagColorPerCentOfBase" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nTagColorPerCentOfBase_ ) ) BAD_VALUE( "value for resource consed.tagColorPerCentOfBase must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.uncompressedChromatDirectory" ) { pRes->soUncompressedChromatDirectory_ = soResourceValue; return; } if ( soResourceName == "consed.454sff2scfDirectory" ) { pRes->fil454sff2scfDirectory_ = soResourceValue; return; } if ( soResourceName == "consed.whenMakingFakeReadToJoinContigsAddThisManyBasesOnEitherSideOfAlignedRegion" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nWhenMakingFakeReadToJoinContigsAddThisManyBasesOnEitherSideOfAlignedRegion_ ) ) BAD_VALUE( "value for resource consed.whenMakingFakeReadToJoinContigsAddThisManyBasesOnEitherSideOfAlignedRegion must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.writeThisAceFormat" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nWriteThisAceFormat_ ) ) BAD_VALUE( "value for resource consed.writeThisAceFormat must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.dumpCoreIfBoundsError" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bDumpCoreIfBoundsError_ = true; else if ( soResourceValue == "false" ) pRes->bDumpCoreIfBoundsError_ = false; else BAD_VALUE( "value for resource consed.dumpCoreIfBoundsError must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishMinSmithWatermanScoreOfARun" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoFinishMinSmithWatermanScoreOfARun_ ) ) BAD_VALUE( "value for resource consed.autoFinishMinSmithWatermanScoreOfARun must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoFinishDoNotComparePCRPrimersMoreThanThisManyTimes" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAutoFinishDoNotComparePCRPrimersMoreThanThisManyTimes_ ) ) BAD_VALUE( "value for resource consed.autoFinishDoNotComparePCRPrimersMoreThanThisManyTimes must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.restrictionDigestMaximumBasesToCompareToVector" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nRestrictionDigestMaximumBasesToCompareToVector_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestMaximumBasesToCompareToVector must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.restrictionDigestZoomFactor" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dRestrictionDigestZoomFactor_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestZoomFactor must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.restrictionDigestZoomFactorForNavigate" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dRestrictionDigestZoomFactorForNavigate_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestZoomFactorForNavigate must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.restrictionDigestToleranceInPositionUnits" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nRestrictionDigestToleranceInPositionUnits_ ) ) BAD_VALUE( "value for resource consed.restrictionDigestToleranceInPositionUnits must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoPCRAmplifyTooManySeriousFalseMatches" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoPCRAmplifyTooManySeriousFalseMatches_ ) ) BAD_VALUE( "value for resource consed.autoPCRAmplifyTooManySeriousFalseMatches must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewZoomFactor" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAssemblyViewZoomFactor_ ) ) BAD_VALUE( "value for resource consed.assemblyViewZoomFactor must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewFilterInconsistentFwdRevPairsIfThisClose" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewFilterInconsistentFwdRevPairsIfThisClose_ ) ) BAD_VALUE( "value for resource consed.assemblyViewFilterInconsistentFwdRevPairsIfThisClose must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewGridCellWidthInPixels" ) { if ( !bIsNumericDouble( soResourceValue, pRes->dAssemblyViewGridCellWidthInPixels_ ) ) BAD_VALUE( "value for resource consed.assemblyViewGridCellWidthInPixels must be a decimal number", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewCursorSensitivityInPixels" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewCursorSensitivityInPixels_ ) ) BAD_VALUE( "value for resource consed.assemblyViewCursorSensitivityInPixels must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.assemblyViewReadDepthQuality" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAssemblyViewReadDepthQuality_ ) ) BAD_VALUE( "value for resource consed.assemblyViewReadDepthQuality must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.showAllTracesMaxNumberOfTracesToShowAtOnce" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nShowAllTracesMaxNumberOfTracesToShowAtOnce_ ) ) BAD_VALUE( "value for resource consed.showAllTracesMaxNumberOfTracesToShowAtOnce must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.allowFwdRevPairScaffoldsToBeMergedIfThisManyBasesIntersectionOrLess" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAllowFwdRevPairScaffoldsToBeMergedIfThisManyBasesIntersectionOrLess_ ) ) BAD_VALUE( "value for resource consed.allowFwdRevPairScaffoldsToBeMergedIfThisManyBasesIntersectionOrLess must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.justForPrimateProject" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bJustForPrimateProject_ = true; else if ( soResourceValue == "false" ) pRes->bJustForPrimateProject_ = false; else BAD_VALUE( "value for resource consed.justForPrimateProject must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.solexaFilesAreAssumedToBeHere" ) { pRes->filSolexaFilesAreAssumedToBeHere_ = soResourceValue; return; } if ( soResourceName == "consed.solexaAlignmentFilesPerInsertingPadsCycle" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nSolexaAlignmentFilesPerInsertingPadsCycle_ ) ) BAD_VALUE( "value for resource consed.solexaAlignmentFilesPerInsertingPadsCycle must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.solexaAlignmentsPerAlignmentFile" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nSolexaAlignmentsPerAlignmentFile_ ) ) BAD_VALUE( "value for resource consed.solexaAlignmentsPerAlignmentFile must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.solexaFastqFilesArePhredQualityNotSolexaQuality" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bSolexaFastqFilesArePhredQualityNotSolexaQuality_ = true; else if ( soResourceValue == "false" ) pRes->bSolexaFastqFilesArePhredQualityNotSolexaQuality_ = false; else BAD_VALUE( "value for resource consed.solexaFastqFilesArePhredQualityNotSolexaQuality must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.solexa64FastqOrSanger33Fastq" ) { pRes->soSolexa64FastqOrSanger33Fastq_ = soResourceValue; return; } if ( soResourceName == "consed.maximumReadsInReadList" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaximumReadsInReadList_ ) ) BAD_VALUE( "value for resource consed.maximumReadsInReadList must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.maxLengthOfReadsInapLocatedFragment2" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaxLengthOfReadsInapLocatedFragment2_ ) ) BAD_VALUE( "value for resource consed.maxLengthOfReadsInapLocatedFragment2 must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.maximumStartupErrorsToReport" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nMaximumStartupErrorsToReport_ ) ) BAD_VALUE( "value for resource consed.maximumStartupErrorsToReport must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.454LinkerAlignmentMatchScore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->n454LinkerAlignmentMatchScore_ ) ) BAD_VALUE( "value for resource consed.454LinkerAlignmentMatchScore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.454LinkerAlignmentMismatchScore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->n454LinkerAlignmentMismatchScore_ ) ) BAD_VALUE( "value for resource consed.454LinkerAlignmentMismatchScore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.454LinkerAlignmentIndelScore" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->n454LinkerAlignmentIndelScore_ ) ) BAD_VALUE( "value for resource consed.454LinkerAlignmentIndelScore must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.filter454ReadsDeleteCrossMatchOutput" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bFilter454ReadsDeleteCrossMatchOutput_ = true; else if ( soResourceValue == "false" ) pRes->bFilter454ReadsDeleteCrossMatchOutput_ = false; else BAD_VALUE( "value for resource consed.filter454ReadsDeleteCrossMatchOutput must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportAllNeededSpeciesCode" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportAllNeededSpeciesCode_ ) ) BAD_VALUE( "value for resource consed.autoReportAllNeededSpeciesCode must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportUseCommasInBigNumbers" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportUseCommasInBigNumbers_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportUseCommasInBigNumbers_ = false; else BAD_VALUE( "value for resource consed.autoReportUseCommasInBigNumbers must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintToCompareToReich" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintToCompareToReich_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintToCompareToReich_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintToCompareToReich must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportOnlyAllowSitesThatAreBetweenAcceptableSites" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportOnlyAllowSitesThatAreBetweenAcceptableSites_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportOnlyAllowSitesThatAreBetweenAcceptableSites_ = false; else BAD_VALUE( "value for resource consed.autoReportOnlyAllowSitesThatAreBetweenAcceptableSites must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDeaminationMutationsDeterminedByMoreAccurateMethod" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDeaminationMutationsDeterminedByMoreAccurateMethod_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDeaminationMutationsDeterminedByMoreAccurateMethod_ = false; else BAD_VALUE( "value for resource consed.autoReportDeaminationMutationsDeterminedByMoreAccurateMethod must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportChooseTreesUsingBadData" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportChooseTreesUsingBadData_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportChooseTreesUsingBadData_ = false; else BAD_VALUE( "value for resource consed.autoReportChooseTreesUsingBadData must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportChooseTreesByCountingDeaminationMutations" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportChooseTreesByCountingDeaminationMutations_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportChooseTreesByCountingDeaminationMutations_ = false; else BAD_VALUE( "value for resource consed.autoReportChooseTreesByCountingDeaminationMutations must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportChooseTreesUsingKimura" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportChooseTreesUsingKimura_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportChooseTreesUsingKimura_ = false; else BAD_VALUE( "value for resource consed.autoReportChooseTreesUsingKimura must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintCrudeChimpHumanMutations" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintCrudeChimpHumanMutations_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintCrudeChimpHumanMutations_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintCrudeChimpHumanMutations must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintPositionsForGraham" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintPositionsForGraham_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintPositionsForGraham_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintPositionsForGraham must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintAncestralCpGs" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintAncestralCpGs_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintAncestralCpGs_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintAncestralCpGs must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintCpGMutations" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintCpGMutations_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintCpGMutations_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintCpGMutations must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintMutationsWithContext" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintMutationsWithContext_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintMutationsWithContext_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintMutationsWithContext must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCountAllMutationsML" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCountAllMutationsML_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCountAllMutationsML_ = false; else BAD_VALUE( "value for resource consed.autoReportCountAllMutationsML must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCountAllMutations" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCountAllMutations_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCountAllMutations_ = false; else BAD_VALUE( "value for resource consed.autoReportCountAllMutations must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportIgnoreMultipleTrees" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportIgnoreMultipleTrees_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportIgnoreMultipleTrees_ = false; else BAD_VALUE( "value for resource consed.autoReportIgnoreMultipleTrees must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCountAcceptableColumnsWithNoneOnLeft" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCountAcceptableColumnsWithNoneOnLeft_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCountAcceptableColumnsWithNoneOnLeft_ = false; else BAD_VALUE( "value for resource consed.autoReportCountAcceptableColumnsWithNoneOnLeft must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintFlankedColumns4" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintFlankedColumns4_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintFlankedColumns4_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintFlankedColumns4 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportUseAnnotationFormat" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportUseAnnotationFormat_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportUseAnnotationFormat_ = false; else BAD_VALUE( "value for resource consed.autoReportUseAnnotationFormat must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintFlankedColumns3" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintFlankedColumns3_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintFlankedColumns3_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintFlankedColumns3 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintFlankedColumns2" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintFlankedColumns2_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintFlankedColumns2_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintFlankedColumns2 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintFlankedColumns" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintFlankedColumns_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintFlankedColumns_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintFlankedColumns must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportHighQualitySegmentData" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportHighQualitySegmentData_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportHighQualitySegmentData_ = false; else BAD_VALUE( "value for resource consed.autoReportHighQualitySegmentData must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportGoodReadsBug" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportGoodReadsBug_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportGoodReadsBug_ = false; else BAD_VALUE( "value for resource consed.autoReportGoodReadsBug must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDiscrepancyRateInFlankedRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportDiscrepancyRateInFlankedRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDiscrepancyRateInFlankedRegions2" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions2_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions2_ = false; else BAD_VALUE( "value for resource consed.autoReportDiscrepancyRateInFlankedRegions2 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDiscrepancyRateInFlankedRegions4" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions4_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions4_ = false; else BAD_VALUE( "value for resource consed.autoReportDiscrepancyRateInFlankedRegions4 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDiscrepancyRateInFlankedRegions5" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions5_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDiscrepancyRateInFlankedRegions5_ = false; else BAD_VALUE( "value for resource consed.autoReportDiscrepancyRateInFlankedRegions5 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportSingleSignalOrQuality" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportSingleSignalOrQuality_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportSingleSignalOrQuality_ = false; else BAD_VALUE( "value for resource consed.autoReportSingleSignalOrQuality must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportLowQualityBasesInHQS" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportLowQualityBasesInHQS_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportLowQualityBasesInHQS_ = false; else BAD_VALUE( "value for resource consed.autoReportLowQualityBasesInHQS must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareHQSWithLQS" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareHQSWithLQS_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareHQSWithLQS_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareHQSWithLQS must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCountColumnsForGroupsOfSpecies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCountColumnsForGroupsOfSpecies_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCountColumnsForGroupsOfSpecies_ = false; else BAD_VALUE( "value for resource consed.autoReportCountColumnsForGroupsOfSpecies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportSingleSignalInfo" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportSingleSignalInfo_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportSingleSignalInfo_ = false; else BAD_VALUE( "value for resource consed.autoReportSingleSignalInfo must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportSingleSignalInfo2" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportSingleSignalInfo2_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportSingleSignalInfo2_ = false; else BAD_VALUE( "value for resource consed.autoReportSingleSignalInfo2 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrands" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrands_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrands_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrands must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrandsNoHuman" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrandsNoHuman_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrandsNoHuman_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrandsNoHuman must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrands2" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrands2_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrands2_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrands2 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrands3" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrands3_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrands3_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrands3 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrands4" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrands4_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrands4_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrands4 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportTopStrandPinnedPosition" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportTopStrandPinnedPosition_ ) ) BAD_VALUE( "value for resource consed.autoReportTopStrandPinnedPosition must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportBottomStrandPinnedPosition" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportBottomStrandPinnedPosition_ ) ) BAD_VALUE( "value for resource consed.autoReportBottomStrandPinnedPosition must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCompareTopAndBottomStrandsWithHuman" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCompareTopAndBottomStrandsWithHuman_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCompareTopAndBottomStrandsWithHuman_ = false; else BAD_VALUE( "value for resource consed.autoReportCompareTopAndBottomStrandsWithHuman must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintLengthsOfAlignedSegmentsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintLengthsOfAlignedSegmentsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintLengthsOfAlignedSegmentsOfReads_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintLengthsOfAlignedSegmentsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintLengthsOfUnalignedHighQualitySegmentsOfReads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintLengthsOfUnalignedHighQualitySegmentsOfReads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintLengthsOfUnalignedHighQualitySegmentsOfReads_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintLengthsOfUnalignedHighQualitySegmentsOfReads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintIfReadsAreCorrectlyAligned" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintIfReadsAreCorrectlyAligned_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintIfReadsAreCorrectlyAligned_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintIfReadsAreCorrectlyAligned must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportCalculateErrorProbabilitiesByComparingPTroPPan" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportCalculateErrorProbabilitiesByComparingPTroPPan_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportCalculateErrorProbabilitiesByComparingPTroPPan_ = false; else BAD_VALUE( "value for resource consed.autoReportCalculateErrorProbabilitiesByComparingPTroPPan must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintAgreeDisagreeBetweenPairsOfSpecies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintAgreeDisagreeBetweenPairsOfSpecies_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintAgreeDisagreeBetweenPairsOfSpecies_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintAgreeDisagreeBetweenPairsOfSpecies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintAgreeDisagreeBetweenPairsOfSpecies2" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintAgreeDisagreeBetweenPairsOfSpecies2_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintAgreeDisagreeBetweenPairsOfSpecies2_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintAgreeDisagreeBetweenPairsOfSpecies2 must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportFilterSingleSignal" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportFilterSingleSignal_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportFilterSingleSignal_ = false; else BAD_VALUE( "value for resource consed.autoReportFilterSingleSignal must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportGoodHitReads" ) { pRes->filAutoReportGoodHitReads_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportQualityWindowLow" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportQualityWindowLow_ ) ) BAD_VALUE( "value for resource consed.autoReportQualityWindowLow must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportQualityWindowHigh" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportQualityWindowHigh_ ) ) BAD_VALUE( "value for resource consed.autoReportQualityWindowHigh must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintNumberOfIsolatedPadsForEachSpecies" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintNumberOfIsolatedPadsForEachSpecies_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintNumberOfIsolatedPadsForEachSpecies_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintNumberOfIsolatedPadsForEachSpecies must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintNumberOfIsolatedPads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintNumberOfIsolatedPads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintNumberOfIsolatedPads_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintNumberOfIsolatedPads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportIsolatedPadsOfReadsWithThisPattern" ) { pRes->soAutoReportIsolatedPadsOfReadsWithThisPattern_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportMinNumberOfPerfectlyAlignedBasesBeforeDiscrepancy" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportMinNumberOfPerfectlyAlignedBasesBeforeDiscrepancy_ ) ) BAD_VALUE( "value for resource consed.autoReportMinNumberOfPerfectlyAlignedBasesBeforeDiscrepancy must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportMaxSizeOfDiscrepantRegion" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportMaxSizeOfDiscrepantRegion_ ) ) BAD_VALUE( "value for resource consed.autoReportMaxSizeOfDiscrepantRegion must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportSizeOfDiscrepantRegion" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportSizeOfDiscrepantRegion_ ) ) BAD_VALUE( "value for resource consed.autoReportSizeOfDiscrepantRegion must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintMinimumQualityHistogram" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintMinimumQualityHistogram_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintMinimumQualityHistogram_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintMinimumQualityHistogram must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintDiscrepantRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintDiscrepantRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintDiscrepantRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintDiscrepantRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintBasesInDiscrepantRegions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintBasesInDiscrepantRegions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintBasesInDiscrepantRegions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintBasesInDiscrepantRegions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintDiscrepantRegionsButIgnoreReadsContainingThis" ) { pRes->soAutoReportPrintDiscrepantRegionsButIgnoreReadsContainingThis_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportBackboneReadHasThisStringInIt" ) { pRes->soAutoReportBackboneReadHasThisStringInIt_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportPrintDiscrepantRegionsButOnlyIfAboveQualityThreshold" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintDiscrepantRegionsButOnlyIfAboveQualityThreshold_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintDiscrepantRegionsButOnlyIfAboveQualityThreshold_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintDiscrepantRegionsButOnlyIfAboveQualityThreshold must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintSpeciesAlignment" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintSpeciesAlignment_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintSpeciesAlignment_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintSpeciesAlignment must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintReadAlignment" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintReadAlignment_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintReadAlignment_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintReadAlignment must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintTheseReads" ) { pRes->filAutoReportPrintTheseReads_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportPrintReadPositions" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintReadPositions_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintReadPositions_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintReadPositions must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrintChosenReadName" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportPrintChosenReadName_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportPrintChosenReadName_ = false; else BAD_VALUE( "value for resource consed.autoReportPrintChosenReadName must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportNumbersOfCharactersOfChosenReadNameToBePrinted" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportNumbersOfCharactersOfChosenReadNameToBePrinted_ ) ) BAD_VALUE( "value for resource consed.autoReportNumbersOfCharactersOfChosenReadNameToBePrinted must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportPrefix" ) { pRes->soAutoReportPrefix_ = soResourceValue; return; } if ( soResourceName == "consed.autoReportUseOldCriteriaForDeletingColumnsOfPads" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportUseOldCriteriaForDeletingColumnsOfPads_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportUseOldCriteriaForDeletingColumnsOfPads_ = false; else BAD_VALUE( "value for resource consed.autoReportUseOldCriteriaForDeletingColumnsOfPads must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportDeleteColumnsOfPadsBeforeAdjustingReadQualityValues" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportDeleteColumnsOfPadsBeforeAdjustingReadQualityValues_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportDeleteColumnsOfPadsBeforeAdjustingReadQualityValues_ = false; else BAD_VALUE( "value for resource consed.autoReportDeleteColumnsOfPadsBeforeAdjustingReadQualityValues must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportFlankingBasesMustBeSingleSignal" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportFlankingBasesMustBeSingleSignal_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportFlankingBasesMustBeSingleSignal_ = false; else BAD_VALUE( "value for resource consed.autoReportFlankingBasesMustBeSingleSignal must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportMinimumQualityOfFlankingBases" ) { if ( !bIsNumericMaybeWithWhitespace( soResourceValue, pRes->nAutoReportMinimumQualityOfFlankingBases_ ) ) BAD_VALUE( "value for resource consed.autoReportMinimumQualityOfFlankingBases must be numeric", soResourceValue ) return; } if ( soResourceName == "consed.autoReportFlankingBasesMustBeInHighQualitySegment" ) { soResourceValue.toLower(); if ( soResourceValue == "true" ) pRes->bAutoReportFlankingBasesMustBeInHighQualitySegment_ = true; else if ( soResourceValue == "false" ) pRes->bAutoReportFlankingBasesMustBeInHighQualitySegment_ = false; else BAD_VALUE( "value for resource consed.autoReportFlankingBasesMustBeInHighQualitySegment must be true or false", soResourceValue ) return; } if ( soResourceName == "consed.autoReportSpecies" ) { pRes->soAutoReportSpecies_ = soResourceValue; return; } // else { PARSE_PANIC( "unrecognized consed resource" ); // for final release, change this to // PARSE_PANIC( "unrecognized consed resource" ); // Note that this will not go into the autofinish output file // because it hasn't been opened yet. So this is not a good // solution for official releases. // RWCString soError = "Warning: unrecognized consed resource. Did you misspell? Error in file "; // soError += soFilenameStatic; // soError += " at line "; // soError += RWCString( (long) nCurrentLineStatic ); // soError += ". Line:\n"; // soError += soResourceLine; // soError += "or:"; // soError += szLine; // soError += " consed resources error detected from source file "; // soError += __FILE__; // soError += " at "; // soError += RWCString( (long) __LINE__ ); // soError += szConsedVersion; // cerr << soError << endl; // } }