GCC Code Coverage Report


Directory: ./
File: src/Representation/GeneratorMode.h
Date: 2026-10-16 17:52:29
Exec Total Coverage
Lines: 0 0 -%
Functions: 0 0 -%
Branches: 0 0 -%

Line Branch Exec Source
1 /***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : LGPL-3.0-only
5 ****************************************/
6
7 #ifndef __GENERATOR_MODE_H__
8 #define __GENERATOR_MODE_H__
9
10 #include <map>
11 #include "PString.h"
12
13 namespace ProjectType{
14 ///@brief Type of the project to be generated
15 enum ProjectType{
16 CPP,
17 WRAPPER,
18 NANOBIND_WRAPPER,
19 RUST
20 };
21 }
22
23 class PClassConfig;
24
25 typedef std::map<std::string, PClassConfig> MapClassConfig;
26
27 ///@brief All the genertor modes
28 struct GeneratorMode{
29 ///True to enable data stream interface generator
30 bool enableDataStream{false};
31 ///True to enable type stream interface generator
32 bool enableTypeStream{false};
33 ///True to enable config stream interface generator
34 bool enableConfigStream{false};
35 ///True to enable the unit tests
36 bool enableUnitTest{false};
37 ///True to enable check stream interface generator
38 bool enableCheckStream{false};
39
40 ///True to enable setters trait generator
41 bool enableSetter{true};
42 ///True to enable getters trait generator
43 bool enableGetter{true};
44 ///True to enable copy trait generator
45 bool enableCopy{true};
46 ///True to enable fromString trait generator
47 bool enableFromString{true};
48 ///Template definition for the class header
49 PString defTemplate;
50 ///Template declaration of the method implementation
51 PString templateDeclaration;
52 ///Include of the assert to be used
53 PString assertInclude{"assert.h"};
54 ///Assert to be used
55 PString assertCall{"assert"};
56 ///Name of the wrapper python module
57 PString moduleName;
58 ///Type of the project to be generated
59 ProjectType::ProjectType type{ProjectType::CPP};
60 ///Map of the generated class in the wrapper mode
61 MapClassConfig mapClass;
62 };
63
64 #include "PClassConfig.h"
65
66 #endif
67