QCOrdering.hpp

Go to the documentation of this file.
00001 //*****************************************************************************//
00002 //                                                                             //
00003 //   Copyright (c) 2001                                                        //
00004 //      INRIA                                                                  //
00005 //      54600 VILLERS LES NANCY                                                //
00006 //      France                                                                 //
00007 //                                                                             //
00008 //*****************************************************************************//
00009 //                                                                             //
00010 //               *** NOTICE OF PROPRIETARY INFORMATION ***                     //
00011 //                                                                             //
00012 // The information contained in this file is considered proprietary and the    //
00013 // exclusive property of  INRIA. This information may not be disclosed,        //
00014 // duplicated or used, in whole or in part, for  any purpose  whatsoever       //
00015 // without express written authorization from INRIA                            //
00016 //                                                                             //
00017 //*****************************************************************************//
00018 
00019 
00020 #ifndef QC_ORDERING_H_
00021 #define QC_ORDERING_H_
00022 
00023 
00024 #include "QCCommon.hpp"
00025 
00026 
00027 #define    ORDR_CELL_SIZE     2
00028 #define    PARAM_IDX          0
00029 #define    FIRST_AO           1
00030 
00031 
00032 
00038 class QCOrdering
00039 {
00041 public:
00042 
00046   int  getParamIndexAt (const int i) const { return cells[i * ORDR_CELL_SIZE + PARAM_IDX]; }
00047   int  getFirstAOAt (const int i)    const { return cells[i * ORDR_CELL_SIZE + FIRST_AO]; }
00048 
00049 
00053   void setParamIndexAt (const int i, const int val) { cells[i * ORDR_CELL_SIZE + PARAM_IDX] = val; }
00054   void setFirstAOAt (const int i, const int val)    { cells[i * ORDR_CELL_SIZE + FIRST_AO] = val; }
00055 
00056 
00060   int * getOrderingCells (void) const { return cells; }
00061 
00062 
00063 
00065 protected:
00066   
00070   QCOrdering (void) : 
00071     cells(NULL)
00072   {}
00073 
00074 
00078   ~QCOrdering (void) {
00079     if (cells) {
00080       delete [] cells;
00081     }
00082   }
00083 
00084 
00088   void allocateCells (const int size) {
00089     cells = new int [size * ORDR_CELL_SIZE];
00090   }
00091 
00092 
00093 
00094   
00095 
00097 private:
00098 
00099 
00101 public:
00102 protected:
00103 
00107   int * cells;
00108   
00109 private:
00110 
00111 
00112 };
00113 
00114 
00115 
00116 
00117 #endif // QC_ORDERING_H_

Generated on Sat Jan 28 21:07:29 2006 for QC++ by  doxygen 1.4.4