multovl
1.3
Multiple overlaps of genomic regions
|
#include "basepipeline.hh"
Classes | |
struct | Input |
Public Member Functions | |
BasePipeline () | |
Default init of a BasePipeline object. | |
bool | run () |
const Errors & | errors () const |
Protected Types | |
typedef std::vector< Input > | input_seq_t |
Protected Member Functions | |
virtual unsigned int | read_input ()=0 |
virtual unsigned int | detect_overlaps ()=0 |
virtual bool | write_output ()=0 |
bool | set_optpimpl (MultovlOptbase *optp) |
MultovlOptbase * | opt_pimpl () |
virtual MultovlOptbase * | opt_ptr ()=0 |
const input_seq_t & | inputs () const |
input_seq_t & | inputs () |
void | add_error (const std::string &prefix, const std::string &what) |
Adds an error message. | |
void | add_all_errors (const Errors &other) |
void | add_warning (const std::string &prefix, const std::string &what) |
Adds a warning message. | |
void | clear_errors () |
Clears the errors. | |
Abstract class that provides a framework for detecting multiple overlaps. Running a Multovl program involves the following steps: read input, do the work, write output. The Pipeline subclasses implement variations on this theme, such as reading from files vs databases, running the Multovl algorithm on one CPU or in parallel, estimating the probabilities of random overlaps etc. The BasePipeline class lays the foundation by providing a means of storing input track metadata, error handling and a run() method with optional timing information.
|
inlineprotected |
|
protectedpure virtual |
Detects the overlaps. Pure virtual.
Implemented in multovl::prob::ProbPipeline, multovl::prob::ParProbPipeline, and multovl::Pipeline.
|
inline |
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
|
protectedpure virtual |
Implemented in multovl::prob::ProbPipeline, multovl::ClassicPipeline, and multovl::prob::ParProbPipeline.
|
protectedpure virtual |
Reads the input tracks. Pure virtual.
Implemented in multovl::prob::ProbPipeline, and multovl::ClassicPipeline.
bool multovl::BasePipeline::run | ( | ) |
Go through the whole analysis.
|
protected |
Sets the option handling object (invoke in ctor) but only if the pimpl was NULL.
optp | pointer to an appropriate option handling object instance. |
|
protectedpure virtual |
Writes the results somewhere. Pure virtual. Implementations must make sure each overlap region and the corresponding ancestry information are properly written. This method is not run when timing is requested.
Implemented in multovl::prob::ProbPipeline, and multovl::ClassicPipeline.