view BEDTools-Version-2.14.3/src/sortBed/sortBed.h @ 0:dfcd8b6c1bda

Uploaded
author aaronquinlan
date Thu, 03 Nov 2011 10:25:04 -0400
parents
children
line wrap: on
line source

/*****************************************************************************
  sortBed.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.
******************************************************************************/
#include "bedFile.h"
#include <vector>
#include <algorithm>
#include <iostream>
#include <fstream>

using namespace std;


//************************************************
// Class methods and elements
//************************************************
class BedSort {

public:

    // constructor
    BedSort(string &);

    // destructor
    ~BedSort(void);

    void SortBed();             // the default.  sorts by chrom (asc.) then by start (asc.)
    void SortBedBySizeAsc();
    void SortBedBySizeDesc();
    void SortBedByChromThenSizeAsc();
    void SortBedByChromThenSizeDesc();
    void SortBedByChromThenScoreAsc();
    void SortBedByChromThenScoreDesc();

private:
    string _bedFile;

    // instance of a bed file class.
    BedFile *_bed;

    // methods

};