Seqrange.h
Go to the documentation of this file.00001 #ifndef SEQRANGE_H
00002 #define SEQRANGE_H
00003
00004 #include <string>
00005 #include <iostream>
00006
00007 using namespace std;
00008
00009 struct Seqrange
00010 {
00011 Seqrange() : name(), begin(-1), end(-1) {}
00012 Seqrange(const Seqrange& sr) { name=sr.name; begin=sr.begin; end=sr.end; }
00013 Seqrange(const string& n, int b, int e);
00014 Seqrange& operator=(const Seqrange& sr);
00015 friend bool operator==(const Seqrange &sr1, const Seqrange &sr2);
00016 friend bool operator<(const Seqrange& sr1, const Seqrange& sr2);
00017 friend bool operator>(const Seqrange& sr1, const Seqrange& sr2);
00018 friend int compare(const Seqrange& sr1, const Seqrange& sr2);
00019 friend ostream& operator<<(ostream &ous, const Seqrange& sr);
00020 bool overlap(const Seqrange& sr) const;
00021
00022 string name;
00023 int begin, end;
00024 };
00025 #endif