-
Notifications
You must be signed in to change notification settings - Fork 6
Project structure and architecture
Pedro Q edited this page Jan 13, 2022
·
7 revisions
This should be of no concern to the end user but this project is divided into several folders and .py
files:
-
Images
contains images used in this repository -
References
contains references folders and related metadata. It also contains thecustom_refs
folder-
custom_refs
is an empty folder where the user can store their own reference profiles
-
-
tests
contains sample files when runningrun_test
-
config
-
MANTIS.cfg
config file for Mantis
-
-
mantis
contains the all of MANTIS' code-
cython_src
contains the Cython code responsible for compiling the hit extraction algorithm. Cython was used to increase efficiency. -
__main__.py
is the front of the program -
Assembler.py
has all the methods for setting up paths. -
Consensus.py
handles the generation of query sequences consensus. It inherits fromUniFunc_wrapper.py
. It contains the algorithms for finding the best query hits. -
Database_generator.py
has all the methods for setting up the databases. -
Exceptions.py
contains several custom exceptions -
Homology_processor.py
used for parsing results from HMMER and Diamond -
MANTIS.py
contains main front for launching the annotations, it inherits from all other classes -
Metadata.py
handles the interpretation of the generated annotations. Most references need to be linked to their respective metadata in order to extract usable information. -
Metadata_SQLITE_Connector.py
handles the generation of SQL databases from the metadata.tsv files. -
Multiprocessing.py
contains all the code responsible for multiprocessing -
Taxonomy_SQLITE_Connector.py
handles the SQL databases for the lineage retrieval of NCBI and GTDB taxonomies. -
UniFunc_wrapper.py
wrapper for UniFunc, a text mining tool to measure functional descriptions similarity. -
utils.py
contains small functions that are universal to Mantis
-