PhoenixGenerator  2.0.4
Set of tools to generate code
Loading...
Searching...
No Matches
PTraitBackendManager.h
Go to the documentation of this file.
1/***************************************
2 Auteur : Pierre Aubert
3 Mail : pierre.aubert@lapp.in2p3.fr
4 Licence : CeCILL-C
5****************************************/
6
7#ifndef __PTRAITBACKENDMANAGER_H__
8#define __PTRAITBACKENDMANAGER_H__
9
11
12typedef std::vector<PAbstractTraitBackend*> PVecTraitBackend;
13
16 public:
18 virtual ~PTraitBackendManager();
19
21 template<class Backend>
23 p_vecTrait.push_back(new Backend);
24 }
25
26 void headerExtraInclude(std::ofstream & fs, const GeneratorMode & mode) const;
27 //Declaration or template which cannot have _impl.h implementation
28 void publicMethodDeclaration(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
29 void publicMethodImplementation(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
30 void protectedMethodDeclaration(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
31 void protectedMethodImplementation(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
32 void privateMethodDeclaration(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
33 void privateMethodImplementation(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
34
35 void classExtraFunctionDeclaration(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
36 void classExtraFunctionImplementation(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
37
38 void testFunction(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
39 void testCallFunction(std::ofstream & fs, const PClassConfig & classConfig, const GeneratorMode & mode) const;
40
41 void clear();
42 private:
44
47};
48
49
50
51#endif
52
std::vector< PAbstractTraitBackend * > PVecTraitBackend
Class to describe a basic class.
void protectedMethodDeclaration(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Declaration of protected methods.
void classExtraFunctionDeclaration(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Declaration of extra functions.
void testCallFunction(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Call of the test function.
void classExtraFunctionImplementation(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Implementation of extra functions.
void headerExtraInclude(std::ofstream &fs, const GeneratorMode &mode) const
Add extra include on the header.
PVecTraitBackend p_vecTrait
Vector of the Trait backend.
void privateMethodDeclaration(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Declaration of private methods.
void initialisationPTraitBackendManager()
Initialisation function of the class PTraitBackendManager.
void protectedMethodImplementation(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Implementation of protected methods.
void privateMethodImplementation(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Implementation of private methods.
void publicMethodImplementation(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Implementation of public methods.
PTraitBackendManager()
Default constructor of PTraitBackendManager.
void clear()
Clear the PTraitBackendManager.
void addTraitBackend()
Add a trait backend into the PTraitBackendManager.
void publicMethodDeclaration(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Declaration of public methods.
void testFunction(std::ofstream &fs, const PClassConfig &classConfig, const GeneratorMode &mode) const
Implementation of test function.
virtual ~PTraitBackendManager()
Destructor of PTraitBackendManager.
All the genertor modes.