Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

/magnus/back_end/SMApps/include/OrderProblem.h

Go to the documentation of this file.
00001 /*
00002  *   $Id: OrderProblem.h,v 1.7 1999/01/13 19:30:46 alex Exp $
00003  */
00004  
00005 // Copyright (C) 1995 The New York Group Theory Cooperative
00006 // See magnus/doc/COPYRIGHT for the full notice.
00007 //
00008 // Contents: Declaration of class OrderProblem
00009 //
00010 // Principal Author: Roger Needham
00011 //
00012 // Status: in progress
00013 //
00014 // Revision History:
00015 //
00016 
00017 
00018 #ifndef _ORDERPROBLEM_H_
00019 #define _ORDERPROBLEM_H_
00020 
00021 
00022 #include "Supervisor.h"
00023 #include "CosetEnumerator.h"
00024 #include "ToddCoxeter.h"
00025 #include "HToddCoxeter.h"
00026 #include "SMFPGroup.h"
00027 
00028 
00029 //---------------------------------------------------------------------------//
00030 //--------------------------- OrderProblem ----------------------------------//
00031 //---------------------------------------------------------------------------//
00032 
00033 
00034 class OrderProblem : public Supervisor
00035 {
00036 public:
00037 
00038   /////////////////////////////////////////////////////////////////////////
00039   //                                                                     //
00040   // Constructors:                                                       //
00041   //                                                                     //
00042   /////////////////////////////////////////////////////////////////////////
00043 
00044   OrderProblem(SMFPGroup& G);
00045 
00046   /////////////////////////////////////////////////////////////////////////
00047   //                                                                     //
00048   // Front End Interfacing:                                              //
00049   //                                                                     //
00050   /////////////////////////////////////////////////////////////////////////
00051 
00052   void viewStructure(ostream& ostr) const;  // overrides SMObject
00053 
00054   /////////////////////////////////////////////////////////////////////////
00055   //                                                                     //
00056   // Control:                                                            //
00057   //                                                                     //
00058   /////////////////////////////////////////////////////////////////////////
00059 
00060   void takeControl( );         // overrides ComputationManager
00061 
00062   /////////////////////////////////////////////////////////////////////////
00063   //                                                                     //
00064   // State Transitions:                                                  //
00065   //                                                                     //
00066   /////////////////////////////////////////////////////////////////////////
00067 
00068   void start( ) { }              // overrides ComputationManager
00069 
00070   void terminate( ) { }          // overrides ComputationManager
00071 
00072 
00073 private:
00074 
00075   /////////////////////////////////////////////////////////////////////////
00076   //                                                                     //
00077   // Data Members:                                                       //
00078   //                                                                     //
00079   /////////////////////////////////////////////////////////////////////////
00080 
00081   SMFPGroup& theGroup;
00082   
00083   // GCM components this uses; only for automatic ARC passing:
00084 /*@db
00085   MirrorSubordinate abelianInvariants;
00086 
00087   MirrorSubordinate abelianRank;
00088 */
00089   MirrorSubordinate kbSupervisor;
00090 
00091   MirrorSubordinate theToddCoxeter;
00092   MirrorSubordinate agSupervisor;
00093   MirrorSubordinate computeBasis;
00094   MirrorSubordinate ghToddCoxeter;
00095   
00096 };
00097 
00098 #endif

Generated at Tue Jun 19 09:49:43 2001 for Magnus Classes by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001