PhoenixGenerator  2.0.0
Set of tools to generate code
saveClassConfig.h
Go to the documentation of this file.
1 
2 /***************************************
3  Auteur : Pierre Aubert
4  Mail : pierre.aubert@lapp.in2p3.fr
5  Licence : CeCILL-C
6 ****************************************/
7 
8 #ifndef __SAVE_CLASS_CONFIG_H__
9 #define __SAVE_CLASS_CONFIG_H__
10 
11 #include <fstream>
12 #include "PClassConfig.h"
13 
14 bool getIsSimpleType(const PString & varType);
15 PString makeVarType(const PString & varType, bool isSetter, bool isConst, bool isRef, bool isPtr);
16 PString createSetterDecl(const PString & varType, const PString & varName, const PString & className, bool isPtr);
17 PString createGetterDecl(const PString & varType, const PString & varName, const PString & className, bool isConst, bool isPtr);
18 
19 void saveDeclSetters(std::ofstream & fs, const PClassConfig & classConfig);
20 void saveDeclGetters(std::ofstream & fs, const PClassConfig & classConfig);
21 
22 void saveClassDecl(std::ofstream & fs, const PClassConfig & classConfig, bool enableDataStream, bool enableTypeStream);
23 
24 
25 void saveClassConstructorImpl(std::ofstream & fs, const PClassConfig & classConfig);
26 void saveClassCopyConstructorImpl(std::ofstream & fs, const PClassConfig & classConfig);
27 void saveClassDestructorImpl(std::ofstream & fs, const PClassConfig & classConfig);
28 void saveClassEqualOperatorImpl(std::ofstream & fs, const PClassConfig & classConfig);
29 void saveClassSettersImpl(std::ofstream & fs, const PClassConfig & classConfig);
30 void saveClassGettersImpl(std::ofstream & fs, const PClassConfig & classConfig);
31 void saveClassCopyFunctionImpl(std::ofstream & fs, const PClassConfig & classConfig);
32 void saveClassImpl(std::ofstream & fs, const PClassConfig & classConfig);
33 
34 bool saveClassDecl(const std::vector<PClassConfig> & classConfig, const PPath & headerFile, const PVecPath & listInclude, bool enableDataStream, bool enableTypeStream);
35 bool saveClassImpl(const std::vector<PClassConfig> & classConfig, const PPath & sourceFile, const PPath & headerFile);
36 
37 bool saveClassImplDecl(const std::vector<PClassConfig> & classConfig, const PPath & baseFileName, const PVecPath & listInclude = PVecPath(), bool enableDataStream = false, bool enableTypeStream = false);
38 
39 #endif
40 
std::vector< PPath > PVecPath
Definition: PPath.h:75
Class to describe a basic class.
Definition: PClassConfig.h:14
Path of a directory or a file.
Definition: PPath.h:17
Extends the std::string.
Definition: PString.h:16
void saveClassConstructorImpl(std::ofstream &fs, const PClassConfig &classConfig)
PString createSetterDecl(const PString &varType, const PString &varName, const PString &className, bool isPtr)
Creates a function decl for setters.
bool saveClassImplDecl(const std::vector< PClassConfig > &classConfig, const PPath &baseFileName, const PVecPath &listInclude=PVecPath(), bool enableDataStream=false, bool enableTypeStream=false)
Creates header file.
void saveDeclGetters(std::ofstream &fs, const PClassConfig &classConfig)
Creates getters header file.
void saveClassEqualOperatorImpl(std::ofstream &fs, const PClassConfig &classConfig)
void saveClassSettersImpl(std::ofstream &fs, const PClassConfig &classConfig)
void saveClassImpl(std::ofstream &fs, const PClassConfig &classConfig)
void saveClassDecl(std::ofstream &fs, const PClassConfig &classConfig, bool enableDataStream, bool enableTypeStream)
Creates header file.
void saveClassDestructorImpl(std::ofstream &fs, const PClassConfig &classConfig)
PString makeVarType(const PString &varType, bool isSetter, bool isConst, bool isRef, bool isPtr)
Makes the var type by taking account of the type.
PString createGetterDecl(const PString &varType, const PString &varName, const PString &className, bool isConst, bool isPtr)
Creates a function decl for setters.
void saveClassGettersImpl(std::ofstream &fs, const PClassConfig &classConfig)
bool getIsSimpleType(const PString &varType)
Check if the given type is a simple type.
void saveClassCopyConstructorImpl(std::ofstream &fs, const PClassConfig &classConfig)
void saveClassCopyFunctionImpl(std::ofstream &fs, const PClassConfig &classConfig)
void saveDeclSetters(std::ofstream &fs, const PClassConfig &classConfig)
Creates setters header file.