Index: trunk/psModules/src/objects/pmModelGroup.h
===================================================================
--- trunk/psModules/src/objects/pmModelGroup.h	(revision 11253)
+++ trunk/psModules/src/objects/pmModelGroup.h	(revision 14652)
@@ -1,14 +1,26 @@
 /* @file  pmModelGroup.h
  *
- * The object model function types are defined to allow for the flexible addition
- * of new object models. Every object model, with parameters represented by
- * pmModel, has an associated set of functions which provide necessary support
- * operations. A set of abstract functions allow the programmer to select the
- * approriate function or property for a specific named object model.
+ * The object model function types are desined to allow for the flexible addition of new object
+ * models. Every object model, with parameters represented by pmModel, has an associated set of
+ * functions which provide necessary support operations. A set of abstract functions allow the
+ * programmer to select the approriate function or property for a specific named object model.
+ *
+ * Every model instance belongs to a class of models, defined by the value of
+ * the pmModelType type entry. Various functions need access to information about
+ * each of the models. Some of this information varies from model to model, and
+ * may depend on the current parameter values or other data quantities. In order
+ * to keep the code from requiring the information about each model to be coded
+ * into the low-level fitting routines, we define a collection of functions which
+ * allow us to abstract this type of model-dependent information. These generic
+ * functions take the model type and return the corresponding function pointer
+ * for the specified model. Each model is defined by creating this collection of
+ * specific functions, and placing them in a single file for each model. We
+ * define the following structure to carry the collection of information about
+ * the models.
  *
  * @author EAM, IfA
  *
- * @version $Revision: 1.7 $ $Name: not supported by cvs2svn $
- * @date $Date: 2007-01-24 02:54:15 $
+ * @version $Revision: 1.8 $ $Name: not supported by cvs2svn $
+ * @date $Date: 2007-08-24 00:11:02 $
  * Copyright 2004 Maui High Performance Computing Center, University of Hawaii
  */
@@ -23,5 +35,5 @@
 typedef psMinimizeLMChi2Func pmModelFunc;
 
-//  This function is the model chi-square minimization function for this model.
+//  This function sets the parameter limits for this model.
 typedef psMinimizeLMLimitFunc pmModelLimits;
 
@@ -29,41 +41,23 @@
 typedef psF64 (*pmModelFlux)(const psVector *params);
 
-
 // This function returns the radius at which the given model and parameters
 // achieves the given flux.
 typedef psF64 (*pmModelRadius)(const psVector *params, double flux);
 
-/*  This function sets the model parameter limits vectors for the given model
- */
-// typedef bool (*pmModelLimits)(psVector **beta_lim, psVector **params_min, psVector **params_max);
-
-/*  This function provides the model guess parameters based on the details of
- *   the given source.
- */
+//  This function provides the model guess parameters based on the details of
+//  the given source.
 typedef bool (*pmModelGuessFunc)(pmModel *model, pmSource *source);
 
-
-/*  This function constructs the PSF model for the given source based on the
- *  supplied psf and the EXT model for the object.
- */
+//  This function constructs the PSF model for the given source based on the
+//  supplied psf and the EXT model for the object.
 typedef bool (*pmModelFromPSFFunc)(pmModel *modelPSF, pmModel *modelEXT, pmPSF *psf);
 
-/*  This function returns the success / failure status of the given model fit
- */
+//  This function sets the model parameters based on the PSF for a given coordinate and central
+//  intensity
+typedef bool (*pmModelParamsFromPSF)(pmModel *model, pmPSF *psf, float Xo, float Yo, float Io);
+
+//  This function returns the success / failure status of the given model fit
 typedef bool (*pmModelFitStatusFunc)(pmModel *model);
 
-/* Every model instance belongs to a class of models, defined by the value of
- * the pmModelType type entry. Various functions need access to information about
- * each of the models. Some of this information varies from model to model, and
- * may depend on the current parameter values or other data quantities. In order
- * to keep the code from requiring the information about each model to be coded
- * into the low-level fitting routines, we define a collection of functions which
- * allow us to abstract this type of model-dependent information. These generic
- * functions take the model type and return the corresponding function pointer
- * for the specified model. Each model is defined by creating this collection of
- * specific functions, and placing them in a single file for each model. We
- * define the following structure to carry the collection of information about
- * the models.
- */
 typedef struct
 {
@@ -76,4 +70,5 @@
     pmModelGuessFunc     modelGuessFunc;
     pmModelFromPSFFunc   modelFromPSFFunc;
+    pmModelParamsFromPSF modelParamsFromPSF;
     pmModelFitStatusFunc modelFitStatusFunc;
 }
