mirror of
https://github.com/CoolProp/CoolProp.git
synced 2026-01-12 15:38:29 -05:00
* Add initial clang tidy / clang format config files * Clang format the entire codebase ``` find ./src -regextype posix-extended -regex '.*\.(cpp|hpp|c|h|cxx|hxx)$' | xargs clang-format-12 -style=file -i -fallback-style=none find ./include -regextype posix-extended -regex '.*\.(cpp|hpp|c|h|cxx|hxx)$' | xargs clang-format-12 -style=file -i -fallback-style=none find ./Web -regextype posix-extended -regex '.*\.(cpp|hpp|c|h|cxx|hxx)$' | xargs clang-format-12 -style=file -i -fallback-style=none find ./dev -regextype posix-extended -regex '.*\.(cpp|hpp|c|h|cxx|hxx)$' | xargs clang-format-12 -style=file -i -fallback-style=none find ./wrappers -regextype posix-extended -regex '.*\.(cpp|hpp|c|h|cxx|hxx)$' | xargs clang-format-12 -style=file -i -fallback-style=none ``` * Add a .cmake-format file and reformat CmakeLists.txt with it https://github.com/cheshirekow/cmake_format * Add a clang-format workflow only runs on PRs, only on touched files
74 lines
2.4 KiB
C++
74 lines
2.4 KiB
C++
|
|
/* Include required header */
|
|
#include "CoolProp.h"
|
|
#include "HumidAirProp.h"
|
|
#include "WolframLibrary.h"
|
|
|
|
/* Return the version of Library Link */
|
|
extern "C" DLLEXPORT mint WolframLibrary_getVersion() {
|
|
return WolframLibraryVersion;
|
|
}
|
|
|
|
/* Initialize Library */
|
|
extern "C" DLLEXPORT int WolframLibrary_initialize(WolframLibraryData libData) {
|
|
return LIBRARY_NO_ERROR;
|
|
}
|
|
|
|
/* Uninitialize Library */
|
|
extern "C" DLLEXPORT void WolframLibrary_uninitialize(WolframLibraryData libData) {
|
|
return;
|
|
}
|
|
|
|
/* Adds one to the input, returning the result */
|
|
extern "C" DLLEXPORT int plus_one(WolframLibraryData libData, mint Argc, MArgument* Args, MArgument Res) {
|
|
if (Argc != 1) return LIBRARY_FUNCTION_ERROR;
|
|
double x = MArgument_getReal(Args[0]);
|
|
MArgument_setReal(Res, x + 1.0);
|
|
return LIBRARY_NO_ERROR;
|
|
}
|
|
|
|
extern "C" DLLEXPORT int PropsSI(WolframLibraryData libData, mint Argc, MArgument* Args, MArgument Res) {
|
|
if (Argc != 6) return LIBRARY_FUNCTION_ERROR;
|
|
|
|
char* Output = MArgument_getUTF8String(Args[0]);
|
|
char* Name1 = MArgument_getUTF8String(Args[1]);
|
|
double Prop1 = MArgument_getReal(Args[2]);
|
|
char* Name2 = MArgument_getUTF8String(Args[3]);
|
|
double Prop2 = MArgument_getReal(Args[4]);
|
|
char* FluidName = MArgument_getUTF8String(Args[5]);
|
|
|
|
double val = CoolProp::PropsSI(Output, Name1, Prop1, Name2, Prop2, FluidName);
|
|
|
|
libData->UTF8String_disown(Output);
|
|
libData->UTF8String_disown(Name1);
|
|
libData->UTF8String_disown(Name2);
|
|
libData->UTF8String_disown(FluidName);
|
|
|
|
MArgument_setReal(Res, val);
|
|
|
|
return LIBRARY_NO_ERROR;
|
|
}
|
|
|
|
extern "C" DLLEXPORT int HAPropsSI(WolframLibraryData libData, mint Argc, MArgument* Args, MArgument Res) {
|
|
if (Argc != 7) return LIBRARY_FUNCTION_ERROR;
|
|
|
|
char* Output = MArgument_getUTF8String(Args[0]);
|
|
char* Name1 = MArgument_getUTF8String(Args[1]);
|
|
double Prop1 = MArgument_getReal(Args[2]);
|
|
char* Name2 = MArgument_getUTF8String(Args[3]);
|
|
double Prop2 = MArgument_getReal(Args[4]);
|
|
char* Name3 = MArgument_getUTF8String(Args[5]);
|
|
double Prop3 = MArgument_getReal(Args[6]);
|
|
|
|
double val = HumidAir::HAPropsSI(Output, Name1, Prop1, Name2, Prop2, Name3, Prop3);
|
|
|
|
libData->UTF8String_disown(Output);
|
|
libData->UTF8String_disown(Name1);
|
|
libData->UTF8String_disown(Name2);
|
|
libData->UTF8String_disown(Name3);
|
|
|
|
MArgument_setReal(Res, val);
|
|
|
|
return LIBRARY_NO_ERROR;
|
|
}
|