Biorithm  1.1
 All Classes Functions Variables Typedefs Friends
Evaluator.h
00001 /**************************************************************************
00002  * Copyright (c) 2007 Clifford Conley Owens III                           *
00003  *                                                                        *
00004  * This file is part of Biorithm.                                         *
00005  *                                                                        *
00006  * Biorithm is free software: you can redistribute it and/or modify       *
00007  * it under the terms of the GNU General Public License as published by   *
00008  * the Free Software Foundation, either version 3 of the License, or      *
00009  * (at your option) any later version.                                    *
00010  *                                                                        *
00011  * Biorithm is distributed in the hope that it will be useful,            *
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of         *
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the          *
00014  * GNU General Public License for more details.                           *
00015  *                                                                        *
00016  * You should have received a copy of the GNU General Public License      *
00017  * along with Biorithm.  If not, see <http://www.gnu.org/licenses/>.      *
00018  *                                                                        *
00019  **************************************************************************/
00020 
00031 #ifndef EVALUATOR_H
00032 #define EVALUATOR_H
00033 
00034 // ---------------------------- Internal Headers ---------------------------- //
00035 
00036 #include "BinaryMatrix.h"
00037 
00044 class Evaluator
00045 {
00046     protected:
00047         // The truth matrix
00048         BinaryMatrix* bm;
00049 
00050     public:
00052         // The constructor                                                    //
00053         //                                                                    //
00054         // --------------------------- Parameters --------------------------- //
00055         // BinaryMatrix* bm                                                    //
00056         //     The truth matrix                                               //
00058         Evaluator(BinaryMatrix* bm = NULL)
00059         {
00060             setBinaryMatrix(bm);
00061         }
00062 
00064         // The destructor                                                     //
00066         virtual ~Evaluator()
00067         {
00068 
00069         }
00070 
00072         // The = operator                                                     //
00073         //                                                                    //
00074         // --------------------------- Parameters --------------------------- //
00075         // const Evaluator& rhs                                               //
00076         //     The right hand side                                            //
00077         //                                                                    //
00078         // ----------------------------- Return ----------------------------- //
00079         // A copy of the Evaluator                                            //
00081         virtual Evaluator& operator =(const Evaluator& rhs)
00082         {
00083             bm = rhs.bm;
00084             return *this;
00085         }
00086 
00088         // Sets the binary matrix                                             //
00089         //                                                                    //
00090         // --------------------------- Parameters --------------------------- //
00091         // BinaryMatrix* bm                                                   //
00092         //     The binary matrix                                              //
00094         virtual void setBinaryMatrix(BinaryMatrix* bm)
00095         {
00096             this->bm = bm;
00097         }
00098 
00099         virtual unsigned int getUpperBound(const vector<unsigned int>& counts)
00100             const = 0;
00101         virtual unsigned int getUpperBound() const = 0;
00102 };
00103 
00104 #endif
 All Classes Functions Variables Typedefs Friends