Mercurial > repos > aaronquinlan > multi_intersect
diff BEDTools-Version-2.14.3/src/closestBed/closestBed.h @ 0:dfcd8b6c1bda
Uploaded
author | aaronquinlan |
---|---|
date | Thu, 03 Nov 2011 10:25:04 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/BEDTools-Version-2.14.3/src/closestBed/closestBed.h Thu Nov 03 10:25:04 2011 -0400 @@ -0,0 +1,61 @@ +/***************************************************************************** + closestBed.h + + (c) 2009 - Aaron Quinlan + Hall Laboratory + Department of Biochemistry and Molecular Genetics + University of Virginia + aaronquinlan@gmail.com + + Licenced under the GNU General Public License 2.0 license. +******************************************************************************/ +#ifndef CLOSESTBED_H +#define CLOSESTBED_H + +#include "bedFile.h" +#include <vector> +#include <iostream> +#include <fstream> + +using namespace std; + +//************************************************ +// Class methods and elements +//************************************************ +class BedClosest { + +public: + + // constructor + BedClosest(string &bedAFile, string &bedBFile, + bool sameStrand, bool diffStrand, string &tieMode, + bool reportDistance, bool signDistance, string &strandedDistMode, + bool ignoreOverlaps); + + // destructor + ~BedClosest(void); + + // find the closest feature in B to A + void FindClosestBed(); + +private: + + // data + string _bedAFile; + string _bedBFile; + string _tieMode; + bool _sameStrand; + bool _diffStrand; + bool _reportDistance; + bool _signDistance; + string _strandedDistMode; + bool _ignoreOverlaps; + + BedFile *_bedA, *_bedB; + + // methods + void reportNullB(); + void FindWindowOverlaps(BED &, vector<BED> &); + +}; +#endif /* CLOSEST_H */