Send string around for diameters file

This commit is contained in:
Paul Dino Jones 2024-06-11 14:41:30 +00:00
parent ccd7fa8bd0
commit 674d23a5e9
7 changed files with 16 additions and 17 deletions

View File

@ -27,12 +27,12 @@ bool hasTyreDiameter(SimData* simdata)
return true;
}
void loadtyreconfig(SimData* simdata, FILE* configfile)
void loadtyreconfig(SimData* simdata, char* configfile)
{
json_t *root;
json_error_t error;
root = json_loadf(configfile, 0, NULL);
root = json_load_file(configfile, 0, NULL);
if(!root)
{
@ -119,7 +119,7 @@ void loadtyreconfig(SimData* simdata, FILE* configfile)
json_decref(cararray);
}
void savetyreconfig(SimData* simdata, FILE* configfile)
void savetyreconfig(SimData* simdata, char* configfile)
{
json_t* object = json_object();
@ -137,7 +137,7 @@ void savetyreconfig(SimData* simdata, FILE* configfile)
json_array_append(array, object);
json_t* file = json_loadf(configfile, 0, NULL);
json_t* file = json_load_file(configfile, 0, NULL);
if(!file)
{
@ -155,7 +155,7 @@ void savetyreconfig(SimData* simdata, FILE* configfile)
json_array_append(cararray, array);
}
json_dumpf(file, configfile, 0);
json_dump_file(file, configfile, 0);
json_decref(tyre0);
json_decref(tyre1);
@ -184,7 +184,7 @@ void getTyreDiameter(SimData* simdata)
}
int slipeffect(SimData* simdata, int effecttype, int tyre, double threshold, int useconfig, int* configcheck, FILE* configfile)
int slipeffect(SimData* simdata, int effecttype, int tyre, double threshold, int useconfig, int* configcheck, char* configfile)
{
int play = 0;
double wheelslip[4];

View File

@ -4,6 +4,6 @@
#include <stdio.h>
#include "../simulatorapi/simapi/simapi/simdata.h"
int slipeffect(SimData* simdata, int effecttype, int tyre, double threshold, int useconfig, int* configcheck, FILE* configfile);
int slipeffect(SimData* simdata, int effecttype, int tyre, double threshold, int useconfig, int* configcheck, char* configfile);
#endif

View File

@ -27,7 +27,7 @@ struct SimDevice
MonocoqueTyreIdentifier tyre;
int useconfig;
int* configcheck;
FILE* tyrediameterconfig;
char* tyrediameterconfig;
};
typedef struct {

View File

@ -11,7 +11,7 @@
#include "../../slog/slog.h"
int usbhapticdev_update(USBGenericHapticDevice* usbhapticdevice, SimData* simdata, int tyre, int useconfig, int* configcheck, FILE* configfile)
int usbhapticdev_update(USBGenericHapticDevice* usbhapticdevice, SimData* simdata, int tyre, int useconfig, int* configcheck, char* configfile)
{
int play = slipeffect(simdata, usbhapticdevice->effecttype, tyre, usbhapticdevice->threshold, useconfig, configcheck, configfile);

View File

@ -28,7 +28,7 @@ typedef struct
USBGenericHapticDevice;
int usbhapticdev_update(USBGenericHapticDevice* hapticdevice, SimData* simdata, int tyre, int useconfig, int* configcheck, FILE* configfile);
int usbhapticdev_update(USBGenericHapticDevice* hapticdevice, SimData* simdata, int tyre, int useconfig, int* configcheck, char* configfile);
int usbhapticdev_init(USBGenericHapticDevice* hapticdevice, DeviceSettings* ds);
int usbhapticdev_free(USBGenericHapticDevice* hapticdevice);

View File

@ -79,7 +79,7 @@ typedef struct
Simulator sim_name;
int configcheck;
int useconfig;
FILE* tyre_diameter_config;
char* tyre_diameter_config;
}
MonocoqueSettings;

View File

@ -97,12 +97,8 @@ int main(int argc, char** argv)
slog_disable(SLOG_DEBUG);
}
ms->tyre_diameter_config = fopen(diameters_file_str, "r");
ms->tyre_diameter_config = strdup(diameters_file_str);
ms->useconfig = 1;
if (ms->tyre_diameter_config == NULL)
{
slogw("Could not initialize tyre diameters save file.");
}
ms->configcheck = 0;
free(diameters_file_str);
@ -286,7 +282,10 @@ configcleanup:
cleanup_final:
fclose(ms->tyre_diameter_config);
if(ms->tyre_diameter_config != NULL)
{
free(ms->tyre_diameter_config);
}
free(ms);
free(p);
exit(0);