mirror of
https://git.gfz-potsdam.de/naaice/iphreeqc.git
synced 2025-12-16 00:28:23 +01:00
updated for linux
git-svn-id: svn://136.177.114.72/svn_GW/IPhreeqc/branches/class@4219 1feff8c3-07ed-0310-ac33-dd36852eb9cd
This commit is contained in:
parent
b8f6951dbc
commit
1c3cc0882e
@ -52,9 +52,9 @@ OBJS = \
|
||||
input.o \
|
||||
integrate.o \
|
||||
inverse.o \
|
||||
IPhreeqc.o \
|
||||
IPhreeqc2.o \
|
||||
IPhreeqcF.o \
|
||||
IPhreeqcLib.o \
|
||||
ISolution.o \
|
||||
ISolutionComp.o \
|
||||
isotopes.o \
|
||||
@ -62,8 +62,6 @@ OBJS = \
|
||||
KineticsComp.o \
|
||||
mainsubs.o \
|
||||
model.o \
|
||||
module_files.o \
|
||||
module_output.o \
|
||||
NameDouble.o \
|
||||
NumKeyword.o \
|
||||
nvector.o \
|
||||
@ -1215,7 +1213,7 @@ Phreeqc.o: src/phreeqcpp/Phreeqc.cpp src/phreeqcpp/Phreeqc.h \
|
||||
dumper.o: src/phreeqcpp/dumper.cpp src/phreeqcpp/dumper.h \
|
||||
src/phreeqcpp/StorageBinList.h src/phreeqcpp/Parser.h \
|
||||
src/phreeqcpp/Phreeqc_class.h
|
||||
IPhreeqc.o: src/IPhreeqc.cpp include/IPhreeqc.h \
|
||||
IPhreeqc.o: src/IPhreeqc.cpp \
|
||||
include/IPhreeqcCallbacks.h src/CVar.hxx src/Debug.h include/Var.h \
|
||||
include/IPhreeqc.hpp src/phreeqcpp/Phreeqc.h \
|
||||
src/phreeqcpp/phreeqc/phrqtype.h src/phreeqcpp/phreeqc/sundialstypes.h \
|
||||
@ -1286,7 +1284,7 @@ SelectedOutput.o: src/SelectedOutput.cpp src/phreeqcpp/phreeqc/phrqtype.h \
|
||||
src/phreeqcpp/phreeqc/global_structures.h src/SelectedOutput.hxx \
|
||||
src/CVar.hxx src/Debug.h include/Var.h
|
||||
pp_sys.o: src/pp_sys.cpp
|
||||
fwrap.o: src/fwrap.cpp src/phreeqcpp/phreeqc/phrqtype.h include/IPhreeqc.h \
|
||||
fwrap.o: src/fwrap.cpp src/phreeqcpp/phreeqc/phrqtype.h \
|
||||
include/IPhreeqcCallbacks.h src/CVar.hxx src/Debug.h include/Var.h \
|
||||
src/fwrap.h
|
||||
Var.o: src/Var.c include/Var.h
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
|
||||
|
||||
INTERFACE
|
||||
FUNCTION CreateIPhreeqc
|
||||
FUNCTION CreateIPhreeqc()
|
||||
INTEGER(KIND=4) :: CreateIPhreeqc
|
||||
END FUNCTION CreateIPhreeqc
|
||||
END INTERFACE
|
||||
|
||||
314
src/IPhreeqcF.F
314
src/IPhreeqcF.F
@ -1,193 +1,217 @@
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION LoadDatabase(FILENAME)
|
||||
FUNCTION CreateIPhreeqc()
|
||||
IMPLICIT NONE
|
||||
INTEGER :: CreateIPhreeqc
|
||||
INTEGER :: CreateIPhreeqcF
|
||||
CreateIPhreeqc = CreateIPhreeqcF()
|
||||
END FUNCTION CreateIPhreeqc
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION LoadDatabase(ID,FILENAME)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
CHARACTER(LEN=*) :: FILENAME
|
||||
INTEGER :: LoadDatabase
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION LoadDatabaseF(FILENAME)
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::LoadDatabaseF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_LoadDatabaseF'::LoadDatabaseF
|
||||
CHARACTER(LEN=*) :: FILENAME
|
||||
INTEGER(KIND=4) :: LoadDatabaseF
|
||||
END FUNCTION LoadDatabaseF
|
||||
END INTERFACE
|
||||
#else
|
||||
INTEGER :: LoadDatabaseF
|
||||
#endif
|
||||
|
||||
LoadDatabase = LoadDatabaseF(FILENAME)
|
||||
LoadDatabase = LoadDatabaseF(ID,FILENAME)
|
||||
END FUNCTION LoadDatabase
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
SUBROUTINE OutputLastError
|
||||
FUNCTION LoadDatabaseString(ID,INPUT)
|
||||
IMPLICIT NONE
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
SUBROUTINE OutputLastErrorF
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::OutputLastErrorF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_OutputLastError'::OutputLastErrorF
|
||||
END SUBROUTINE OutputLastErrorF
|
||||
END INTERFACE
|
||||
#endif
|
||||
CALL OutputLastErrorF
|
||||
END SUBROUTINE OutputLastError
|
||||
INTEGER :: ID
|
||||
CHARACTER(LEN=*) :: INPUT
|
||||
INTEGER :: LoadDatabaseString
|
||||
INTEGER :: LoadDatabaseStringF
|
||||
LoadDatabaseString = LoadDatabaseStringF(ID,INPUT)
|
||||
END FUNCTION LoadDatabaseString
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION AccumulateLine(LINE)
|
||||
FUNCTION AccumulateLine(ID,LINE)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
CHARACTER(LEN=*) :: LINE
|
||||
INTEGER :: AccumulateLine
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION AccumulateLineF(LINE)
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::AccumulateLineF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_AccumulateLineF'::AccumulateLineF
|
||||
CHARACTER(LEN=*) :: LINE
|
||||
INTEGER(KIND=4) :: AccumulateLineF
|
||||
END FUNCTION AccumulateLineF
|
||||
END INTERFACE
|
||||
#else
|
||||
INTEGER :: AccumulateLineF
|
||||
#endif
|
||||
AccumulateLine = AccumulateLineF(LINE)
|
||||
AccumulateLine = AccumulateLineF(ID,LINE)
|
||||
END FUNCTION AccumulateLine
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION RunAccumulated(OUTPUT_ON, ERROR_ON, LOG_ON, SELECTED_ON)
|
||||
FUNCTION SetSelectedOutputOn(ID,SELECTED_ON)
|
||||
IMPLICIT NONE
|
||||
LOGICAL :: OUTPUT_ON
|
||||
LOGICAL :: ERROR_ON
|
||||
LOGICAL :: LOG_ON
|
||||
LOGICAL :: SELECTED_ON
|
||||
INTEGER :: ID
|
||||
LOGICAL :: SELECTED_ON
|
||||
INTEGER :: SetSelectedOutputOn
|
||||
INTEGER :: SetSelectedOutputOnF
|
||||
SetSelectedOutputOn = SetSelectedOutputOnF(ID,SELECTED_ON)
|
||||
END FUNCTION SetSelectedOutputOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION SetOutputOn(ID,OUTPUT_ON)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
LOGICAL :: OUTPUT_ON
|
||||
INTEGER :: SetOutputOn
|
||||
INTEGER :: SetOutputOnF
|
||||
SetOutputOn = SetOutputOnF(ID,OUTPUT_ON)
|
||||
END FUNCTION SetOutputOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION SetErrorOn(ID,ERROR_ON)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
LOGICAL :: ERROR_ON
|
||||
INTEGER :: SetErrorOn
|
||||
INTEGER :: SetErrorOnF
|
||||
SetErrorOn = SetErrorOnF(ID,ERROR_ON)
|
||||
END FUNCTION SetErrorOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION SetLogOn(ID,LOG_ON)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
LOGICAL :: LOG_ON
|
||||
INTEGER :: SetLogOn
|
||||
INTEGER :: SetLogOnF
|
||||
SetLogOn = SetLogOnF(ID,LOG_ON)
|
||||
END FUNCTION SetLogOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION SetDumpOn(ID,DUMP_ON)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
LOGICAL :: DUMP_ON
|
||||
INTEGER :: SetDumpOn
|
||||
INTEGER :: SetDumpOnF
|
||||
SetDumpOn = SetDumpOnF(ID,DUMP_ON)
|
||||
END FUNCTION SetDumpOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION SetDumpStringOn(ID,DUMP_STRING_ON)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
LOGICAL :: DUMP_STRING_ON
|
||||
INTEGER :: SetDumpStringOn
|
||||
INTEGER :: SetDumpStringOnF
|
||||
SetDumpStringOn = SetDumpStringOnF(ID,DUMP_STRING_ON)
|
||||
END FUNCTION SetDumpStringOn
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetDumpLineCount(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: GetDumpLineCount
|
||||
INTEGER :: GetDumpLineCountF
|
||||
GetDumpLineCount = GetDumpLineCountF(ID)
|
||||
END FUNCTION GetDumpLineCount
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetDumpLine(ID,N,LINE)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: N
|
||||
CHARACTER(LEN=*) :: LINE
|
||||
INTEGER :: GetDumpLine
|
||||
INTEGER :: GetDumpLineF
|
||||
GetDumpLine = GetDumpLineF(ID,N,LINE)
|
||||
END FUNCTION GetDumpLine
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetErrorLineCount(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: GetErrorLineCount
|
||||
INTEGER :: GetErrorLineCountF
|
||||
GetErrorLineCount = GetErrorLineCountF(ID)
|
||||
END FUNCTION GetErrorLineCount
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetErrorLine(ID,N,LINE)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: N
|
||||
CHARACTER(LEN=*) :: LINE
|
||||
INTEGER :: GetErrorLine
|
||||
INTEGER :: GetErrorLineF
|
||||
GetErrorLine = GetErrorLineF(ID,N,LINE)
|
||||
END FUNCTION GetErrorLine
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetComponentCount(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: GetComponentCount
|
||||
INTEGER :: GetComponentCountF
|
||||
GetComponentCount = GetComponentCountF(ID)
|
||||
END FUNCTION GetComponentCount
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetComponent(ID,N,COMP)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: N
|
||||
CHARACTER(LEN=*) :: COMP
|
||||
INTEGER :: GetComponent
|
||||
INTEGER :: GetComponentF
|
||||
GetComponent = GetComponentF(ID,N,COMP)
|
||||
END FUNCTION GetComponent
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION RunAccumulated(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: RunAccumulated
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION RunAccumulatedF(OUTPUT_ON, ERROR_ON, LOG_ON, SELECTED_ON)
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::RunF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_RunF'::RunF
|
||||
LOGICAL(KIND=4) :: OUTPUT_ON
|
||||
LOGICAL(KIND=4) :: ERROR_ON
|
||||
LOGICAL(KIND=4) :: LOG_ON
|
||||
LOGICAL(KIND=4) :: SELECTED_ON
|
||||
INTEGER(KIND=4) :: RunF
|
||||
END FUNCTION RunAccumulatedF
|
||||
END INTERFACE
|
||||
#else
|
||||
INTEGER :: RunAccumulatedF
|
||||
#endif
|
||||
RunAccumulated = RunAccumulatedF(OUTPUT_ON, ERROR_ON,
|
||||
& LOG_ON, SELECTED_ON)
|
||||
RunAccumulated = RunAccumulatedF(ID)
|
||||
END FUNCTION RunAccumulated
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION RunFile(FILENAME,OUTPUT_ON,ERROR_ON,LOG_ON,SELECTED_ON)
|
||||
FUNCTION RunFile(ID,FILENAME)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
CHARACTER(LEN=*) :: FILENAME
|
||||
LOGICAL :: OUTPUT_ON
|
||||
LOGICAL :: ERROR_ON
|
||||
LOGICAL :: LOG_ON
|
||||
LOGICAL :: SELECTED_ON
|
||||
INTEGER :: RunFile
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION RunFileF(OUT_ON, ERR_ON, LOG_ON, SEL_ON, FILE)
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::RunFileF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_RunFileF'::RunFileF
|
||||
LOGICAL(KIND=4) :: OUT_ON
|
||||
LOGICAL(KIND=4) :: ERR_ON
|
||||
LOGICAL(KIND=4) :: LOG_ON
|
||||
LOGICAL(KIND=4) :: SEL_ON
|
||||
CHARACTER(LEN=*) :: FILE
|
||||
INTEGER(KIND=4) :: RunFileF
|
||||
END FUNCTION RunFileF
|
||||
END INTERFACE
|
||||
#else
|
||||
INTEGER :: RunFileF
|
||||
#endif
|
||||
RunFile = RunFileF(OUTPUT_ON, ERROR_ON, LOG_ON,
|
||||
& SELECTED_ON, FILENAME)
|
||||
RunFile = RunFileF(ID,FILENAME)
|
||||
END FUNCTION RunFile
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
SUBROUTINE OutputLines
|
||||
FUNCTION RunString(ID,INPUT)
|
||||
IMPLICIT NONE
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
SUBROUTINE OutputLinesF
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::OutputLinesF
|
||||
!DEC$ ATTRIBUTES ALIAS:'_OutputLines'::OutputLinesF
|
||||
END SUBROUTINE OutputLinesF
|
||||
END INTERFACE
|
||||
#endif
|
||||
CALL OutputLinesF
|
||||
END SUBROUTINE OutputLines
|
||||
INTEGER :: ID
|
||||
CHARACTER(LEN=*) :: INPUT
|
||||
INTEGER :: RunString
|
||||
INTEGER :: RunStringF
|
||||
RunString = RunStringF(ID,INPUT)
|
||||
END FUNCTION RunString
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetSelectedOutputRowCount()
|
||||
FUNCTION GetSelectedOutputRowCount(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: GetSelectedOutputRowCount
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION FRows
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::FRows
|
||||
!DEC$ ATTRIBUTES ALIAS:'_GetSelectedOutputRowCountF'::FRows
|
||||
INTEGER(KIND=4) :: FRows
|
||||
END FUNCTION FRows
|
||||
END INTERFACE
|
||||
GetSelectedOutputRowCount = FRows() - 1
|
||||
#else
|
||||
INTEGER :: GetSelectedOutputRowCountF
|
||||
GetSelectedOutputRowCount = GetSelectedOutputRowCountF() - 1
|
||||
#endif
|
||||
INTEGER :: ID
|
||||
INTEGER :: GetSelectedOutputRowCount
|
||||
INTEGER :: GetSelectedOutputRowCountF
|
||||
GetSelectedOutputRowCount = GetSelectedOutputRowCountF(ID)
|
||||
END FUNCTION GetSelectedOutputRowCount
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetSelectedOutputColumnCount()
|
||||
FUNCTION GetSelectedOutputColumnCount(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: GetSelectedOutputColumnCount
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION FCols
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::FCols
|
||||
!DEC$ ATTRIBUTES ALIAS:'_GetSelectedOutputColumnCount'::FCols
|
||||
INTEGER(KIND=4) :: FCols
|
||||
END FUNCTION FCols
|
||||
END INTERFACE
|
||||
GetSelectedOutputColumnCount = FCols()
|
||||
#else
|
||||
INTEGER :: GetSelectedOutputColumnCountF
|
||||
GetSelectedOutputColumnCount = GetSelectedOutputColumnCountF()
|
||||
#endif
|
||||
GetSelectedOutputColumnCount = GetSelectedOutputColumnCountF(ID)
|
||||
END FUNCTION GetSelectedOutputColumnCount
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION GetSelectedOutputValue(ROW,COL,VTYPE,DVALUE,SVALUE)
|
||||
FUNCTION GetSelectedOutputValue(ID,ROW,COL,VTYPE,DVALUE,SVALUE)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
INTEGER :: ROW
|
||||
INTEGER :: COL
|
||||
INTEGER :: VTYPE
|
||||
REAL*8 :: DVALUE
|
||||
CHARACTER(LEN=*) :: SVALUE
|
||||
INTEGER :: GetSelectedOutputValue
|
||||
#if defined(_WIN32)
|
||||
INTERFACE
|
||||
FUNCTION Get(ROW,COL,VTYPE,DVALUE,SVALUE)
|
||||
!DEC$ ATTRIBUTES C,REFERENCE::Get
|
||||
!DEC$ ATTRIBUTES ALIAS:'_GetSelectedOutputValueF'::Get
|
||||
INTEGER(KIND=4) :: ROW
|
||||
INTEGER(KIND=4) :: COL
|
||||
INTEGER(KIND=4) :: VTYPE
|
||||
REAL(KIND=8) :: DVALUE
|
||||
CHARACTER(LEN=*) :: SVALUE
|
||||
INTEGER(KIND=4) :: Get
|
||||
END FUNCTION Get
|
||||
END INTERFACE
|
||||
adjcol = col - 1
|
||||
GetSelectedOutputValue = Get(ROW,adjcol,VTYPE,DVALUE,SVALUE)
|
||||
#else
|
||||
INTEGER :: GetSelectedOutputValueF
|
||||
GetSelectedOutputValue = GetSelectedOutputValueF(ROW,
|
||||
GetSelectedOutputValue = GetSelectedOutputValueF(ID,ROW,
|
||||
& COL,VTYPE,DVALUE,SVALUE)
|
||||
#endif
|
||||
END FUNCTION GetSelectedOutputValue
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
FUNCTION System(COMMAND)
|
||||
SUBROUTINE OutputLastError
|
||||
IMPLICIT NONE
|
||||
CHARACTER(LEN=*) :: COMMAND
|
||||
INTEGER :: System
|
||||
INTEGER :: SystemF
|
||||
System = SystemF(COMMAND)
|
||||
END FUNCTION System
|
||||
CALL OutputLastErrorF
|
||||
END SUBROUTINE OutputLastError
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
SUBROUTINE OutputLines(ID)
|
||||
IMPLICIT NONE
|
||||
INTEGER :: ID
|
||||
CALL OutputLinesF(ID)
|
||||
END SUBROUTINE OutputLines
|
||||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
!! FUNCTION System(COMMAND)
|
||||
!! IMPLICIT NONE
|
||||
!! CHARACTER(LEN=*) :: COMMAND
|
||||
!! INTEGER :: System
|
||||
!! INTEGER :: SystemF
|
||||
!! System = SystemF(COMMAND)
|
||||
!! END FUNCTION System
|
||||
|
||||
@ -12,17 +12,31 @@ compile fortran with:
|
||||
g77 -fno-second-underscore
|
||||
********************************/
|
||||
#if defined(__GNUC__)
|
||||
#define LoadDatabaseF loaddatabasef_
|
||||
#define AccumulateLineF accumulatelinef_
|
||||
#define RunAccumulatedF runaccumulatedf_
|
||||
#define RunFileF runfilef_
|
||||
#define CreateIPhreeqcF createiphreeqcf_
|
||||
#define GetComponentCountF getcomponentcountf_
|
||||
#define GetComponentF getcomponentf_
|
||||
#define GetDumpLineCountF getdumplinecountf_
|
||||
#define GetDumpLineF getdumplinef_
|
||||
#define GetErrorLineCountF geterrorlinecountf_
|
||||
#define GetErrorLineF geterrorlinef_
|
||||
#define GetSelectedOutputColumnCountF getselectedoutputcolumncountf_
|
||||
#define GetSelectedOutputRowCountF getselectedoutputrowcountf_
|
||||
#define GetSelectedOutputValueF getselectedoutputvaluef_
|
||||
#define LoadDatabaseF loaddatabasef_
|
||||
#define LoadDatabaseStringF loaddatabasestringf_
|
||||
#define OutputLastErrorF outputlasterrorf_
|
||||
#define OutputLinesF outputlinesf_
|
||||
#define GetSelectedOutputRowCountF getselectedoutputrowcountf_
|
||||
#define GetSelectedOutputColumnCountF getselectedoutputcolumncountf_
|
||||
#define GetSelectedOutputValueF getselectedoutputvaluef_
|
||||
#define SystemF systemf_
|
||||
#define RunAccumulatedF runaccumulatedf_
|
||||
#define RunFileF runfilef_
|
||||
#define RunStringF runstringf_
|
||||
#define SetDumpOnF setdumponf_
|
||||
#define SetDumpStringOnF setdumpstringonf_
|
||||
#define SetErrorOnF seterroronf_
|
||||
#define SetLogOnF setlogonf_
|
||||
#define SetOutputOnF setoutputonf_
|
||||
#define SetSelectedOutputOnF setselectedoutputonf_
|
||||
//#define SystemF systemf_
|
||||
#endif
|
||||
|
||||
#include "fwrap.h"
|
||||
@ -86,7 +100,7 @@ LoadDatabaseStringF(int *id, char* input, unsigned int input_length)
|
||||
cinput = f2cstring(input, input_length);
|
||||
if (!cinput)
|
||||
{
|
||||
::AddErrorM(*id, "LoadDatabase: Out of memory.\n");
|
||||
::AddErrorM(*id, "LoadDatabaseString: Out of memory.\n");
|
||||
return VR_OUTOFMEMORY;
|
||||
}
|
||||
|
||||
@ -95,7 +109,6 @@ LoadDatabaseStringF(int *id, char* input, unsigned int input_length)
|
||||
return n;
|
||||
}
|
||||
|
||||
|
||||
IPQ_RESULT
|
||||
AccumulateLineF(int *id, char *line, unsigned int line_length)
|
||||
{
|
||||
@ -181,9 +194,9 @@ GetComponentCountF(int *id)
|
||||
}
|
||||
|
||||
void
|
||||
GetComponentF(int *id, int *n, char* line, unsigned int line_length)
|
||||
GetComponentF(int *id, int *n, char* comp, unsigned int line_length)
|
||||
{
|
||||
padfstring(line, ::GetComponentM(*id, (*n) - 1), line_length);
|
||||
padfstring(comp, ::GetComponentM(*id, (*n) - 1), line_length);
|
||||
}
|
||||
|
||||
int
|
||||
@ -301,22 +314,22 @@ OutputLinesF(int *id)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}int
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}SystemF(char* command, unsigned int command_length)
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}{
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} char* ccommand;
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} ccommand = f2cstring(command, command_length);
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} if (!ccommand)
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} {
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} AddError("System: Out of memory.\n");
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} return (int)VR_OUTOFMEMORY;
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} }
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} int n = system(ccommand);
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} free(ccommand);
|
||||
// COMMENT: {4/5/2010 7:12:55 PM} return n;
|
||||
// COMMENT: {4/5/2010 7:12:55 PM}}
|
||||
int
|
||||
SystemF(char* command, unsigned int command_length)
|
||||
{
|
||||
char* ccommand;
|
||||
|
||||
ccommand = f2cstring(command, command_length);
|
||||
if (!ccommand)
|
||||
{
|
||||
//AddError("System: Out of memory.\n");
|
||||
return (int)VR_OUTOFMEMORY;
|
||||
}
|
||||
|
||||
int n = system(ccommand);
|
||||
free(ccommand);
|
||||
return n;
|
||||
}
|
||||
|
||||
#if defined(__cplusplus)
|
||||
}
|
||||
|
||||
@ -10,6 +10,8 @@ extern "C" {
|
||||
|
||||
int LoadDatabaseF(int *id, char* filename, unsigned int filename_length);
|
||||
|
||||
int LoadDatabaseStringF(int *id, char* input, unsigned int input_length);
|
||||
|
||||
IPQ_RESULT AccumulateLineF(int *id, char *line, unsigned int line_length);
|
||||
|
||||
int RunAccumulatedF(int *id);
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
CPPUNIT = /z/parkplace/home/charlton
|
||||
CC = g++
|
||||
DEFINES = -DNDEBUG -DSWIG_SHARED_OBJ -DPHREEQC_CPP -DPHREEQC_CLASS -DUSE_PHRQ_ALLOC
|
||||
DEFINES = -DNDEBUG -DSWIG_SHARED_OBJ -DPHREEQC_CPP -DPHREEQC_CLASS -DUSE_PHRQ_ALLOC -DCPPUNIT
|
||||
CFLAGS = -Wall -O3
|
||||
CPPFLAGS = $(DEFINES) -I$(CPPUNIT)/include -I../include -I../src -I../src/phreeqcpp -I../src/phreeqcpp/phreeqc
|
||||
TARGET_ARCH =
|
||||
@ -33,7 +33,6 @@ VPATH=.:../src:../src/phreeqcpp:../src/phreeqcpp/phreeqc
|
||||
|
||||
TOBJS = \
|
||||
TestCVar.o \
|
||||
TestInterface.o \
|
||||
TestIPhreeqc.o \
|
||||
TestIPhreeqcLib.o \
|
||||
TestSelectedOutput.o \
|
||||
@ -42,14 +41,10 @@ TOBJS = \
|
||||
|
||||
|
||||
SOBJS = \
|
||||
IPhreeqc.o \
|
||||
IPhreeqc2.o \
|
||||
IPhreeqcLib.o \
|
||||
SelectedOutput.o \
|
||||
Var.o \
|
||||
fwrap.o \
|
||||
module_files.o \
|
||||
module_output.o
|
||||
Var.o
|
||||
|
||||
PPOBJS = \
|
||||
cxxKinetics.o \
|
||||
@ -136,11 +131,6 @@ clean:
|
||||
# TOBJS
|
||||
TestCVar.o: TestCVar.cpp TestCVar.h ../src/CVar.hxx ../src/Debug.h \
|
||||
../src/../include/Var.h
|
||||
TestInterface.o: TestInterface.cpp TestInterface.h ../include/IPhreeqc.h \
|
||||
../include/Var.h ../src/CVar.hxx ../src/Debug.h ../src/../include/Var.h \
|
||||
../src/phreeqcpp/phreeqc/global.h ../src/phreeqcpp/phreeqc/phrqtype.h \
|
||||
../src/phreeqcpp/phreeqc/phqalloc.h ../src/phreeqcpp/phreeqc/input.h \
|
||||
../src/phreeqcpp/phreeqc/output.h ../src/phreeqcpp/phreeqc/phrqproto.h
|
||||
TestSelectedOutput.o: TestSelectedOutput.cpp TestSelectedOutput.h \
|
||||
../src/SelectedOutput.hxx ../src/CVar.hxx ../src/Debug.h \
|
||||
../src/../include/Var.h ../src/phreeqcpp/phreeqc/global.h \
|
||||
@ -150,7 +140,7 @@ TestSelectedOutput.o: TestSelectedOutput.cpp TestSelectedOutput.h \
|
||||
TestVar.o: TestVar.cpp TestVar.h ../include/Var.h
|
||||
unit.o: unit.cpp TestVar.h ../include/Var.h TestCVar.h ../src/CVar.hxx \
|
||||
../src/Debug.h ../src/../include/Var.h TestSelectedOutput.h \
|
||||
../src/SelectedOutput.hxx ../src/CVar.hxx TestInterface.h
|
||||
../src/SelectedOutput.hxx ../src/CVar.hxx
|
||||
|
||||
# POBJS
|
||||
advection.o: ../src/phreeqcpp/phreeqc/advection.c \
|
||||
@ -306,33 +296,11 @@ utilities.o: ../src/phreeqcpp/phreeqc/utilities.c \
|
||||
../src/phreeqcpp/phreeqc/phrqproto.h
|
||||
|
||||
# SOBJS
|
||||
IPhreeqc.o: ../src/IPhreeqc.cpp ../include/IPhreeqc.h \
|
||||
../include/IPhreeqcCallbacks.h ../include/Var.h ../include/IPhreeqc.hpp \
|
||||
../src/phreeqcpp/Phreeqc.h ../src/phreeqcpp/phreeqc/phrqtype.h \
|
||||
../src/phreeqcpp/phreeqc/sundialstypes.h \
|
||||
../src/phreeqcpp/phreeqc/phrqtype.h ../src/phreeqcpp/phreeqc/nvector.h \
|
||||
../src/phreeqcpp/phreeqc/sundialstypes.h \
|
||||
../src/phreeqcpp/phreeqc/cvdense.h ../src/phreeqcpp/phreeqc/cvode.h \
|
||||
../src/phreeqcpp/phreeqc/nvector.h ../src/phreeqcpp/phreeqc/dense.h \
|
||||
../src/phreeqcpp/phreeqc/smalldense.h \
|
||||
../src/phreeqcpp/phreeqc/nvector_serial.h \
|
||||
../src/phreeqcpp/phreeqc/dense.h ../src/phreeqcpp/runner.h \
|
||||
../src/phreeqcpp/StorageBinList.h ../src/phreeqcpp/dumper.h \
|
||||
../src/phreeqcpp/phreeqc/p2c.h \
|
||||
../src/phreeqcpp/phreeqc/global_structures.h \
|
||||
../src/phreeqcpp/phreeqc/basic.h \
|
||||
../src/phreeqcpp/phreeqc/pitzer_structures.h \
|
||||
../src/phreeqcpp/phreeqc/pitzer.h ../src/phreeqcpp/phreeqc/input.h \
|
||||
../src/phreeqcpp/phreeqc/output.h ../src/phreeqcpp/phreeqc/global.h \
|
||||
../src/phreeqcpp/phreeqc/global_structures.h \
|
||||
../include/IPhreeqcCallbacks.h ../include/Var.h \
|
||||
../src/SelectedOutput.hxx ../src/CVar.hxx ../src/Debug.h \
|
||||
../src/ErrorReporter.hxx
|
||||
SelectedOutput.o: ../src/SelectedOutput.cpp ../src/SelectedOutput.hxx \
|
||||
../src/CVar.hxx ../src/Debug.h ../include/Var.h
|
||||
Var.o: ../src/Var.c ../src/../include/Var.h
|
||||
fwrap.o: ../src/fwrap.cpp ../src/phreeqcpp/phreeqc/global.h \
|
||||
../src/phreeqcpp/phreeqc/phrqtype.h ../src/../include/IPhreeqc.h \
|
||||
../src/phreeqcpp/phreeqc/phrqtype.h \
|
||||
../src/../include/Var.h
|
||||
global.o: ../src/global.c ../src/phreeqcpp/phreeqc/global.h \
|
||||
../src/phreeqcpp/phreeqc/phrqtype.h ../src/phreeqcpp/phreeqc/phqalloc.h
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user