stlb: localize variables in their direct scope
This commit is contained in:
parent
fb89b4ddcb
commit
1401860c83
@ -27,13 +27,9 @@ static void foug_stlb_read_facets(foug_stlb_geom_input_t* geom_input,
|
|||||||
|
|
||||||
int foug_stlb_read(foug_stlb_read_args_t *args)
|
int foug_stlb_read(foug_stlb_read_args_t *args)
|
||||||
{
|
{
|
||||||
uint8_t progress_pc;
|
|
||||||
uint8_t header_data[FOUG_STLB_HEADER_SIZE];
|
|
||||||
uint32_t total_facet_count;
|
uint32_t total_facet_count;
|
||||||
size_t buffer_facet_count;
|
|
||||||
size_t accum_facet_count_read;
|
size_t accum_facet_count_read;
|
||||||
int error;
|
int error;
|
||||||
size_t facet_count_read;
|
|
||||||
|
|
||||||
if (args->buffer == NULL)
|
if (args->buffer == NULL)
|
||||||
return FOUG_DATAX_NULL_BUFFER_ERROR;
|
return FOUG_DATAX_NULL_BUFFER_ERROR;
|
||||||
@ -41,11 +37,16 @@ int foug_stlb_read(foug_stlb_read_args_t *args)
|
|||||||
return FOUG_DATAX_INVALID_BUFFER_SIZE_ERROR;
|
return FOUG_DATAX_INVALID_BUFFER_SIZE_ERROR;
|
||||||
|
|
||||||
/* Read header */
|
/* Read header */
|
||||||
if (foug_stream_read(&args->stream, header_data, 1, FOUG_STLB_HEADER_SIZE) != FOUG_STLB_HEADER_SIZE)
|
{
|
||||||
return FOUG_STLB_READ_HEADER_WRONG_SIZE_ERROR;
|
uint8_t header_data[FOUG_STLB_HEADER_SIZE];
|
||||||
|
if (foug_stream_read(&args->stream, header_data, 1, FOUG_STLB_HEADER_SIZE)
|
||||||
if (args->geom_input.process_header_func != NULL)
|
!= FOUG_STLB_HEADER_SIZE)
|
||||||
args->geom_input.process_header_func(&args->geom_input, header_data);
|
{
|
||||||
|
return FOUG_STLB_READ_HEADER_WRONG_SIZE_ERROR;
|
||||||
|
}
|
||||||
|
if (args->geom_input.process_header_func != NULL)
|
||||||
|
args->geom_input.process_header_func(&args->geom_input, header_data);
|
||||||
|
}
|
||||||
|
|
||||||
/* Read facet count */
|
/* Read facet count */
|
||||||
if (foug_stream_read(&args->stream, args->buffer, sizeof(uint32_t), 1) != 1)
|
if (foug_stream_read(&args->stream, args->buffer, sizeof(uint32_t), 1) != 1)
|
||||||
@ -56,12 +57,13 @@ int foug_stlb_read(foug_stlb_read_args_t *args)
|
|||||||
args->geom_input.begin_triangles_func(&args->geom_input, total_facet_count);
|
args->geom_input.begin_triangles_func(&args->geom_input, total_facet_count);
|
||||||
|
|
||||||
/* Read triangles */
|
/* Read triangles */
|
||||||
buffer_facet_count = args->buffer_size / FOUG_STLB_TRIANGLE_SIZE;
|
|
||||||
accum_facet_count_read = 0;
|
accum_facet_count_read = 0;
|
||||||
error = FOUG_DATAX_NO_ERROR;
|
error = FOUG_DATAX_NO_ERROR;
|
||||||
while (foug_datax_no_error(error) && accum_facet_count_read < total_facet_count) {
|
while (foug_datax_no_error(error) && accum_facet_count_read < total_facet_count) {
|
||||||
facet_count_read = foug_stream_read(&args->stream,
|
const size_t facet_count_read = foug_stream_read(&args->stream,
|
||||||
args->buffer, FOUG_STLB_TRIANGLE_SIZE, buffer_facet_count);
|
args->buffer,
|
||||||
|
FOUG_STLB_TRIANGLE_SIZE,
|
||||||
|
args->buffer_size / FOUG_STLB_TRIANGLE_SIZE);
|
||||||
if (foug_stream_error(&args->stream) != 0)
|
if (foug_stream_error(&args->stream) != 0)
|
||||||
error = FOUG_DATAX_STREAM_ERROR;
|
error = FOUG_DATAX_STREAM_ERROR;
|
||||||
else if (facet_count_read > 0)
|
else if (facet_count_read > 0)
|
||||||
@ -70,6 +72,8 @@ int foug_stlb_read(foug_stlb_read_args_t *args)
|
|||||||
break; /* Exit if no facet to read */
|
break; /* Exit if no facet to read */
|
||||||
|
|
||||||
if (foug_datax_no_error(error)) {
|
if (foug_datax_no_error(error)) {
|
||||||
|
uint8_t progress_pc;
|
||||||
|
|
||||||
foug_stlb_read_facets(&args->geom_input, args->buffer, facet_count_read);
|
foug_stlb_read_facets(&args->geom_input, args->buffer, facet_count_read);
|
||||||
accum_facet_count_read += facet_count_read;
|
accum_facet_count_read += facet_count_read;
|
||||||
progress_pc = foug_percentage(0, total_facet_count, accum_facet_count_read);
|
progress_pc = foug_percentage(0, total_facet_count, accum_facet_count_read);
|
||||||
|
@ -27,7 +27,6 @@ static void foug_stlb_write_facets(const foug_stlb_geom_output_t* geom_output,
|
|||||||
|
|
||||||
int foug_stlb_write(foug_stlb_write_args_t *args)
|
int foug_stlb_write(foug_stlb_write_args_t *args)
|
||||||
{
|
{
|
||||||
uint8_t header_data[FOUG_STLB_HEADER_SIZE];
|
|
||||||
uint32_t facet_count;
|
uint32_t facet_count;
|
||||||
uint32_t i_facet;
|
uint32_t i_facet;
|
||||||
uint32_t buffer_facet_count;
|
uint32_t buffer_facet_count;
|
||||||
@ -44,13 +43,16 @@ int foug_stlb_write(foug_stlb_write_args_t *args)
|
|||||||
return FOUG_STLB_WRITE_NULL_GET_TRIANGLE_FUNC;
|
return FOUG_STLB_WRITE_NULL_GET_TRIANGLE_FUNC;
|
||||||
|
|
||||||
/* Write header */
|
/* Write header */
|
||||||
if (args->geom_output.get_header_func != NULL)
|
{
|
||||||
args->geom_output.get_header_func(&args->geom_output, header_data);
|
uint8_t header_data[FOUG_STLB_HEADER_SIZE];
|
||||||
else
|
if (args->geom_output.get_header_func != NULL)
|
||||||
memset(header_data, 0, FOUG_STLB_HEADER_SIZE);
|
args->geom_output.get_header_func(&args->geom_output, header_data);
|
||||||
|
else
|
||||||
|
memset(header_data, 0, FOUG_STLB_HEADER_SIZE);
|
||||||
|
|
||||||
if (foug_stream_write(&args->stream, header_data, FOUG_STLB_HEADER_SIZE, 1) != 1)
|
if (foug_stream_write(&args->stream, header_data, FOUG_STLB_HEADER_SIZE, 1) != 1)
|
||||||
return FOUG_DATAX_STREAM_ERROR;
|
return FOUG_DATAX_STREAM_ERROR;
|
||||||
|
}
|
||||||
|
|
||||||
/* Write facet count */
|
/* Write facet count */
|
||||||
facet_count = args->geom_output.get_triangle_count_func(&args->geom_output);
|
facet_count = args->geom_output.get_triangle_count_func(&args->geom_output);
|
||||||
@ -81,12 +83,11 @@ int foug_stlb_write(foug_stlb_write_args_t *args)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Task control */
|
/* Task control */
|
||||||
if (foug_datax_no_error(error)) {
|
if (foug_datax_no_error(error)
|
||||||
if (!foug_task_control_handle_progress(&args->task_control,
|
&& !foug_task_control_handle_progress(&args->task_control,
|
||||||
foug_percentage(0, facet_count, i_facet + 1)))
|
foug_percentage(0, facet_count, i_facet + 1)))
|
||||||
{
|
{
|
||||||
error = FOUG_DATAX_TASK_STOPPED_ERROR;
|
error = FOUG_DATAX_TASK_STOPPED_ERROR;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} /* end for */
|
} /* end for */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user