commit 7e798ae83cdc5b98dac70fb79bd04fbdd42d0be3
parent 02bc98ff940b7eebde778c6e200041c2bf43743a
Author: Christophe Coustet <christophe.coustet@meso-star.com>
Date: Wed, 24 Oct 2018 11:31:31 +0200
Windows build.
Diffstat:
3 files changed, 20 insertions(+), 11 deletions(-)
diff --git a/src/args.h b/src/args.h
@@ -19,14 +19,20 @@ struct args{
char* bc_filename;
size_t N;
unsigned nthreads;
- double probe[4];
+ union {
+ struct { double p[3]; uint64_t t; };
+ double probe[4];
+ };
enum stardis_mode mode;
double scale_factor;
double radiative_temp[2];
char* camera;
};
-#define ARGS_DEFAULT__ {NULL, NULL, 10000, SDIS_NTHREADS_DEFAULT, {0,0,0,INF}, PROBE_COMPUTE, 1.0, {300,300}, NULL}
-static const struct args ARGS_DEFAULT = ARGS_DEFAULT__;
+#define ARGS_DEFAULT__ {\
+ NULL, NULL, 10000, SDIS_NTHREADS_DEFAULT,\
+ { .p={0.0, 0.0, 0.0}, .t=0x7FF0000000000000 /* probe[3]=INF */},\
+ PROBE_COMPUTE, 1.0, {300.0, 300.0}, NULL}
+static const struct args ARGS_DEFAULT = ARGS_DEFAULT__;
static void
print_help(char* prog)
diff --git a/src/main.c b/src/main.c
@@ -10,6 +10,9 @@ int main(int argc, char** argv){
int err = 0;
res_T res = RES_OK;
+ /* Check proper init for ARGS_DEFAULT */
+ ASSERT(ARGS_DEFAULT.probe[3] == INF);
+
res = parse_args(argc, argv, &args);
if (res != RES_OK) goto error;
diff --git a/src/stardis-compute.c b/src/stardis-compute.c
@@ -198,7 +198,7 @@ solid_get_power
/*******************************************************************************
* Interface data
******************************************************************************/
-struct interface {
+struct intface {
double hc; /* Convection coefficient */
char* temperature;
char* flux;
@@ -210,7 +210,7 @@ static double
interface_get_convection_coef
(const struct sdis_interface_fragment* frag, struct sdis_data* data)
{
- const struct interface* interface_props = sdis_data_cget(data);
+ const struct intface* interface_props = sdis_data_cget(data);
return interface_props->hc;
}
@@ -218,7 +218,7 @@ static double
interface_get_temperature
(const struct sdis_interface_fragment* frag, struct sdis_data* data)
{
- const struct interface* interface_props = sdis_data_cget(data);
+ const struct intface* interface_props = sdis_data_cget(data);
if (interface_props->temperature == NULL) {
return -1;
@@ -247,7 +247,7 @@ static double
interface_get_flux
(const struct sdis_interface_fragment* frag, struct sdis_data* data)
{
- const struct interface* interface_props = sdis_data_cget(data);
+ const struct intface* interface_props = sdis_data_cget(data);
if (interface_props->flux == NULL) {
return SDIS_FLUX_NONE;
@@ -276,7 +276,7 @@ static double
interface_get_emissivity
(const struct sdis_interface_fragment* frag, struct sdis_data* data)
{
- const struct interface* interface_props = sdis_data_cget(data);
+ const struct intface* interface_props = sdis_data_cget(data);
return interface_props->emissivity;
}
@@ -285,7 +285,7 @@ static double
interface_get_alpha
(const struct sdis_interface_fragment* frag, struct sdis_data* data)
{
- const struct interface* interface_props = sdis_data_cget(data);
+ const struct intface* interface_props = sdis_data_cget(data);
return interface_props->alpha;
}
@@ -386,7 +386,7 @@ stardis_compute(struct stardis* stardis, enum stardis_mode mode)
SDIS_INTERFACE_SHADER_NULL;
struct sdis_interface_shader interface_shader_connection =
SDIS_INTERFACE_SHADER_NULL;
- struct interface* interface_props = NULL;
+ struct intface* interface_props = NULL;
struct sdis_interface** interfaces = NULL;
struct sdis_scene* scn = NULL;
@@ -477,7 +477,7 @@ stardis_compute(struct stardis* stardis, enum stardis_mode mode)
double alpha =
stardis->boundary[stardis->geometry.triangle[i].bound_id].specular_fraction;
- SDIS(data_create(dev, sizeof(struct interface), ALIGNOF(struct interface), NULL, &data));
+ SDIS(data_create(dev, sizeof(struct intface), ALIGNOF(struct intface), NULL, &data));
interface_props = sdis_data_get(data);
if (hc > -1) {
interface_props->hc = hc;