PhoenixGenerator
3.4.0
Generate code from template files and projects in C++, Rust, Python and wrapped C++ to Python
Toggle main menu visibility
Loading...
Searching...
No Matches
GeneratorMode.h
Go to the documentation of this file.
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
{
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
28
struct
GeneratorMode
{
30
bool
enableDataStream
{
false
};
32
bool
enableTypeStream
{
false
};
34
bool
enableConfigStream
{
false
};
36
bool
enableUnitTest
{
false
};
38
bool
enableCheckStream
{
false
};
39
41
bool
enableSetter
{
true
};
43
bool
enableGetter
{
true
};
45
bool
enableCopy
{
true
};
47
bool
enableFromString
{
true
};
49
PString
defTemplate
;
51
PString
templateDeclaration
;
53
PString
assertInclude
{
"assert.h"
};
55
PString
assertCall
{
"assert"
};
57
PString
moduleName
;
59
ProjectType::ProjectType
type
{
ProjectType::CPP
};
61
MapClassConfig
mapClass
;
62
};
63
64
#include "
PClassConfig.h
"
65
66
#endif
MapClassConfig
std::map< std::string, PClassConfig > MapClassConfig
Definition
GeneratorMode.h:25
PClassConfig.h
PClassConfig
Class to describe a basic class.
Definition
PClassConfig.h:14
ProjectType
Definition
GeneratorMode.h:13
ProjectType::ProjectType
ProjectType
Type of the project to be generated.
Definition
GeneratorMode.h:15
ProjectType::CPP
@ CPP
Definition
GeneratorMode.h:16
ProjectType::RUST
@ RUST
Definition
GeneratorMode.h:19
ProjectType::WRAPPER
@ WRAPPER
Definition
GeneratorMode.h:17
ProjectType::NANOBIND_WRAPPER
@ NANOBIND_WRAPPER
Definition
GeneratorMode.h:18
GeneratorMode
All the genertor modes.
Definition
GeneratorMode.h:28
GeneratorMode::enableGetter
bool enableGetter
True to enable getters trait generator.
Definition
GeneratorMode.h:43
GeneratorMode::defTemplate
PString defTemplate
Template definition for the class header.
Definition
GeneratorMode.h:49
GeneratorMode::assertInclude
PString assertInclude
Include of the assert to be used.
Definition
GeneratorMode.h:53
GeneratorMode::templateDeclaration
PString templateDeclaration
Template declaration of the method implementation.
Definition
GeneratorMode.h:51
GeneratorMode::enableFromString
bool enableFromString
True to enable fromString trait generator.
Definition
GeneratorMode.h:47
GeneratorMode::enableDataStream
bool enableDataStream
True to enable data stream interface generator.
Definition
GeneratorMode.h:30
GeneratorMode::enableSetter
bool enableSetter
True to enable setters trait generator.
Definition
GeneratorMode.h:41
GeneratorMode::assertCall
PString assertCall
Assert to be used.
Definition
GeneratorMode.h:55
GeneratorMode::enableCopy
bool enableCopy
True to enable copy trait generator.
Definition
GeneratorMode.h:45
GeneratorMode::mapClass
MapClassConfig mapClass
Map of the generated class in the wrapper mode.
Definition
GeneratorMode.h:61
GeneratorMode::enableConfigStream
bool enableConfigStream
True to enable config stream interface generator.
Definition
GeneratorMode.h:34
GeneratorMode::enableCheckStream
bool enableCheckStream
True to enable check stream interface generator.
Definition
GeneratorMode.h:38
GeneratorMode::moduleName
PString moduleName
Name of the wrapper python module.
Definition
GeneratorMode.h:57
GeneratorMode::type
ProjectType::ProjectType type
Type of the project to be generated.
Definition
GeneratorMode.h:59
GeneratorMode::enableTypeStream
bool enableTypeStream
True to enable type stream interface generator.
Definition
GeneratorMode.h:32
GeneratorMode::enableUnitTest
bool enableUnitTest
True to enable the unit tests.
Definition
GeneratorMode.h:36
src
Representation
GeneratorMode.h
Generated by
1.18.0