Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

genCppClass.h

00001 
00002 #ifndef GENCPPCLASS_H
00003 #define GENCPPCLASS_H
00004 
00005 
00006 #include <qstring.h>
00007 #include "capelmodule.h"
00008 
00022 enum CppFlags {
00023         NONE                                    = 0x0000,
00024         NO_SET                                  = 0x0001,
00025         NO_GET                                  = 0x0002,
00026         SET_CONST_REFERENCE     = 0x0004,
00027         GET_CONST_REFERENCE     = 0x0008,
00028         CONST_REFERENCE         = SET_CONST_REFERENCE | GET_CONST_REFERENCE
00029 };
00030  
00031 class GetSetArray {
00032 public:
00033         CppFlags flags;
00034     QString sType;
00035     QString sName;
00036     QString sDefValue;
00037     QString sToFunc;
00038     QString sDoc;
00039         QString getReturnType() const {
00040                 if( flags & GET_CONST_REFERENCE )
00041                         return "const " + sType + "&";
00042                 else
00043                         return sType;
00044         }
00045         QString getArgumentType() const {
00046                 if( flags & SET_CONST_REFERENCE )
00047                         return "const " + sType + "&";
00048                 else
00049                         return sType;
00050         }
00051 };
00052   
00053 class GenCppClass 
00054 {
00055 public: 
00056     GenCppClass(const QString &path = ""): mPath(path) {};
00057     virtual ~GenCppClass();
00059     void genClassGetSet(const QString &filename, const QString &classname, 
00060                         GetSetArray *array, int nelem,  bool constructor);
00061     virtual void genDerivedClassGetSet(const QString &filename, 
00062                                        const QString &basename, GetSetArray *arraybase, int nelembase, 
00063                                        const QString &classname, GetSetArray *array, int nelem, 
00064                                        bool constructor);
00065     virtual void genDebugPrint(const QString &filename, const QString &classname, 
00066                                GetSetArray *array, int nelem);
00067     
00068     QString equivType(const QString &type);
00069     QString printfType(const QString &type);
00070     QString getDefaultLiteral(QString ctype, QString literal);
00071 protected:
00072     QString mPath;  
00073 };
00074 
00075 #endif
00076 

Generated on Tue Feb 22 14:44:37 2005 for RTK. Report ToolKit by  doxygen 1.3.9.1