Index: experimental/PdfViewer/generate_code.py |
=================================================================== |
--- experimental/PdfViewer/generate_code.py (revision 10712) |
+++ experimental/PdfViewer/generate_code.py (working copy) |
@@ -9,10 +9,10 @@ |
# TODO(edisonn): date and some other types are in fact strings, with a custom format!!! |
# TODO(edisonn): refer to page 99 (PDF data types) |
knowTypes = { |
-'(any)': ['SkPdfObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
+'(any)': ['SkPdfNativeObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
# TODO(edisonn): return constant for undefined |
-'(undefined)': ['SkPdfObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
-'(various)': ['SkPdfObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
+'(undefined)': ['SkPdfNativeObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
+'(various)': ['SkPdfNativeObject*', 'ret', datatypes.CppNull(), 'true', 'use a mapper'], |
'array': ['SkPdfArray*', '(SkPdfArray*)ret', datatypes.CppNull(), 'ret->isArray()'], |
'boolean': ['bool', 'ret->boolValue()', datatypes.PdfBoolean('false'), 'ret->isBoolean()'], |
#date is a string, with special formating, add here the |
@@ -254,8 +254,8 @@ |
for name in self.fClasses: |
cls = self.fClasses[name] |
- cls.fEnum = 'k' + name + '_SkPdfObjectType' |
- cls.fEnumEnd = 'k' + name + '__End_SkPdfObjectType' |
+ cls.fEnum = 'k' + name + '_SkPdfNativeObjectType' |
+ cls.fEnumEnd = 'k' + name + '__End_SkPdfNativeObjectType' |
fileHeadersNative.write('#include "SkPdf' + cls.fName + '_autogen.h"\n') |
fileHeadersNativeCpp.write('#include "SkPdf' + cls.fName + '_autogen.cpp"\n') |
@@ -280,8 +280,8 @@ |
fileEnums.write('#define __DEFINED__SkPdfEnums\n') |
fileEnums.write('\n') |
- fileEnums.write('enum SkPdfObjectType {\n') |
- fileEnums.write(' kNone_SkPdfObjectType = 0,\n') |
+ fileEnums.write('enum SkPdfNativeObjectType {\n') |
+ fileEnums.write(' kNone_SkPdfNativeObjectType = 0,\n') |
for enum in enumsRoot: |
self.writeEnum(fileEnums, enum, enumToCls) |
fileEnums.write('};\n') |
@@ -315,13 +315,13 @@ |
nativeFileClass.write('#include <string>\n') |
nativeFileClass.write('#include "SkPdfEnums_autogen.h"\n') |
nativeFileClass.write('#include "SkPdfNYI.h"\n') |
- nativeFileClass.write('#include "SkPdfObject.h"\n') |
- nativeFileClass.write('class SkNativeParsedPDF;\n') |
+ nativeFileClass.write('#include "SkPdfNativeObject.h"\n') |
+ nativeFileClass.write('class SkPdfNativeDoc;\n') |
if cls.fBase != '': |
nativeFileClass.write('#include "SkPdf' + cls.fBase + '_autogen.h"\n') |
- nativeFileClassCpp.write('#include "SkNativeParsedPDF.h"\n') |
+ nativeFileClassCpp.write('#include "SkPdfNativeDoc.h"\n') |
nativeFileClass.write('\n') |
@@ -330,7 +330,7 @@ |
nativeFileClass.write('// ' + cls.fComment + '\n') |
if cls.fBase == '': |
- nativeFileClass.write('class SkPdf' + cls.fName + ' : public SkPdfObject {\n') |
+ nativeFileClass.write('class SkPdf' + cls.fName + ' : public SkPdfNativeObject {\n') |
else: |
nativeFileClass.write('class SkPdf' + cls.fName + ' : public SkPdf' + cls.fBase + ' {\n') |
@@ -375,9 +375,9 @@ |
if len(prop.fTypes.split()) == 1: |
t = prop.fTypes.strip() |
- nativeFileClass.write(' ' + knowTypes[t][0] + ' ' + prop.fCppName + '(SkNativeParsedPDF* doc);\n') |
- nativeFileClassCpp.write('' + knowTypes[t][0] + ' SkPdf' + cls.fName + '::' + prop.fCppName + '(SkNativeParsedPDF* doc) {\n') |
- nativeFileClassCpp.write(' SkPdfObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
+ nativeFileClass.write(' ' + knowTypes[t][0] + ' ' + prop.fCppName + '(SkPdfNativeDoc* doc);\n') |
+ nativeFileClassCpp.write('' + knowTypes[t][0] + ' SkPdf' + cls.fName + '::' + prop.fCppName + '(SkPdfNativeDoc* doc) {\n') |
+ nativeFileClassCpp.write(' SkPdfNativeObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
nativeFileClassCpp.write(' if (doc) {ret = doc->resolveReference(ret);}\n') |
nativeFileClassCpp.write(' if ((ret != NULL && ' + knowTypes[t][3] + ') || (doc == NULL && ret != NULL && ret->isReference())) return ' + knowTypes[t][1] + ';\n') |
@@ -396,19 +396,19 @@ |
for type in prop.fTypes.split(): |
t = type.strip() |
- nativeFileClass.write(' bool is' + prop.fCppName + 'A' + t.title() + '(SkNativeParsedPDF* doc);\n') |
+ nativeFileClass.write(' bool is' + prop.fCppName + 'A' + t.title() + '(SkPdfNativeDoc* doc);\n') |
- nativeFileClassCpp.write('bool SkPdf' + cls.fName + '::is' + prop.fCppName + 'A' + t.title() + '(SkNativeParsedPDF* doc) {\n') |
- nativeFileClassCpp.write(' SkPdfObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
+ nativeFileClassCpp.write('bool SkPdf' + cls.fName + '::is' + prop.fCppName + 'A' + t.title() + '(SkPdfNativeDoc* doc) {\n') |
+ nativeFileClassCpp.write(' SkPdfNativeObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
nativeFileClassCpp.write(' if (doc) {ret = doc->resolveReference(ret);}\n') |
nativeFileClassCpp.write(' return ret != NULL && ' + knowTypes[t][3] + ';\n') |
nativeFileClassCpp.write('}\n') |
nativeFileClassCpp.write('\n') |
- nativeFileClass.write(' ' + knowTypes[t][0] + ' get' + prop.fCppName + 'As' + t.title() + '(SkNativeParsedPDF* doc);\n') |
- nativeFileClassCpp.write('' + knowTypes[t][0] + ' SkPdf' + cls.fName + '::get' + prop.fCppName + 'As' + t.title() + '(SkNativeParsedPDF* doc) {\n') |
+ nativeFileClass.write(' ' + knowTypes[t][0] + ' get' + prop.fCppName + 'As' + t.title() + '(SkPdfNativeDoc* doc);\n') |
+ nativeFileClassCpp.write('' + knowTypes[t][0] + ' SkPdf' + cls.fName + '::get' + prop.fCppName + 'As' + t.title() + '(SkPdfNativeDoc* doc) {\n') |
- nativeFileClassCpp.write(' SkPdfObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
+ nativeFileClassCpp.write(' SkPdfNativeObject* ret = get(\"' + prop.fName + '\", \"' + prop.fAbr + '\");\n') |
nativeFileClassCpp.write(' if (doc) {ret = doc->resolveReference(ret);}\n') |
nativeFileClassCpp.write(' if ((ret != NULL && ' + knowTypes[t][3] + ') || (doc == NULL && ret != NULL && ret->isReference())) return ' + knowTypes[t][1] + ';\n') |
@@ -458,51 +458,51 @@ |
fileMapperNative.write('\n') |
fileMapperNative.write('#include "SkPdfHeaders_autogen.h"\n') |
- fileMapperNative.write('#include "SkNativeParsedPDF.h"\n') |
- fileMapperNative.write('#include "SkPdfObject.h"\n') |
+ fileMapperNative.write('#include "SkPdfNativeDoc.h"\n') |
+ fileMapperNative.write('#include "SkPdfNativeObject.h"\n') |
fileMapperNativeCpp.write('#include "SkPdfMapper_autogen.h"\n') |
fileMapperNativeCpp.write('#include "SkPdfUtils.h"\n') |
- fileMapperNativeCpp.write('#include "SkPdfObject.h"\n') |
+ fileMapperNativeCpp.write('#include "SkPdfNativeObject.h"\n') |
fileMapperNativeCpp.write('\n') |
fileMapperNative.write('class SkPdfMapper {\n') |
- fileMapperNative.write(' SkNativeParsedPDF* fParsedDoc;\n') |
+ fileMapperNative.write(' SkPdfNativeDoc* fParsedDoc;\n') |
fileMapperNative.write('public:\n') |
- fileMapperNative.write(' SkPdfMapper(SkNativeParsedPDF* doc) : fParsedDoc(doc) {}\n') |
+ fileMapperNative.write(' SkPdfMapper(SkPdfNativeDoc* doc) : fParsedDoc(doc) {}\n') |
fileMapperNative.write('\n') |
for name in self.fClassesNamesInOrder: |
cls = self.fClasses[name] |
- fileMapperNative.write(' SkPdfObjectType map' + name + '(const SkPdfObject* in) const;\n') |
+ fileMapperNative.write(' SkPdfNativeObjectType map' + name + '(const SkPdfNativeObject* in) const;\n') |
- fileMapperNativeCpp.write('SkPdfObjectType SkPdfMapper::map' + name + '(const SkPdfObject* in) const {\n') |
- fileMapperNativeCpp.write(' if (in == NULL || !is' + name + '(in)) return kNone_SkPdfObjectType;\n') |
+ fileMapperNativeCpp.write('SkPdfNativeObjectType SkPdfMapper::map' + name + '(const SkPdfNativeObject* in) const {\n') |
+ fileMapperNativeCpp.write(' if (in == NULL || !is' + name + '(in)) return kNone_SkPdfNativeObjectType;\n') |
fileMapperNativeCpp.write('\n') |
if len(cls.fEnumSubclasses) > 0: |
- fileMapperNativeCpp.write(' SkPdfObjectType ret;\n') |
+ fileMapperNativeCpp.write(' SkPdfNativeObjectType ret;\n') |
# stream must be last one |
hasStream = False |
for sub in cls.fEnumSubclasses: |
- fileMapperNativeCpp.write(' if (kNone_SkPdfObjectType != (ret = map' + enumToCls[sub].fName + '(in))) return ret;\n') |
+ fileMapperNativeCpp.write(' if (kNone_SkPdfNativeObjectType != (ret = map' + enumToCls[sub].fName + '(in))) return ret;\n') |
fileMapperNativeCpp.write('\n') |
- fileMapperNativeCpp.write(' return k' + name + '_SkPdfObjectType;\n') |
+ fileMapperNativeCpp.write(' return k' + name + '_SkPdfNativeObjectType;\n') |
fileMapperNativeCpp.write('}\n') |
fileMapperNativeCpp.write('\n') |
for name in self.fClassesNamesInOrder: |
cls = self.fClasses[name] |
- fileMapperNative.write(' bool is' + name + '(const SkPdfObject* nativeObj) const ;\n') |
- fileMapperNativeCpp.write('bool SkPdfMapper::is' + name + '(const SkPdfObject* nativeObj) const {\n') |
+ fileMapperNative.write(' bool is' + name + '(const SkPdfNativeObject* nativeObj) const ;\n') |
+ fileMapperNativeCpp.write('bool SkPdfMapper::is' + name + '(const SkPdfNativeObject* nativeObj) const {\n') |
if cls.fCheck != '': |
fileMapperNativeCpp.write(' return ' + cls.fCheck + ';\n') |
@@ -513,7 +513,7 @@ |
prop = field.fProp |
if prop.fHasMust: |
if emitedRet == False: |
- fileMapperNativeCpp.write(' const SkPdfObject* ret = NULL;\n') |
+ fileMapperNativeCpp.write(' const SkPdfNativeObject* ret = NULL;\n') |
emitedRet = True |
cntMust = cntMust + 1 |
fileMapperNativeCpp.write(' if (!nativeObj->isDictionary()) return false;\n') |
@@ -541,19 +541,19 @@ |
fileMapperNativeCpp.write('\n') |
# TODO(edisonn): dict should be a SkPdfDictionary ? |
- fileMapperNative.write(' bool SkPdf' + name + 'FromDictionary(const SkPdfObject* dict, const char* key, SkPdf' + name + '** data) const ;\n') |
- fileMapperNativeCpp.write('bool SkPdfMapper::SkPdf' + name + 'FromDictionary(const SkPdfObject* dict, const char* key, SkPdf' + name + '** data) const {\n') |
- fileMapperNativeCpp.write(' const SkPdfObject* value = dict->get(key);\n') |
+ fileMapperNative.write(' bool SkPdf' + name + 'FromDictionary(const SkPdfNativeObject* dict, const char* key, SkPdf' + name + '** data) const ;\n') |
+ fileMapperNativeCpp.write('bool SkPdfMapper::SkPdf' + name + 'FromDictionary(const SkPdfNativeObject* dict, const char* key, SkPdf' + name + '** data) const {\n') |
+ fileMapperNativeCpp.write(' const SkPdfNativeObject* value = dict->get(key);\n') |
fileMapperNativeCpp.write(' if (value == NULL) { return false; }\n') |
fileMapperNativeCpp.write(' if (data == NULL) { return true; }\n') |
- fileMapperNativeCpp.write(' if (kNone_SkPdfObjectType == map' + name + '(value)) return false;\n') |
+ fileMapperNativeCpp.write(' if (kNone_SkPdfNativeObjectType == map' + name + '(value)) return false;\n') |
fileMapperNativeCpp.write(' *data = (SkPdf' + name + '*)value;\n') |
fileMapperNativeCpp.write(' return true;\n'); |
fileMapperNativeCpp.write('}\n') |
fileMapperNativeCpp.write('\n') |
- fileMapperNative.write(' bool SkPdf' + name + 'FromDictionary(const SkPdfObject* dict, const char* key, const char* abr, SkPdf' + name + '** data) const ;\n') |
- fileMapperNativeCpp.write('bool SkPdfMapper::SkPdf' + name + 'FromDictionary(const SkPdfObject* dict, const char* key, const char* abr, SkPdf' + name + '** data) const {\n') |
+ fileMapperNative.write(' bool SkPdf' + name + 'FromDictionary(const SkPdfNativeObject* dict, const char* key, const char* abr, SkPdf' + name + '** data) const ;\n') |
+ fileMapperNativeCpp.write('bool SkPdfMapper::SkPdf' + name + 'FromDictionary(const SkPdfNativeObject* dict, const char* key, const char* abr, SkPdf' + name + '** data) const {\n') |
fileMapperNativeCpp.write(' if (SkPdf' + name + 'FromDictionary(dict, key, data)) return true;\n') |
fileMapperNativeCpp.write(' if (abr == NULL || *abr == \'\\0\') return false;\n') |
fileMapperNativeCpp.write(' return SkPdf' + name + 'FromDictionary(dict, abr, data);\n') |