Main Page | User's Guide | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

Storage.hxx

00001 // Copyright (C) 2001-2004 Vivien Mallet
00002 //
00003 // This file is part of Seldon library.
00004 // Seldon library provides matrices and vectors structures for
00005 // linear algebra.
00006 // 
00007 // Seldon is free software; you can redistribute it and/or modify
00008 // it under the terms of the GNU General Public License as published by
00009 // the Free Software Foundation; either version 2 of the License, or
00010 // (at your option) any later version.
00011 // 
00012 // Seldon is distributed in the hope that it will be useful,
00013 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00014 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00015 // GNU General Public License (file "license") for more details.
00016 //
00017 // For more information, please see the Seldon home page:
00018 //     http://spacetown.free.fr/lib/seldon/
00019 
00020 #ifndef SELDON_FILE_STORAGE_HXX
00021 
00022 namespace Seldon
00023 {
00024 
00025 
00027   // GENERAL MATRICES //
00029 
00030 
00031   class ColMajor
00032   {
00033   public:
00034     static int GetFirst(int i, int j)
00035     {
00036       return j;
00037     }
00038     static int GetSecond(int i, int j)
00039     {
00040       return i;
00041     }
00042   };
00043 
00044 
00045   class RowMajor
00046   {
00047   public:
00048     static int GetFirst(int i, int j)
00049     {
00050       return i;
00051     }
00052     static int GetSecond(int i, int j)
00053     {
00054       return j;
00055     }
00056   };
00057 
00058 
00059 
00061   // VECTORS //
00063 
00064 
00065   class Vect_Full
00066   {
00067   };
00068 
00069 
00070 
00072   // SPARSE //
00074 
00075 
00076   class ColSparse
00077   {
00078   public:
00079     static int GetFirst(int i, int j)
00080     {
00081       return j;
00082     }
00083     static int GetSecond(int i, int j)
00084     {
00085       return i;
00086     }
00087   };
00088 
00089 
00090   class RowSparse
00091   {
00092   public:
00093     static int GetFirst(int i, int j)
00094     {
00095       return i;
00096     }
00097     static int GetSecond(int i, int j)
00098     {
00099       return j;
00100     }
00101   };
00102 
00103 
00104   class ColComplexSparse
00105   {
00106   public:
00107     static int GetFirst(int i, int j)
00108     {
00109       return j;
00110     }
00111     static int GetSecond(int i, int j)
00112     {
00113       return i;
00114     }
00115   };
00116 
00117 
00118   class RowComplexSparse
00119   {
00120   public:
00121     static int GetFirst(int i, int j)
00122     {
00123       return i;
00124     }
00125     static int GetSecond(int i, int j)
00126     {
00127       return j;
00128     }
00129   };
00130 
00131 
00132   class ColSymSparse
00133   {
00134   public:
00135     static int GetFirst(int i, int j)
00136     {
00137       return j;
00138     }
00139     static int GetSecond(int i, int j)
00140     {
00141       return i;
00142     }
00143   };
00144 
00145 
00146   class RowSymSparse
00147   {
00148   public:
00149     static int GetFirst(int i, int j)
00150     {
00151       return i;
00152     }
00153     static int GetSecond(int i, int j)
00154     {
00155       return j;
00156     }
00157   };
00158 
00159 
00160   class ColSymComplexSparse
00161   {
00162   public:
00163     static int GetFirst(int i, int j)
00164     {
00165       return j;
00166     }
00167     static int GetSecond(int i, int j)
00168     {
00169       return i;
00170     }
00171   };
00172 
00173 
00174   class RowSymComplexSparse
00175   {
00176   public:
00177     static int GetFirst(int i, int j)
00178     {
00179       return i;
00180     }
00181     static int GetSecond(int i, int j)
00182     {
00183       return j;
00184     }
00185   };
00186 
00187 
00188 
00190   // SYMMETRIC //
00192 
00193 
00194   class ColSymPacked
00195   {
00196   public:
00197     static int GetFirst(int i, int j)
00198     {
00199       return j;
00200     }
00201     static int GetSecond(int i, int j)
00202     {
00203       return i;
00204     }
00205   };
00206 
00207 
00208   class RowSymPacked
00209   {
00210   public:
00211     static int GetFirst(int i, int j)
00212     {
00213       return i;
00214     }
00215     static int GetSecond(int i, int j)
00216     {
00217       return j;
00218     }
00219   };
00220 
00221 
00222   class ColSym
00223   {
00224   public:
00225     static int GetFirst(int i, int j)
00226     {
00227       return j;
00228     }
00229     static int GetSecond(int i, int j)
00230     {
00231       return i;
00232     }
00233   };
00234 
00235 
00236   class RowSym
00237   {
00238   public:
00239     static int GetFirst(int i, int j)
00240     {
00241       return i;
00242     }
00243     static int GetSecond(int i, int j)
00244     {
00245       return j;
00246     }
00247   };
00248 
00249 
00250 
00252   // HERMITIAN //
00254 
00255 
00256   class ColHerm
00257   {
00258   public:
00259     static int GetFirst(int i, int j)
00260     {
00261       return j;
00262     }
00263     static int GetSecond(int i, int j)
00264     {
00265       return i;
00266     }
00267   };
00268 
00269 
00270   class RowHerm
00271   {
00272   public:
00273     static int GetFirst(int i, int j)
00274     {
00275       return i;
00276     }
00277     static int GetSecond(int i, int j)
00278     {
00279       return j;
00280     }
00281   };
00282 
00283 
00284   class ColHermPacked
00285   {
00286   public:
00287     static int GetFirst(int i, int j)
00288     {
00289       return j;
00290     }
00291     static int GetSecond(int i, int j)
00292     {
00293       return i;
00294     }
00295   };
00296 
00297 
00298   class RowHermPacked
00299   {
00300   public:
00301     static int GetFirst(int i, int j)
00302     {
00303       return i;
00304     }
00305     static int GetSecond(int i, int j)
00306     {
00307       return j;
00308     }
00309   };
00310 
00311 
00312 
00314   // TRIANGULAR //
00316 
00317 
00318   class ColUpTriang
00319   {
00320   public:
00321     static int GetFirst(int i, int j)
00322     {
00323       return j;
00324     }
00325     static int GetSecond(int i, int j)
00326     {
00327       return i;
00328     }
00329     static bool UpLo()
00330     {
00331       return true;
00332     }
00333   };
00334 
00335 
00336   class ColLoTriang
00337   {
00338   public:
00339     static int GetFirst(int i, int j)
00340     {
00341       return j;
00342     }
00343     static int GetSecond(int i, int j)
00344     {
00345       return i;
00346     }
00347     static bool UpLo()
00348     {
00349       return false;
00350     }
00351   };
00352 
00353 
00354   class RowUpTriang
00355   {
00356   public:
00357     static int GetFirst(int i, int j)
00358     {
00359       return i;
00360     }
00361     static int GetSecond(int i, int j)
00362     {
00363       return j;
00364     }
00365     static bool UpLo()
00366     {
00367       return true;
00368     }
00369   };
00370 
00371 
00372   class RowLoTriang
00373   {
00374   public:
00375     static int GetFirst(int i, int j)
00376     {
00377       return i;
00378     }
00379     static int GetSecond(int i, int j)
00380     {
00381       return j;
00382     }
00383     static bool UpLo()
00384     {
00385       return false;
00386     }
00387   };
00388 
00389 
00390   class ColUpTriangPacked
00391   {
00392   public:
00393     static int GetFirst(int i, int j)
00394     {
00395       return j;
00396     }
00397     static int GetSecond(int i, int j)
00398     {
00399       return i;
00400     }
00401     static bool UpLo()
00402     {
00403       return true;
00404     }
00405   };
00406 
00407 
00408   class ColLoTriangPacked
00409   {
00410   public:
00411     static int GetFirst(int i, int j)
00412     {
00413       return j;
00414     }
00415     static int GetSecond(int i, int j)
00416     {
00417       return i;
00418     }
00419     static bool UpLo()
00420     {
00421       return false;
00422     }
00423   };
00424 
00425 
00426   class RowUpTriangPacked
00427   {
00428   public:
00429     static int GetFirst(int i, int j)
00430     {
00431       return i;
00432     }
00433     static int GetSecond(int i, int j)
00434     {
00435       return j;
00436     }
00437     static bool UpLo()
00438     {
00439       return true;
00440     }
00441   };
00442 
00443 
00444   class RowLoTriangPacked
00445   {
00446   public:
00447     static int GetFirst(int i, int j)
00448     {
00449       return i;
00450     }
00451     static int GetSecond(int i, int j)
00452     {
00453       return j;
00454     }
00455     static bool UpLo()
00456     {
00457       return false;
00458     }
00459   };
00460 
00461 
00462 } // namespace Seldon.
00463 
00464 #define SELDON_FILE_STORAGE_HXX
00465 #endif

Generated on Sun Jan 16 23:37:57 2005 for Multivac by  doxygen 1.4.0