1 // FILE OLDFORMS.H: declaration of class oldforms
2 //////////////////////////////////////////////////////////////////////////
3 //
4 // Copyright 1990-2012 John Cremona
5 //
6 // This file is part of the eclib package.
7 //
8 // eclib is free software; you can redistribute it and/or modify it
9 // under the terms of the GNU General Public License as published by the
10 // Free Software Foundation; either version 2 of the License, or (at your
11 // option) any later version.
12 //
13 // eclib is distributed in the hope that it will be useful, but WITHOUT
14 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15 // FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
16 // for more details.
17 //
18 // You should have received a copy of the GNU General Public License
19 // along with eclib; if not, write to the Free Software Foundation,
20 // Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 //
22 //////////////////////////////////////////////////////////////////////////
23 
24 #ifndef _ECLIB_OLDFORMS_H
25 #define _ECLIB_OLDFORMS_H      1
26                            //flags that this file has been included
27 
28 #include <eclib/moddata.h>
29 
30 class oldforms {
31  public:
32   long noldclasses, nap, ntp;
33   long totalolddim;
34  private:
35   const level* N;
36   int plusflag;
37   vector< vector<long> > oldformap;
38   vector<long> oldclassdims, oldlevels;
39   void getoldclasses(long d, int verbose);
40  public:
41   oldforms(long intp, const level* iN, int verbose=0, int plus=1);
42              //intp = input value of ntp = max. number of Tp to use
~oldforms()43   ~oldforms(){;}
44   long dimoldpart(vector<long> aplist) const;
45   void display(void) const;
46 };
47 
48 // Utilities for creating filenames for curve files
49 bool file_exists(string filename);
50 string ecdb_filename(long N);
51 string single_curve_filename(long N);
52 string curve_filename(long N);
53 
54 #endif
55