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_