multovl  1.3
Multiple overlaps of genomic regions
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | Protected Member Functions | List of all members
multovl::prob::ParProbPipeline Class Reference

#include "parprobpipeline.hh"

Inheritance diagram for multovl::prob::ParProbPipeline:
multovl::prob::ProbPipeline multovl::BasePipeline

Public Member Functions

 ParProbPipeline (int argc, char *argv[])
 
- Public Member Functions inherited from multovl::prob::ProbPipeline
 ProbPipeline (int argc, char *argv[])
 
- Public Member Functions inherited from multovl::BasePipeline
 BasePipeline ()
 Default init of a BasePipeline object.
 
bool run ()
 
const Errorserrors () const
 

Protected Member Functions

virtual unsigned int detect_overlaps ()
 
virtual ParProbOptsopt_ptr ()
 
virtual Statstat ()
 
- Protected Member Functions inherited from multovl::prob::ProbPipeline
 ProbPipeline ()
 
virtual unsigned int read_input ()
 
unsigned int calc_actual_overlaps ()
 
virtual bool write_output ()
 
const chrom_shufovl_mapcsovl () const
 
chrom_shufovl_mapcsovl ()
 
const Statstat () const
 
- Protected Member Functions inherited from multovl::BasePipeline
bool set_optpimpl (MultovlOptbase *optp)
 
MultovlOptbaseopt_pimpl ()
 
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.
 

Additional Inherited Members

- Protected Types inherited from multovl::prob::ProbPipeline
typedef std::map< std::string,
ShuffleOvl
chrom_shufovl_map
 There is one ShuffleOvl object for each chromosome.
 
- Protected Types inherited from multovl::BasePipeline
typedef std::vector< Inputinput_seq_t
 

Detailed Description

The ParProbPipeline implements the parallel version of the MULTOVL probability pipeline. The inputs are files (text or binary), the overlap calculations are serial/single core, the repetitions after reshuffling (some) tracks to estimate the probability of overlaps by chance are done in parallel.

Constructor & Destructor Documentation

multovl::prob::ParProbPipeline::ParProbPipeline ( int  argc,
char *  argv[] 
)

Inits the pipeline with the command-line arguments. These will be parsed inside and the program exits with an error message if parsing goes wrong.

Member Function Documentation

virtual unsigned int multovl::prob::ParProbPipeline::detect_overlaps ( )
protectedvirtual

Detects overlaps. First the overlaps without shuffling are calculated. Then the shufflable tracks are permuted and the number of overlaps counted again and again which will provide an estimate of the null distribution (ie. the extent of overlaps by chance). The reshufflings are done in parallel.

Returns
the total number of overlaps found in the unpermuted case.

Reimplemented from multovl::prob::ProbPipeline.

virtual ParProbOpts* multovl::prob::ParProbPipeline::opt_ptr ( )
inlineprotectedvirtual
Returns
access to the option-handling object

Reimplemented from multovl::prob::ProbPipeline.

virtual Stat& multovl::prob::ParProbPipeline::stat ( )
inlineprotectedvirtual
Returns
thread-safe non-const access to the statistics collector object

Reimplemented from multovl::prob::ProbPipeline.


The documentation for this class was generated from the following file: