f22f0b5f1d467e570dad2407813748889408d9bd angie Tue Sep 14 09:38:11 2021 -0700 Don't rely on outputs printed only when usher is compiled with -DDEBUG=1; those are going away in server mode. We already weren't showing the 'Best nodes' output, so just remove that code. We already have sample mutations in seqInfo->sncList, so just reformat that into placementInfo->sampleMuts. diff --git src/hg/hgPhyloPlace/phyloPlace.h src/hg/hgPhyloPlace/phyloPlace.h index 6dc5188..ba176f93 100644 --- src/hg/hgPhyloPlace/phyloPlace.h +++ src/hg/hgPhyloPlace/phyloPlace.h @@ -56,53 +56,47 @@ uint ambigCount; // # ambiguous IUPAC bases char *insRanges; // ranges and sequences inserted into reference char *delRanges; // ranges and sequences deleted from reference uint insBases; // total #bases inserted into reference uint delBases; // total #bases deleted from reference }; struct variantPathNode /* A list of these gives a path from phylo tree root to some node (usually user seq leaf). */ { struct variantPathNode *next; char *nodeName; // Either a numeric internal node ID or the user seq name struct singleNucChange *sncList; // One or more single nucleotide changes associated with node }; -struct bestNodeInfo - { - struct bestNodeInfo *next; - char *name; // Node name - struct variantPathNode *variantPath; // Mutations assigned to nodes along path from root->node - boolean isSibling; // Placement would be as sibling of node (not child) - }; - struct baseVal /* List of imputed base positions and values */ { struct baseVal *next; int chromStart; // 0-based position char *val; // nucleotide base(s) }; struct placementInfo /* Info about a sample's mutations and placement in the phylo tree */ { char *sampleId; // Sample name from FASTA or VCF header struct slName *sampleMuts; // Differences with the reference genome + // -- NOTE: runUsher used to make this from stderr of + // usher compiled with -DDEBUG=1; now caller must add it. + // (struct seqInfo sncList has the same info) struct variantPathNode *variantPath; // Mutations assigned to nodes along path from root - struct bestNodeInfo *bestNodes; // Other nodes identified as equally parsimonious struct baseVal *imputedBases; // Ambiguous bases imputed to ref/alt [ACGT] int parsimonyScore; // Parsimony cost of placing sample int bestNodeCount; // Number of equally parsimonious placements char *nextClade; // Nextstrain clade assigned by UShER char *pangoLineage; // Pango lineage assigned by UShER // Fields above are parsed out of usher result files; below are added on later. char *nearestNeighbor; // Nearest neighbor in phylogenetic tree/NULL if not found char *neighborLineage; // Lineage of nearest neighbor/NULL if not found }; struct subtreeInfo /* Parsed subtree from usher and derivative products. */ { struct subtreeInfo *next; struct tempName *subtreeTn; // Newick file from usher (may have condensed nodes)