/[ascend]/trunk/pygtk/interface/solver.h
ViewVC logotype

Contents of /trunk/pygtk/interface/solver.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 208 - (show annotations) (download) (as text)
Tue Jan 24 03:19:37 2006 UTC (18 years, 4 months ago) by johnpye
File MIME type: text/x-chdr
File size: 1247 byte(s)
Added menu bar at top of PyGTK interface.
'Preferences' menu currently just outputs the number of
solver parameters in use. Plan is to allow the parameters
to be viewed and edited via the GUI.
1 #ifndef ASCXX_SOLVER_H
2 #define ASCXX_SOLVER_H
3
4 #include <string>
5 #include <vector>
6
7 extern "C"{
8 #include <utilities/ascConfig.h>
9 #include <compiler/instance_enum.h>
10 #include <solver/slv_types.h>
11 #include <solver/mtx.h>
12 #include <solver/var.h>
13 #include <solver/rel.h>
14 #include <solver/discrete.h>
15 #include <solver/conditional.h>
16 #include <solver/logrel.h>
17 #include <solver/bnd.h>
18 #include <solver/linsol.h>
19 #include <solver/linsolqr.h>
20 #include <solver/slv_common.h>
21 #include <solver/slv_client.h>
22 }
23
24 /**
25 This is a rather problematic wrapper for slv_client.h. It's hard because registerd solvers
26 are referenced primarily by index, not by pointer etc, so given the index, we always have
27 to look up the solver in some way or other.
28
29 Because the index is changeable from session to session, depending on the order of
30 registration, we'll use the *name* as the primary key and look up the index as needed.
31 */
32 class Solver{
33 private:
34 std::string name;
35 public:
36 Solver(const Solver &);
37 Solver(const std::string &name);
38
39 const int getIndex() const;
40 const std::string& getName() const;
41 };
42
43 /**
44 Some global functions
45 */
46 void registerStandardSolvers();
47 void registerSolver(SlvRegistration regfuncptr);
48 const std::vector<Solver> getSolvers();
49
50 #endif

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22