PhoenixGenerator
2.8.0
Set of tools to generate code
Toggle main menu visibility
Loading...
Searching...
No Matches
PNanobindTraitBackendManager.h
Go to the documentation of this file.
1
/***************************************
2
Auteur : Thibaut Oprinsen
3
Mail : thibaut.oprinsen@lapp.in2p3.fr
4
Licence : CeCILL-C
5
****************************************/
6
7
#ifndef __PNANOBIND_WRAPPER_TRAIT_BACKEND_MANAGER_H__
8
#define __PNANOBIND_WRAPPER_TRAIT_BACKEND_MANAGER_H__
9
10
#include <set>
11
#include "
PAbstractTraitBackend.h
"
12
13
typedef
std::vector<PAbstractNanobindTraitBackend*>
PVecNanobindTraitBackend
;
14
16
class
PNanobindTraitBackendManager
{
17
public
:
18
PNanobindTraitBackendManager
();
19
virtual
~PNanobindTraitBackendManager
();
20
22
template
<
class
Backend>
23
void
addTraitBackend
(){
24
p_vecTrait
.push_back(
new
Backend);
25
}
26
27
virtual
void
headerExtraInclude
(std::set<std::string> & setInclude,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
28
virtual
void
headerTestInclude
(std::ofstream & fs,
const
GeneratorMode
& mode,
const
PString & baseFileName)
const
;
29
30
virtual
void
registerProperty
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
31
virtual
void
registerConstructor
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
32
virtual
void
registerStaticMethod
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
33
virtual
void
registerMethod
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
34
35
virtual
void
testFunction
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode,
const
PString & baseFileName)
const
;
36
virtual
void
testCallFunction
(std::ofstream & fs,
const
PClassConfig
& classConfig,
const
GeneratorMode
& mode)
const
;
37
void
clear
();
38
39
private
:
40
void
initialisationPNanobindTraitBackendManager
();
41
43
bool
isLastDef
;
45
PVecNanobindTraitBackend
p_vecTrait
;
46
};
47
48
49
50
#endif
51
PAbstractTraitBackend.h
PVecNanobindTraitBackend
std::vector< PAbstractNanobindTraitBackend * > PVecNanobindTraitBackend
Definition
PNanobindTraitBackendManager.h:13
PClassConfig
Class to describe a basic class.
Definition
PClassConfig.h:14
PNanobindTraitBackendManager::headerTestInclude
virtual void headerTestInclude(std::ofstream &fs, const GeneratorMode &mode, const PString &baseFileName) const
Add extra include on the test header.
Definition
PNanobindTraitBackendManager.cpp:34
PNanobindTraitBackendManager::p_vecTrait
PVecNanobindTraitBackend p_vecTrait
Vector of the Trait backend.
Definition
PNanobindTraitBackendManager.h:45
PNanobindTraitBackendManager::PNanobindTraitBackendManager
PNanobindTraitBackendManager()
Default constructor of PNanobindTraitBackendManager.
Definition
PNanobindTraitBackendManager.cpp:10
PNanobindTraitBackendManager::initialisationPNanobindTraitBackendManager
void initialisationPNanobindTraitBackendManager()
Initialisation function of the class PNanobindTraitBackendManager.
Definition
PNanobindTraitBackendManager.cpp:115
PNanobindTraitBackendManager::clear
void clear()
Clear the PNanobindTraitBackendManager.
Definition
PNanobindTraitBackendManager.cpp:107
PNanobindTraitBackendManager::registerStaticMethod
virtual void registerStaticMethod(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Registration of static method.
Definition
PNanobindTraitBackendManager.cpp:67
PNanobindTraitBackendManager::isLastDef
bool isLastDef
True if the property or function is the last one to be declared.
Definition
PNanobindTraitBackendManager.h:43
PNanobindTraitBackendManager::headerExtraInclude
virtual void headerExtraInclude(std::set< std::string > &setInclude, const PClassConfig &classConfig, const GeneratorMode &mode) const
Add extra include on the header.
Definition
PNanobindTraitBackendManager.cpp:24
PNanobindTraitBackendManager::~PNanobindTraitBackendManager
virtual ~PNanobindTraitBackendManager()
Destructor of PNanobindTraitBackendManager.
Definition
PNanobindTraitBackendManager.cpp:15
PNanobindTraitBackendManager::registerProperty
virtual void registerProperty(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Registration of property.
Definition
PNanobindTraitBackendManager.cpp:45
PNanobindTraitBackendManager::testCallFunction
virtual void testCallFunction(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Call of the test function.
Definition
PNanobindTraitBackendManager.cpp:100
PNanobindTraitBackendManager::testFunction
virtual void testFunction(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode, const PString &baseFileName) const
Implementation of test function.
Definition
PNanobindTraitBackendManager.cpp:89
PNanobindTraitBackendManager::registerMethod
virtual void registerMethod(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Registration of method.
Definition
PNanobindTraitBackendManager.cpp:56
PNanobindTraitBackendManager::addTraitBackend
void addTraitBackend()
Add a trait backend into the PTraitBackendManager.
Definition
PNanobindTraitBackendManager.h:23
PNanobindTraitBackendManager::registerConstructor
virtual void registerConstructor(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Registration of constructor.
Definition
PNanobindTraitBackendManager.cpp:78
GeneratorMode
All the genertor modes.
Definition
GeneratorMode.h:27
src
Representation
PNanobindTraitBackendManager.h
Generated by
1.17.0