From 329d568dbf54c00849679a144577b4a3d0db02e5 Mon Sep 17 00:00:00 2001 From: David L Parkhurst Date: Thu, 8 Aug 2013 19:53:31 +0000 Subject: [PATCH] functions are fcn Added cookie to c callback. git-svn-id: svn://136.177.114.72/svn_GW/IPhreeqc/trunk@7895 1feff8c3-07ed-0310-ac33-dd36852eb9cd --- src/IPhreeqc.cpp | 8 ++++---- src/IPhreeqc.h | 15 ++++++++------- src/IPhreeqc.hpp | 4 ++-- src/IPhreeqcLib.cpp | 8 ++++---- src/fwrap.cpp | 8 ++++---- src/fwrap.h | 2 +- src/fwrap2.cpp | 4 ++-- src/fwrap3.cpp | 4 ++-- src/fwrap4.cpp | 4 ++-- src/fwrap5.cpp | 4 ++-- src/fwrap6.cpp | 4 ++-- src/fwrap7.cpp | 4 ++-- src/fwrap8.cpp | 4 ++-- 13 files changed, 37 insertions(+), 36 deletions(-) diff --git a/src/IPhreeqc.cpp b/src/IPhreeqc.cpp index 2822fbb8..9c26dc46 100644 --- a/src/IPhreeqc.cpp +++ b/src/IPhreeqc.cpp @@ -728,14 +728,14 @@ int IPhreeqc::RunString(const char* input) return this->PhreeqcPtr->get_input_errors(); } -void IPhreeqc::SetBasicCallback(double (*cookie)(double x1, double x2, const char *str)) +void IPhreeqc::SetBasicCallback(double (*fcn)(double x1, double x2, const char *str, void *cookie), void *cookie1) { - this->PhreeqcPtr->register_basic_callback(cookie); + this->PhreeqcPtr->register_basic_callback(fcn, cookie1); } -void IPhreeqc::SetBasicFortranCallback(double (*cookie)(double *x1, double *x2, char *str, int l)) +void IPhreeqc::SetBasicFortranCallback(double (*fcn)(double *x1, double *x2, char *str, int l)) { - this->PhreeqcPtr->register_fortran_basic_callback(cookie); + this->PhreeqcPtr->register_fortran_basic_callback(fcn); } void IPhreeqc::SetDumpFileName(const char *filename) diff --git a/src/IPhreeqc.h b/src/IPhreeqc.h index 44f08314..3720f378 100644 --- a/src/IPhreeqc.h +++ b/src/IPhreeqc.h @@ -1533,16 +1533,17 @@ Headings * @htmlonly * *
- *  FUNCTION SetBasicCallback(ID,COOKIE)
+ *  FUNCTION SetBasicCallback(ID,fcn,cookie)
  *    INTEGER  :: ID
- *    double (*cookie)(double x1, double x2, const char *str)
- *    INTEGER  :: SetBasicCallback
+ *    double (*fcn)(double x1, double x2, const char *str, void *)
+ *    void *      cookie  :: SetBasicCallback
+ *    integer     SetBasicCallback
  *  END FUNCTION SetBasicCallback
  *  
*
* @endhtmlonly */ - IPQ_DLL_EXPORT IPQ_RESULT SetBasicCallback(int id, double (*cookie)(double x1, double x2, const char *str)); + 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. @@ -1554,10 +1555,10 @@ Headings * @htmlonly * *
- *  FUNCTION SetBasicFortranCallback(ID,COOKIE)
+ *  FUNCTION SetBasicFortranCallback(ID,fcn)
  *    INTEGER(KIND=4),  INTENT(IN)  :: ID
  *    INTERFACE
- *      DOUBLE PRECISION FUNCTION cookie(x1, x2, str)
+ *      DOUBLE PRECISION FUNCTION fcn(x1, x2, str)
  *        DOUBLE PRECISION, INTENT(in) :: x1
  *        DOUBLE PRECISION, INTENT(in) :: x2
  *        CHARACTER(*), INTENT(in)                   :: str
@@ -1569,7 +1570,7 @@ Headings
  *  
  *  @endhtmlonly
  */
-	IPQ_DLL_EXPORT IPQ_RESULT  SetBasicFortranCallback(int id, double (*cookie)(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));
 
 
 /**
diff --git a/src/IPhreeqc.hpp b/src/IPhreeqc.hpp
index 8ca2db4e..fcdc4d55 100644
--- a/src/IPhreeqc.hpp
+++ b/src/IPhreeqc.hpp
@@ -662,7 +662,7 @@ public:
 	 *  @param cookie           The name of a user-defined function 
 	 *  @see                    SetBasicFortranCallback
 	 */
-	void                     SetBasicCallback(double (*cookie)(double x1, double x2, const char *str));
+	void                     SetBasicCallback(double (*fcn)(double x1, double x2, const char *str, void *cookie), void * cookie1);
 
 	/**
 	 *  Sets a Fortran callback function for Basic programs. The syntax for the Basic command is
@@ -672,7 +672,7 @@ public:
 	 *  @param cookie           The name of a user-defined double precision function with three arguments (two double precision, one character).
 	 *  @see                    SetBasicCallback
 	 */
-	void                     SetBasicFortranCallback(double (*cookie)(double *x1, double *x2, char *str, int l));
+	void                     SetBasicFortranCallback(double (*fcn)(double *x1, double *x2, char *str, int l));
 
 	/**
 	 *  Runs the specified string as input to phreeqc.
diff --git a/src/IPhreeqcLib.cpp b/src/IPhreeqcLib.cpp
index 4c0f0ec4..795a9f35 100644
--- a/src/IPhreeqcLib.cpp
+++ b/src/IPhreeqcLib.cpp
@@ -715,24 +715,24 @@ RunString(int id, const char* input)
 }
 
 IPQ_RESULT
-SetBasicCallback(int id, double (*cookie)(double x1, double x2, const char *str))
+SetBasicCallback(int id, double (*fcn)(double x1, double x2, const char *str, void *cookie), void *cookie1)
 {
 	IPhreeqc* IPhreeqcPtr = IPhreeqcLib::GetInstance(id);
 	if (IPhreeqcPtr)
 	{
-		IPhreeqcPtr->SetBasicCallback(cookie);
+		IPhreeqcPtr->SetBasicCallback(fcn, cookie1);
 		return IPQ_OK;
 	}
 	return IPQ_BADINSTANCE;
 }
 
 IPQ_RESULT
-SetBasicFortranCallback(int id, double (*cookie)(double *x1, double *x2, char *str, int l))
+SetBasicFortranCallback(int id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
 	IPhreeqc* IPhreeqcPtr = IPhreeqcLib::GetInstance(id);
 	if (IPhreeqcPtr)
 	{
-		IPhreeqcPtr->SetBasicFortranCallback(cookie);
+		IPhreeqcPtr->SetBasicFortranCallback(fcn);
 		return IPQ_OK;
 	}
 	return IPQ_BADINSTANCE;
diff --git a/src/fwrap.cpp b/src/fwrap.cpp
index 37a30b6b..4d9be65c 100644
--- a/src/fwrap.cpp
+++ b/src/fwrap.cpp
@@ -450,9 +450,9 @@ RunStringF(int *id, char* input, unsigned int input_length)
 }
 
 IPQ_RESULT
-SetBasicFortranCallbackF(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+SetBasicFortranCallbackF(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return ::SetBasicFortranCallback(*id, cookie);
+	return ::SetBasicFortranCallback(*id, fcn);
 }
 
 IPQ_RESULT
@@ -799,9 +799,9 @@ IPQ_DLL_EXPORT int  __stdcall RUNSTRING(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  __stdcall SETBASICFORTRANCALBACK(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  __stdcall SETBASICFORTRANCALBACK(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  __stdcall SETDUMPFILENAME(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap.h b/src/fwrap.h
index 1bdef4d7..852bd735 100644
--- a/src/fwrap.h
+++ b/src/fwrap.h
@@ -137,7 +137,7 @@ extern "C" {
   IPQ_RESULT SetSelectedOutputFileNameF(int *id, char* fname, unsigned int fname_length);
   IPQ_RESULT SetSelectedOutputFileOnF(int *id, int* selected_output_file_on);
   IPQ_RESULT SetSelectedOutputStringOnF(int *id, int* selected_output_string_on);
-  IPQ_RESULT SetBasicFortranCallbackF(int *id, double (*cookie)(double *x1, double *x2, char *str, int l));
+  IPQ_RESULT SetBasicFortranCallbackF(int *id, double (*fcn)(double *x1, double *x2, char *str, int l));
 
 #if defined(__cplusplus)
 }
diff --git a/src/fwrap2.cpp b/src/fwrap2.cpp
index 7bbd8081..93bfb5c8 100644
--- a/src/fwrap2.cpp
+++ b/src/fwrap2.cpp
@@ -199,9 +199,9 @@ IPQ_DLL_EXPORT int  RUNSTRING(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  SETBASICFORTRANCALLBACK(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  SETBASICFORTRANCALLBACK(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  SETDUMPFILENAME(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap3.cpp b/src/fwrap3.cpp
index dd2e4568..44139f69 100644
--- a/src/fwrap3.cpp
+++ b/src/fwrap3.cpp
@@ -200,9 +200,9 @@ IPQ_DLL_EXPORT int  runstring_(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  setbasicfortrancallback_(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  setbasicfortrancallback_(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  setdumpfilename_(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap4.cpp b/src/fwrap4.cpp
index 6bf5e13b..7a4fe96b 100644
--- a/src/fwrap4.cpp
+++ b/src/fwrap4.cpp
@@ -200,9 +200,9 @@ IPQ_DLL_EXPORT int  runstring(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  setbasicfortrancallback(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  setbasicfortrancallback(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  setdumpfilename(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap5.cpp b/src/fwrap5.cpp
index 5f3e3d4e..49e4b0c7 100644
--- a/src/fwrap5.cpp
+++ b/src/fwrap5.cpp
@@ -200,9 +200,9 @@ IPQ_DLL_EXPORT int  RUNSTRING_(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  SETBASICFORTRANCALLBACK_(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  SETBASICFORTRANCALLBACK_(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  SETDUMPFILENAME_(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap6.cpp b/src/fwrap6.cpp
index 777d2d2c..aec90124 100644
--- a/src/fwrap6.cpp
+++ b/src/fwrap6.cpp
@@ -201,9 +201,9 @@ IPQ_DLL_EXPORT int  __stdcall RUNSTRING_(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  __stdcall SETBASICFORTRANCALLBACK_(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  __stdcall SETBASICFORTRANCALLBACK_(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  __stdcall SETDUMPFILENAME_(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap7.cpp b/src/fwrap7.cpp
index e29f9d64..1def9c6c 100644
--- a/src/fwrap7.cpp
+++ b/src/fwrap7.cpp
@@ -200,9 +200,9 @@ IPQ_DLL_EXPORT int  __stdcall runstring_(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  __stdcall setbasicfortrancallback_(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  __stdcall setbasicfortrancallback_(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  __stdcall setdumpfilename_(int *id, char *filename, unsigned int len)
 {
diff --git a/src/fwrap8.cpp b/src/fwrap8.cpp
index 19143856..d80e89d7 100644
--- a/src/fwrap8.cpp
+++ b/src/fwrap8.cpp
@@ -200,9 +200,9 @@ IPQ_DLL_EXPORT int  __stdcall runstring(int *id, char *input, unsigned int len)
 {
 	return RunStringF(id, input, len);
 }
-IPQ_DLL_EXPORT int  __stdcall setbasicfortrancallback(int *id, double (*cookie)(double *x1, double *x2, char *str, int l))
+IPQ_DLL_EXPORT int  __stdcall setbasicfortrancallback(int *id, double (*fcn)(double *x1, double *x2, char *str, int l))
 {
-	return SetBasicFortranCallbackF(id, cookie);
+	return SetBasicFortranCallbackF(id, fcn);
 }
 IPQ_DLL_EXPORT int  __stdcall setdumpfilename(int *id, char *filename, unsigned int len)
 {