(
void);
61 virtual int Run(
void);
62 virtual void Exit(
void);
79arg_desc->SetUsageContext(
GetArguments().GetProgramBasename(),
80 "Application for computing and printing, " 81 "phylogenetic trees");
84arg_desc->AddKey(
"i",
"filename",
"File with Seq-annot or tree in ASN format",
87arg_desc->AddKey(
"o",
"filename",
"File name",
92arg_desc->SetCurrentGroup(
"Input options");
93arg_desc->AddDefaultKey(
"type",
"type",
"Type of input data",
97 "seqalignset",
"tree"));
101arg_desc->SetCurrentGroup(
"Tree computation options");
103arg_desc->AddDefaultKey(
"divergence",
"value",
"Maximum divergence" 104 " between sequences",
107arg_desc->AddDefaultKey(
"distance",
"method",
"Evolutionary correction for" 108 " sequence divergence - distance",
112 "jukes_cantor",
"poisson",
"kimura",
113 "grishin",
"grishin2"));
115arg_desc->AddDefaultKey(
"treemethod",
"method",
"Algorithm for phylogenetic" 116 " tree computation",
125arg_desc->SetCurrentGroup(
"Tree manipulation options");
127arg_desc->AddOptionalKey(
"simpl",
"method",
"Tree simplification method",
131 "blastname",
"full"));
133arg_desc->AddOptionalKey(
"expcol",
"num",
"Expand or collapse node",
136arg_desc->AddOptionalKey(
"reroot",
"num",
"Re-root tree",
139arg_desc->AddOptionalKey(
"subtree",
"num",
"Show sub-tree",
144arg_desc->SetCurrentGroup(
"Output options");
146arg_desc->AddDefaultKey(
"outfmt",
"format",
"Format for saving tree",
150 "newick",
"nexus"));
152arg_desc->AddDefaultKey(
"labels",
"labels",
"Sequence labels in the tree",
156 "seqtitle",
"blastname",
"seqid",
157 "seqid_and_blastname"));
159arg_desc->AddOptionalKey(
"seqalign",
"filename",
"Write seq_align " 160 "correspoinding to the tree to a file",
188unique_ptr<CPhyTreeFormatter> gtree;
191 if(args[
"type"].AsString() ==
"seqalignset") {
194 else if(args[
"type"].AsString() ==
"seqalign") {
217calc->SetMaxDivergence(args[
"divergence"].AsDouble());
220 if(args[
"labels"].AsString() ==
"taxname") {
222}
else if(args[
"labels"].AsString() ==
"seqtitle") {
224}
else if(args[
"labels"].AsString() ==
"blastname") {
226}
else if(args[
"labels"].AsString() ==
"seqid") {
228}
else if(args[
"labels"].AsString() ==
"seqid_and_blastname") {
236 if(args[
"distance"].AsString() ==
"jukes_cantor") {
238}
else if(args[
"distance"].AsString() ==
"poisson") {
240}
else if(args[
"distance"].AsString() ==
"kimura") {
242}
else if(args[
"distance"].AsString() ==
"grishin") {
244}
else if(args[
"distance"].AsString() ==
"grishin2") {
250calc->SetDistMethod(dist);
253 if(args[
"treemethod"].AsString() ==
"fastme") {
255}
else if(args[
"treemethod"].AsString() ==
"nj") {
258 NcbiCerr<<
"Error: Unrecognized tree computation method." 262calc->SetTreeMethod(method);
264 if(calc->CalcBioTree()) {
268 ITERATE(vector<string>, it, calc->GetMessages()) {
276 if(calc->IsMessage()) {
277 ITERATE(vector<string>, it, calc->GetMessages()) {
284 if(args[
"seqalign"]) {
297 if(args[
"simpl"]) {
298 if(args[
"simpl"].AsString() ==
"blastname") {
300}
else if(args[
"simpl"].AsString() ==
"full") {
306 if(args[
"reroot"]) {
307gtree->RerootTree(args[
"reroot"].AsInteger());
311 if(args[
"expcol"]) {
312gtree->ExpandCollapseSubtree(args[
"expcol"].AsInteger());
316 if(args[
"subtree"]) {
317gtree->ShowSubtree(args[
"subtree"].AsInteger());
323 if(args[
"outfmt"].AsString() ==
"asn") {
325}
else if(args[
"outfmt"].AsString() ==
"newick") {
327}
else if(args[
"outfmt"].AsString() ==
"nexus") {
334gtree->WriteTreeAs(args[
"o"].AsOutputFile(), tree_format);
356 int main(
intargc,
const char* argv[])
User-defined methods of the data storage class.
Things for representing and manipulating bio trees.
static TRegisterLoaderInfo RegisterInObjectManager(CObjectManager &om, CReader *reader=0, CObjectManager::EIsDefault is_default=CObjectManager::eDefault, CObjectManager::TPriority priority=CObjectManager::kPriority_NotSet)
virtual void Exit(void)
Cleanup on application exit.
virtual void Init(void)
Initialize the application.
virtual int Run(void)
Run the application.
Computaion of distance-based phylognetic tree.
ETreeMethod
Algorithms for phylogenetic tree reconstruction.
@ eFastME
Fast Minumum Evolution.
EDistMethod
Methods for computing evolutionary distance.
Class for adding tree features, maniplating and printing tree in standard text formats.
ELabelType
Information shown as labels in the guide tree.
@ eFullyExpanded
Tree fully expanded.
@ eByBlastName
Subtrees that contain sequences with the the same Blast Name are collapsed.
ETreeFormat
Output formats.
void HideStdArgs(THideStdArgs hide_mask)
Set the hide mask for the Hide Std Flags.
virtual const CArgs & GetArgs(void) const
Get parsed command line arguments.
int AppMain(int argc, const char *const *argv, const char *const *envp=0, EAppDiagStream diag=eDS_Default, const char *conf=NcbiEmptyCStr, const string &name=NcbiEmptyString)
Main function (entry point) for the NCBI application.
virtual void SetupArgDescriptions(CArgDescriptions *arg_desc)
Setup the command line argument descriptions.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
const CNcbiArguments & GetArguments(void) const
Get the application's cached unprocessed command-line arguments.
@ fHideXmlHelp
Hide XML help description.
@ fHideLogfile
Hide log file description.
@ fHideFullVersion
Hide full version description.
@ fHideDryRun
Hide dryrun description.
@ fHideConffile
Hide configuration file description.
@ fHideVersion
Hide version description.
@ eInputFile
Name of file (must exist and be readable)
@ eDouble
Convertible into a floating point number (double)
@ eString
An arbitrary string.
@ eOutputFile
Name of file (must be writable)
@ eInteger
Convertible into an integer number (int or Int8)
void SetDiagStream(CNcbiOstream *os, bool quick_flush=true, FDiagCleanup cleanup=0, void *cleanup_data=0, const string &stream_name="")
Set diagnostic stream.
#define MSerial_AsnText
I/O stream manipulators â.
static CRef< CObjectManager > GetInstance(void)
Return the existing object manager or create one.
void AddDefaults(TPriority pri=kPriority_Default)
Add default data loaders from object manager.
void Reset(void)
Reset reference object.
int main(int argc, const char *argv[])
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
The NCBI C++/STL use hints.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4