summaryrefslogtreecommitdiff
path: root/libopie2/tools/regen.py
Side-by-side diff
Diffstat (limited to 'libopie2/tools/regen.py') (more/less context) (ignore whitespace changes)
-rwxr-xr-xlibopie2/tools/regen.py52
1 files changed, 41 insertions, 11 deletions
diff --git a/libopie2/tools/regen.py b/libopie2/tools/regen.py
index 2f7f418..9ad5352 100755
--- a/libopie2/tools/regen.py
+++ b/libopie2/tools/regen.py
@@ -20,32 +20,41 @@ except:
print >>tablehfile,"""
/*
- * ioctl table - generated by regen.py - (C) Michael 'Mickey' Lauer <mickey@vanille.de>
+ * debug value mapper - generated by regen.py - (C) Michael 'Mickey' Lauer <mickey@vanille.de>
*/
-#ifndef IOCTLMAP_H
-#define IOCTLMAP_H
+#ifndef DEBUGMAPPER_H
+#define DEBUGMAPPER_H
#include <qstring.h>
#include <qintdict.h>
typedef QIntDict<QString> IntStringMap;
-IntStringMap* constructIoctlMap();
+class DebugMapper
+{
+ public:
+ DebugMapper();
+ ~DebugMapper();
+
+ const QString& map( int value ) const;
+ private:
+ IntStringMap _map;
+};
#endif
"""
print >>tablecfile,"""
/*
- * ioctl table - generated by regen.py - (C) Michael 'Mickey' Lauer <mickey@vanille.de>
+ * debug value mapper - generated by regen.py - (C) Michael 'Mickey' Lauer <mickey@vanille.de>
*/
#include "%s"
-IntStringMap* constructIoctlMap()
+DebugMapper::DebugMapper()
{
-\tIntStringMap* map = new IntStringMap();
+ qDebug( "DebugMapper::DebugMapper()" );
""" % (tablehfile.name)
@@ -54,11 +63,32 @@ for line in result:
if not l[0].startswith( "#define" ) or not l[2].startswith( "0x" ):
print >>sys.stderr, "can't parse line: %s" % l
continue
- #print >>tablecfile, "\tqDebug( \"adding %s = %s\" );" % ( l[2], l[1] )
- print >>tablecfile, "\tmap->insert( %s, new QString(\"%s\") );" % ( l[2], l[1] )
+ print >>tablecfile, " _map.insert( %s, new QString(\"%s\") );" % ( l[2], l[1] )
print >>tablecfile,"""
-\treturn map;
};
-""" \ No newline at end of file
+
+
+DebugMapper::~DebugMapper()
+{
+ qDebug( "DebugMapper::~DebugMapper()" );
+}
+
+
+const QString& DebugMapper::map( int value ) const
+{
+ QString* result = _map[ value ];
+
+ if ( !result )
+ {
+ qDebug( "DebugMapper::map() - value not found." );
+ return QString::null;
+ }
+ else
+ {
+ return *result;
+ }
+}
+
+"""