Main Page | Class Hierarchy | Class List | File List | Class Members

EvScores.h

00001 
00002 // Copyright (c) 2003, The Institute for Genomic Research (TIGR), Rockville,
00003 // Maryland, U.S.A.  All rights reserved.
00005 #ifndef EVSCORES_H
00006 #define EVSCORES_H
00007 
00008 #include "AnnotationScore.h"
00009 #include "dsu.h"
00010 #include <assert.h>
00011 #include <vector>
00012 #include <list>
00013 #include <iostream>
00014 class AnnotationItem;
00015 class RegionPrediction;
00016 
00017 class EvScores {
00018  public:
00022   enum Bnd_t { eAcc = 0,  
00023                eDon,      
00024                eCoding,  
00025                eStart,
00026                eStop,
00027                eIntron,
00028                eNumBnd ,
00029                eNonCoding,
00030                eAccH = 0x8,
00031                eDonH = 0x10,
00032                eCodingH = 0x20,
00033                eStartH = 0x40,
00034                eStopH = 0x80,
00035                eIgr = 0x100,
00036                eIntr = 0x200,
00037                eErr = 0x400
00038   };
00039   friend std::ostream& operator<<(std::ostream&, const EvScores&);
00040 
00041  public:
00042   EvScores();
00043   EvScores(const EvScores&);
00044   EvScores& operator=(const EvScores&);
00045   const AnnotationScore& operator[](int idx) const {
00046     assert(idx >= 0 && idx < eNumBnd);
00047     return _score[idx];
00048   }
00049   AnnotationScore& operator[](int idx) {
00050     assert(idx >= 0 && idx < eNumBnd);
00051     return _score[idx];
00052   }
00053 
00054  private:
00055   AnnotationScore _score[eNumBnd];
00056 
00057 };
00058 
00059 #endif // EVIDENCESCORES_H
00060