updated for new multi selected output files

git-svn-id: svn://136.177.114.72/svn_GW/IPhreeqc/trunk@8016 1feff8c3-07ed-0310-ac33-dd36852eb9cd
This commit is contained in:
Scott R Charlton 2013-09-06 23:22:12 +00:00
parent f74d6d8fe7
commit f75c09eb6c
2 changed files with 29 additions and 26 deletions

View File

@ -1582,51 +1582,53 @@ Headings
IPQ_DLL_EXPORT int RunString(int id, const char* input); IPQ_DLL_EXPORT int RunString(int id, const char* input);
/** /**
* Sets C callback function for the Basic interpreter. * Sets a C callback function for Basic programs. The syntax for the Basic command is
* @param id The instance id returned from \ref CreateIPhreeqc. * 10 result = CALLBACK(x1, x2, string$)
* @param cookie The name of a double precision Fortran function with three arguments (two double precision, and one character). * The syntax for the C function is
* double my_callback(double x1, double x2, const char * string)
* @param id The instance id returned from @ref CreateIPhreeqc.
* @param fcn The name of a user-defined function.
* @param cookie1 A user defined value to be passed to the callback function.
* @retval IPQ_OK Success. * @retval IPQ_OK Success.
* @retval IPQ_BADINSTANCE The given id is invalid. * @retval IPQ_BADINSTANCE The given id is invalid.
* @par Fortran90 Interface: * @par Fortran90 Interface:
* @htmlonly * see @ref SetBasicFortranCallback
* <CODE> * @par C Example:
* <PRE> * @include SetBasicCallback.c
* FUNCTION SetBasicCallback(ID,fcn,cookie)
* INTEGER :: ID
* double (*fcn)(double x1, double x2, const char *str, void *)
* void * cookie :: SetBasicCallback
* integer SetBasicCallback
* END FUNCTION SetBasicCallback
* </PRE>
* </CODE>
* @endhtmlonly
*/ */
IPQ_DLL_EXPORT IPQ_RESULT SetBasicCallback(int id, double (*fcn)(double x1, double x2, const char *str, void *cookie), void *cookie1); IPQ_DLL_EXPORT IPQ_RESULT SetBasicCallback(int id, double (*fcn)(double x1, double x2, const char *str, void *cookie), void *cookie1);
/** /**
* Sets Fortran callback function for the Basic interpreter. * Sets a Fortran callback function for Basic programs. The syntax for the Basic command is
* @param id The instance id returned from \ref CreateIPhreeqc. * 10 result = CALLBACK(x1, x2, string$)
* @param cookie The name of a double precision Fortran function with three arguments (two double precision, and one character). * The syntax for the Fortran function is
* double precision my_callback(x1, x2, string), where x1 and x2 are double precision and string is a character variable.
* @param id The instance id returned from @ref CreateIPhreeqc.
* @param fcn The name of a double precision Fortran function with three arguments (two double precision, and one character).
* @retval IPQ_OK Success. * @retval IPQ_OK Success.
* @retval IPQ_BADINSTANCE The given id is invalid. * @retval IPQ_BADINSTANCE The given id is invalid.
* @par Fortran90 Interface: * @par Fortran90 Interface:
* @htmlonly * @htmlonly
* <CODE> * <CODE>
* <PRE> * <PRE>
* FUNCTION SetBasicFortranCallback(ID,fcn) * FUNCTION SetBasicFortranCallback(ID,FCN)
* INTEGER(KIND=4), INTENT(IN) :: ID * INTEGER(KIND=4), INTENT(IN) :: ID
* INTERFACE * INTERFACE
* DOUBLE PRECISION FUNCTION fcn(x1, x2, str) * DOUBLE PRECISION FUNCTION FCN(x1, x2, str)
* DOUBLE PRECISION, INTENT(in) :: x1 * DOUBLE PRECISION, INTENT(in) :: x1
* DOUBLE PRECISION, INTENT(in) :: x2 * DOUBLE PRECISION, INTENT(in) :: x2
* CHARACTER(*), INTENT(in) :: str * CHARACTER(*), INTENT(in) :: str
* END FUNCTION * END FUNCTION
* END INTERFACE * END INTERFACE
* INTEGER(KIND=4) :: SetBasicFortranCallback * INTEGER(KIND=4) :: SetBasicFortranCallback
* END FUNCTION SetBasicCallback * END FUNCTION SetBasicFortranCallback
* </PRE> * </PRE>
* </CODE> * </CODE>
* @endhtmlonly * @endhtmlonly
* @par Fortran90 Example:
* @include F90SetBasicFortranCallback.f90
* @par File ic :
* @include ic
*/ */
IPQ_DLL_EXPORT IPQ_RESULT SetBasicFortranCallback(int id, double (*fcn)(double *x1, double *x2, char *str, int l)); IPQ_DLL_EXPORT IPQ_RESULT SetBasicFortranCallback(int id, double (*fcn)(double *x1, double *x2, char *str, int l));

View File

@ -38,7 +38,7 @@ class IPQ_DLL_EXPORT IPhreeqcStop : std::exception
/** /**
* @class IPhreeqc * @class IPhreeqc
* *
* @brief Provides an interface to PHREEQC (Version 2)--A Computer * @brief Provides an interface to PHREEQC (Version 3)--A Computer
* Program for Speciation, Batch-Reaction, One-Dimensional Transport, * Program for Speciation, Batch-Reaction, One-Dimensional Transport,
* and Inverse Geochemical Calculations * and Inverse Geochemical Calculations
*/ */
@ -690,7 +690,8 @@ public:
* 10 result = CALLBACK(x1, x2, string$) * 10 result = CALLBACK(x1, x2, string$)
* The syntax for the C function is * The syntax for the C function is
* double my_callback(double x1, double x2, const char * string) * double my_callback(double x1, double x2, const char * string)
* @param cookie The name of a user-defined function * @param fcn The name of a user-defined function.
* @param cookie1 A user defined value to be passed to the callback function.
* @see SetBasicFortranCallback * @see SetBasicFortranCallback
*/ */
void SetBasicCallback(double (*fcn)(double x1, double x2, const char *str, void *cookie), void * cookie1); void SetBasicCallback(double (*fcn)(double x1, double x2, const char *str, void *cookie), void * cookie1);
@ -700,7 +701,7 @@ public:
* 10 result = CALLBACK(x1, x2, string$) * 10 result = CALLBACK(x1, x2, string$)
* The syntax for the Fortran function is * The syntax for the Fortran function is
* double precision my_callback(x1, x2, string), where x1 and x2 are double precision and string is a character variable. * double precision my_callback(x1, x2, string), where x1 and x2 are double precision and string is a character variable.
* @param cookie The name of a user-defined double precision function with three arguments (two double precision, one character). * @param fcn The name of a user-defined function.
* @see SetBasicCallback * @see SetBasicCallback
*/ */
void SetBasicFortranCallback(double (*fcn)(double *x1, double *x2, char *str, int l)); void SetBasicFortranCallback(double (*fcn)(double *x1, double *x2, char *str, int l));