8.3
general documentation
cs_opts.h
Go to the documentation of this file.
1#ifndef __CS_OPTS_H__
2#define __CS_OPTS_H__
3
4/*============================================================================
5 * Parsing of program arguments and associated initializations
6 *============================================================================*/
7
8/*
9 This file is part of code_saturne, a general-purpose CFD tool.
10
11 Copyright (C) 1998-2024 EDF S.A.
12
13 This program is free software; you can redistribute it and/or modify it under
14 the terms of the GNU General Public License as published by the Free Software
15 Foundation; either version 2 of the License, or (at your option) any later
16 version.
17
18 This program is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
20 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
21 details.
22
23 You should have received a copy of the GNU General Public License along with
24 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
25 Street, Fifth Floor, Boston, MA 02110-1301, USA.
26*/
27
28/*----------------------------------------------------------------------------*/
29
30/*----------------------------------------------------------------------------
31 * Local headers
32 *----------------------------------------------------------------------------*/
33
34#include "cs_base.h"
35
36/*----------------------------------------------------------------------------*/
37
39
40/*============================================================================
41 * Macro definitions
42 *============================================================================*/
43
44/*============================================================================
45 * Type definitions
46 *============================================================================*/
47
48/*----------------------------------------------------------------------------
49 * code_saturne base options structure
50 *----------------------------------------------------------------------------*/
51
52typedef struct {
53
54 char *app_name; /* Application name */
55
56 /* Redirection of standard output */
57
58 bool trace; /* Trace progress to stdout */
59 bool logrp; /* Redirection for ranks > 0
60 (false: to "/dev/null", suppressed)
61 true: to "run_solver_n*.log" file) */
62
63 /* Signal handling */
64
65 bool sig_defaults; /* use default signal handlers */
66
67 /* Other options */
68
69 bool preprocess; /* Mesh preprocessing mode */
70 bool verif; /* Mesh quality verification mode */
71 int benchmark; /* Benchmark mode:
72 0: not used;
73 1: timing (CPU + Walltime) mode
74 2: MPI trace-friendly mode */
75
76} cs_opts_t;
77
78/*=============================================================================
79 * Public function prototypes
80 *============================================================================*/
81
82/*----------------------------------------------------------------------------
83 * Define options and call some associated initializations
84 * based on command line arguments
85 *
86 * parameters:
87 * argc --> number of command line arguments
88 * argv --> array of command line arguments
89 * opts <-- options structure
90 *----------------------------------------------------------------------------*/
91
92void
93cs_opts_define(int argc,
94 char *argv[],
95 cs_opts_t *opts);
96
97/*----------------------------------------------------------------------------*/
98
100
101#endif /* __CS_OPTS_H__ */
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
#define END_C_DECLS
Definition: cs_defs.h:543
void cs_opts_define(int argc, char *argv[], cs_opts_t *opts)
Definition: cs_opts.cpp:184
Definition: cs_opts.h:52
char * app_name
Definition: cs_opts.h:54
bool sig_defaults
Definition: cs_opts.h:65
bool verif
Definition: cs_opts.h:70
bool trace
Definition: cs_opts.h:58
bool logrp
Definition: cs_opts.h:59
bool preprocess
Definition: cs_opts.h:69
int benchmark
Definition: cs_opts.h:71