This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use std::cell::UnsafeCell; | |
use std::io::Write; | |
// `parking_lot` evidently has better implementations of some of these sync primatives? | |
use std::sync::atomic::{AtomicUsize, Ordering}; | |
use std::sync::{Arc, Condvar, Mutex}; | |
use errors::Result; | |
const BUFFER_SIZE: usize = 1000; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
""" | |
This process the tree from the Hug et al 2016 paper into a genus-resolved tree | |
with NCBI tax ids for the leafs. This helps make it a little more amenable to | |
graphing (i.e. shorter labels and fewer of them) and comparing with the | |
preexisting NCBI taxonomy. | |
(Note that not all of the nodes can be resolved into tax ids using this name | |
matching and the current NCBI taxonomy (e.g. CPR phyla don't generally have | |
genus resolution yet). Also, I had to drop some members of some of the genuses | |
to ensure no genuses were paraphyletic. This is good enough for my purposes, but |