/* * This file was generated by the SOM Compiler. * FileName: ludjvu.xih. * Generated using: * SOM Precompiler somipc: 2.29.1.17 * SOM Emitter emitxih: 2.47 */ /* * -- By default, for classes declared using IDL, * -- this emitter doesn't define redispatch/apply stubs. * -- Instead, it requests that the SOM kernel produce them. * -- To override this default, use the "notc" modifier. */ #ifndef SOM_LuDjvuDocument_xih #define SOM_LuDjvuDocument_xih #include #include #ifndef SOM_LuDjvuDocument_xh #include #endif /* * Set the scope of methods functions */ #ifndef SOM_Scope #define SOM_Scope static #endif #define LuDjvuDocument_MaxNoMethods 0 /* * -- Instance Data */ typedef struct { void* data; } LuDjvuDocumentData; /* * -- Getdata Macro */ /* * -- This emitter treats Data Tokens as Thunks by default. * -- Use the sc modifier "nothunks" to override this default. */ typedef LuDjvuDocumentData* (SOMLINK * somTD_LuDjvuDocument_DataThunk)(void*); #define LuDjvuDocumentGetData(somSelf) \ (((somTD_LuDjvuDocument_DataThunk)(LuDjvuDocumentCClassData.instanceDataToken))(somSelf)) /* * -- Instance Data Access Macros for use in Method Procedures */ #ifdef VARIABLE_MACROS #define _data (somThis->data) #endif /* * -- Primary Implementation File Support */ #if (defined(LuDjvuDocument_Class_Source) || defined(SOM_Module_ludjvu_Source)) /* * Trace/Debug macro */ #ifndef LuDjvuDocumentMethodDebug #define LuDjvuDocumentMethodDebug(c,m) SOMMethodDebug(c,m) #endif /* * -- Method Macros for use in Method Procedures */ #ifdef METHOD_MACROS #define _loadFile somSelf->loadFile #define _isScalable somSelf->isScalable #define _isRotable somSelf->isRotable #define _getPageCount somSelf->getPageCount #define _getPageSize somSelf->getPageSize #define _renderPageToPixbuf somSelf->renderPageToPixbuf #define _isAsynchRenderingSupported somSelf->isAsynchRenderingSupported #define _renderPageToPixbufAsynch somSelf->renderPageToPixbufAsynch #define _isHaveText somSelf->isHaveText #define _getSelectionRectangles somSelf->getSelectionRectangles #define _freeRectangles somSelf->freeRectangles #define _getText somSelf->getText #define _isHaveLinks somSelf->isHaveLinks #define _getLinkMapping somSelf->getLinkMapping #define _freeLinkMapping somSelf->freeLinkMapping #define _isSaveable somSelf->isSaveable #define _saveAs somSelf->saveAs #define _isPSExportable somSelf->isPSExportable #define _exportToPS somSelf->exportToPS #define _isHaveFontInfo somSelf->isHaveFontInfo #define _getFontInfo somSelf->getFontInfo #define _freeFontInfo somSelf->freeFontInfo #define _isHaveIndex somSelf->isHaveIndex #define _getIndex somSelf->getIndex #define _getDocumentInfo somSelf->getDocumentInfo #define _freeDocumentInfo somSelf->freeDocumentInfo #define _getThumbnailSize somSelf->getThumbnailSize #define _getThumbnail somSelf->getThumbnail #define _searchText somSelf->searchText #define _somDefaultInit somSelf->somDefaultInit #define _somDestruct somSelf->somDestruct #define _somDefaultCopyInit somSelf->somDefaultCopyInit #define _somDefaultAssign somSelf->somDefaultAssign #define _somDefaultConstCopyInit somSelf->somDefaultConstCopyInit #define _somDefaultVCopyInit somSelf->somDefaultVCopyInit #define _somDefaultConstVCopyInit somSelf->somDefaultConstVCopyInit #define _somDefaultConstAssign somSelf->somDefaultConstAssign #define _somDefaultVAssign somSelf->somDefaultVAssign #define _somDefaultConstVAssign somSelf->somDefaultConstVAssign #define _somInit somSelf->somInit #define _somFree somSelf->somFree #define _somUninit somSelf->somUninit #define _somGetClass somSelf->somGetClass #define _somGetClassName somSelf->somGetClassName #define _somGetSize somSelf->somGetSize #define _somIsA somSelf->somIsA #define _somIsInstanceOf somSelf->somIsInstanceOf #define _somRespondsTo somSelf->somRespondsTo #define _somDispatch somSelf->somDispatch #define _somClassDispatch somSelf->somClassDispatch #define _somCastObj somSelf->somCastObj #define _somResetObj somSelf->somResetObj #define _somDispatchV somSelf->somDispatchV #define _somDispatchL somSelf->somDispatchL #define _somDispatchA somSelf->somDispatchA #define _somDispatchD somSelf->somDispatchD #define _somPrintSelf somSelf->somPrintSelf #define _somDumpSelf somSelf->somDumpSelf #define _somDumpSelfInt somSelf->somDumpSelfInt #define _loadFile somSelf->loadFile #define _isScalable somSelf->isScalable #define _getPageCount somSelf->getPageCount #define _getPageSize somSelf->getPageSize #define _renderPageToPixbuf somSelf->renderPageToPixbuf #define _getThumbnailSize somSelf->getThumbnailSize #define _getThumbnail somSelf->getThumbnail #define _somDefaultInit somSelf->somDefaultInit #define _somDestruct somSelf->somDestruct #endif /* * -- The LuDjvuDocument ClassData Structure */ SOMEXTERN struct LuDjvuDocumentClassDataStructure SOMDLINK LuDjvuDocumentClassData = {(SOMClass *) NULL}; /* * -- The auxiliary LuDjvuDocument ClassData structure */ SOMEXTERN struct LuDjvuDocumentCClassDataStructure SOMDLINK LuDjvuDocumentCClassData = {(somMethodTabs) NULL}; /* * Overridden method: loadFile */ SOM_Scope boolean SOMLINK loadFile(LuDjvuDocument *somSelf, Environment *ev, string filename, string password, string* error); static char *somMN_LuDjvuDocumentloadFile = "LuDocument::loadFile"; static somId somId_LuDjvuDocumentloadFile = &somMN_LuDjvuDocumentloadFile; #ifdef somId_loadFile #undef somId_loadFile #else #define somId_loadFile somId_LuDjvuDocumentloadFile #endif typedef boolean SOMLINK somTP_xih_LuDjvuDocument_loadFile(LuDjvuDocument *somSelf, Environment *ev, string filename, string password, string* error); typedef somTP_xih_LuDjvuDocument_loadFile *somTD_xih_LuDjvuDocument_loadFile; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_loadFile_resolved; #define LuDjvuDocument_parent_LuDocument_loadFile(somSelf,ev,filename,password,error) \ ((( somTD_xih_LuDjvuDocument_loadFile ) \ LuDjvuDocument_parent_LuDocument_loadFile_resolved) \ (somSelf,ev,filename,password,error)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_loadFile #ifdef parent_loadFile #define SOMGD_pmc_parent_loadFile #undef parent_loadFile #else #define parent_loadFile LuDjvuDocument_parent_LuDocument_loadFile #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_loadFile #ifdef parent_LuDocument_loadFile #define SOMGD_pmc_parent_LuDocument_loadFile #undef parent_LuDocument_loadFile #else #define parent_LuDocument_loadFile LuDjvuDocument_parent_LuDocument_loadFile #endif #endif #define LuDjvuDocument_parents_loadFile(somSelf,ev,filename,password,error) (\ LuDjvuDocument_parent_LuDocument_loadFile(somSelf,ev,filename,password,error)) /* * Overridden method: isScalable */ SOM_Scope boolean SOMLINK isScalable(LuDjvuDocument *somSelf, Environment *ev); static char *somMN_LuDjvuDocumentisScalable = "LuDocument::isScalable"; static somId somId_LuDjvuDocumentisScalable = &somMN_LuDjvuDocumentisScalable; #ifdef somId_isScalable #undef somId_isScalable #else #define somId_isScalable somId_LuDjvuDocumentisScalable #endif typedef boolean SOMLINK somTP_xih_LuDjvuDocument_isScalable(LuDjvuDocument *somSelf, Environment *ev); typedef somTP_xih_LuDjvuDocument_isScalable *somTD_xih_LuDjvuDocument_isScalable; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_isScalable_resolved; #define LuDjvuDocument_parent_LuDocument_isScalable(somSelf,ev) \ ((( somTD_xih_LuDjvuDocument_isScalable ) \ LuDjvuDocument_parent_LuDocument_isScalable_resolved) \ (somSelf,ev)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_isScalable #ifdef parent_isScalable #define SOMGD_pmc_parent_isScalable #undef parent_isScalable #else #define parent_isScalable LuDjvuDocument_parent_LuDocument_isScalable #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_isScalable #ifdef parent_LuDocument_isScalable #define SOMGD_pmc_parent_LuDocument_isScalable #undef parent_LuDocument_isScalable #else #define parent_LuDocument_isScalable LuDjvuDocument_parent_LuDocument_isScalable #endif #endif #define LuDjvuDocument_parents_isScalable(somSelf,ev) (\ LuDjvuDocument_parent_LuDocument_isScalable(somSelf,ev)) /* * Overridden method: getPageCount */ SOM_Scope long SOMLINK getPageCount(LuDjvuDocument *somSelf, Environment *ev); static char *somMN_LuDjvuDocumentgetPageCount = "LuDocument::getPageCount"; static somId somId_LuDjvuDocumentgetPageCount = &somMN_LuDjvuDocumentgetPageCount; #ifdef somId_getPageCount #undef somId_getPageCount #else #define somId_getPageCount somId_LuDjvuDocumentgetPageCount #endif typedef long SOMLINK somTP_xih_LuDjvuDocument_getPageCount(LuDjvuDocument *somSelf, Environment *ev); typedef somTP_xih_LuDjvuDocument_getPageCount *somTD_xih_LuDjvuDocument_getPageCount; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_getPageCount_resolved; #define LuDjvuDocument_parent_LuDocument_getPageCount(somSelf,ev) \ ((( somTD_xih_LuDjvuDocument_getPageCount ) \ LuDjvuDocument_parent_LuDocument_getPageCount_resolved) \ (somSelf,ev)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_getPageCount #ifdef parent_getPageCount #define SOMGD_pmc_parent_getPageCount #undef parent_getPageCount #else #define parent_getPageCount LuDjvuDocument_parent_LuDocument_getPageCount #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_getPageCount #ifdef parent_LuDocument_getPageCount #define SOMGD_pmc_parent_LuDocument_getPageCount #undef parent_LuDocument_getPageCount #else #define parent_LuDocument_getPageCount LuDjvuDocument_parent_LuDocument_getPageCount #endif #endif #define LuDjvuDocument_parents_getPageCount(somSelf,ev) (\ LuDjvuDocument_parent_LuDocument_getPageCount(somSelf,ev)) /* * Overridden method: getPageSize */ SOM_Scope void SOMLINK getPageSize(LuDjvuDocument *somSelf, Environment *ev, long pagenum, double* width, double* height); static char *somMN_LuDjvuDocumentgetPageSize = "LuDocument::getPageSize"; static somId somId_LuDjvuDocumentgetPageSize = &somMN_LuDjvuDocumentgetPageSize; #ifdef somId_getPageSize #undef somId_getPageSize #else #define somId_getPageSize somId_LuDjvuDocumentgetPageSize #endif typedef void SOMLINK somTP_xih_LuDjvuDocument_getPageSize(LuDjvuDocument *somSelf, Environment *ev, long pagenum, double* width, double* height); typedef somTP_xih_LuDjvuDocument_getPageSize *somTD_xih_LuDjvuDocument_getPageSize; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_getPageSize_resolved; #define LuDjvuDocument_parent_LuDocument_getPageSize(somSelf,ev,pagenum,width,height) \ ((( somTD_xih_LuDjvuDocument_getPageSize ) \ LuDjvuDocument_parent_LuDocument_getPageSize_resolved) \ (somSelf,ev,pagenum,width,height)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_getPageSize #ifdef parent_getPageSize #define SOMGD_pmc_parent_getPageSize #undef parent_getPageSize #else #define parent_getPageSize LuDjvuDocument_parent_LuDocument_getPageSize #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_getPageSize #ifdef parent_LuDocument_getPageSize #define SOMGD_pmc_parent_LuDocument_getPageSize #undef parent_LuDocument_getPageSize #else #define parent_LuDocument_getPageSize LuDjvuDocument_parent_LuDocument_getPageSize #endif #endif #define LuDjvuDocument_parents_getPageSize(somSelf,ev,pagenum,width,height) (\ LuDjvuDocument_parent_LuDocument_getPageSize(somSelf,ev,pagenum,width,height)) /* * Overridden method: renderPageToPixbuf */ SOM_Scope void SOMLINK renderPageToPixbuf(LuDjvuDocument *somSelf, Environment *ev, long pagenum, long src_x, long src_y, long src_width, long src_height, double scale, long rotation, LuPixbuf* pixbuf); static char *somMN_LuDjvuDocumentrenderPageToPixbuf = "LuDocument::renderPageToPixbuf"; static somId somId_LuDjvuDocumentrenderPageToPixbuf = &somMN_LuDjvuDocumentrenderPageToPixbuf; #ifdef somId_renderPageToPixbuf #undef somId_renderPageToPixbuf #else #define somId_renderPageToPixbuf somId_LuDjvuDocumentrenderPageToPixbuf #endif typedef void SOMLINK somTP_xih_LuDjvuDocument_renderPageToPixbuf(LuDjvuDocument *somSelf, Environment *ev, long pagenum, long src_x, long src_y, long src_width, long src_height, double scale, long rotation, LuPixbuf* pixbuf); typedef somTP_xih_LuDjvuDocument_renderPageToPixbuf *somTD_xih_LuDjvuDocument_renderPageToPixbuf; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_renderPageToPixbuf_resolved; #define LuDjvuDocument_parent_LuDocument_renderPageToPixbuf(somSelf,ev,pagenum,src_x,src_y,src_width,src_height,scale,rotation,pixbuf) \ ((( somTD_xih_LuDjvuDocument_renderPageToPixbuf ) \ LuDjvuDocument_parent_LuDocument_renderPageToPixbuf_resolved) \ (somSelf,ev,pagenum,src_x,src_y,src_width,src_height,scale,rotation,pixbuf)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_renderPageToPixbuf #ifdef parent_renderPageToPixbuf #define SOMGD_pmc_parent_renderPageToPixbuf #undef parent_renderPageToPixbuf #else #define parent_renderPageToPixbuf LuDjvuDocument_parent_LuDocument_renderPageToPixbuf #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_renderPageToPixbuf #ifdef parent_LuDocument_renderPageToPixbuf #define SOMGD_pmc_parent_LuDocument_renderPageToPixbuf #undef parent_LuDocument_renderPageToPixbuf #else #define parent_LuDocument_renderPageToPixbuf LuDjvuDocument_parent_LuDocument_renderPageToPixbuf #endif #endif #define LuDjvuDocument_parents_renderPageToPixbuf(somSelf,ev,pagenum,src_x,src_y,src_width,src_height,scale,rotation,pixbuf) (\ LuDjvuDocument_parent_LuDocument_renderPageToPixbuf(somSelf,ev,pagenum,src_x,src_y,src_width,src_height,scale,rotation,pixbuf)) /* * Overridden method: getThumbnailSize */ SOM_Scope boolean SOMLINK getThumbnailSize(LuDjvuDocument *somSelf, Environment *ev, long pagenum, short suggested_width, short* width, short* height); static char *somMN_LuDjvuDocumentgetThumbnailSize = "LuDocument::getThumbnailSize"; static somId somId_LuDjvuDocumentgetThumbnailSize = &somMN_LuDjvuDocumentgetThumbnailSize; #ifdef somId_getThumbnailSize #undef somId_getThumbnailSize #else #define somId_getThumbnailSize somId_LuDjvuDocumentgetThumbnailSize #endif typedef boolean SOMLINK somTP_xih_LuDjvuDocument_getThumbnailSize(LuDjvuDocument *somSelf, Environment *ev, long pagenum, short suggested_width, short* width, short* height); typedef somTP_xih_LuDjvuDocument_getThumbnailSize *somTD_xih_LuDjvuDocument_getThumbnailSize; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_getThumbnailSize_resolved; #define LuDjvuDocument_parent_LuDocument_getThumbnailSize(somSelf,ev,pagenum,suggested_width,width,height) \ ((( somTD_xih_LuDjvuDocument_getThumbnailSize ) \ LuDjvuDocument_parent_LuDocument_getThumbnailSize_resolved) \ (somSelf,ev,pagenum,suggested_width,width,height)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_getThumbnailSize #ifdef parent_getThumbnailSize #define SOMGD_pmc_parent_getThumbnailSize #undef parent_getThumbnailSize #else #define parent_getThumbnailSize LuDjvuDocument_parent_LuDocument_getThumbnailSize #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_getThumbnailSize #ifdef parent_LuDocument_getThumbnailSize #define SOMGD_pmc_parent_LuDocument_getThumbnailSize #undef parent_LuDocument_getThumbnailSize #else #define parent_LuDocument_getThumbnailSize LuDjvuDocument_parent_LuDocument_getThumbnailSize #endif #endif #define LuDjvuDocument_parents_getThumbnailSize(somSelf,ev,pagenum,suggested_width,width,height) (\ LuDjvuDocument_parent_LuDocument_getThumbnailSize(somSelf,ev,pagenum,suggested_width,width,height)) /* * Overridden method: getThumbnail */ SOM_Scope LuPixbuf* SOMLINK getThumbnail(LuDjvuDocument *somSelf, Environment *ev, long pagenum, short suggested_width); static char *somMN_LuDjvuDocumentgetThumbnail = "LuDocument::getThumbnail"; static somId somId_LuDjvuDocumentgetThumbnail = &somMN_LuDjvuDocumentgetThumbnail; #ifdef somId_getThumbnail #undef somId_getThumbnail #else #define somId_getThumbnail somId_LuDjvuDocumentgetThumbnail #endif typedef LuPixbuf* SOMLINK somTP_xih_LuDjvuDocument_getThumbnail(LuDjvuDocument *somSelf, Environment *ev, long pagenum, short suggested_width); typedef somTP_xih_LuDjvuDocument_getThumbnail *somTD_xih_LuDjvuDocument_getThumbnail; /* define the parent method call macro */ static somMethodProc* LuDjvuDocument_parent_LuDocument_getThumbnail_resolved; #define LuDjvuDocument_parent_LuDocument_getThumbnail(somSelf,ev,pagenum,suggested_width) \ ((( somTD_xih_LuDjvuDocument_getThumbnail ) \ LuDjvuDocument_parent_LuDocument_getThumbnail_resolved) \ (somSelf,ev,pagenum,suggested_width)) /* define a variety of (possibly ambiguous) short forms */ #ifndef SOMGD_pmc_parent_getThumbnail #ifdef parent_getThumbnail #define SOMGD_pmc_parent_getThumbnail #undef parent_getThumbnail #else #define parent_getThumbnail LuDjvuDocument_parent_LuDocument_getThumbnail #endif #endif #ifndef SOMGD_pmc_parent_LuDocument_getThumbnail #ifdef parent_LuDocument_getThumbnail #define SOMGD_pmc_parent_LuDocument_getThumbnail #undef parent_LuDocument_getThumbnail #else #define parent_LuDocument_getThumbnail LuDjvuDocument_parent_LuDocument_getThumbnail #endif #endif #define LuDjvuDocument_parents_getThumbnail(somSelf,ev,pagenum,suggested_width) (\ LuDjvuDocument_parent_LuDocument_getThumbnail(somSelf,ev,pagenum,suggested_width)) /* * Overridden method: somDefaultInit */ SOM_Scope void SOMLINK somDefaultInit(LuDjvuDocument *somSelf, som3InitCtrl* ctrl); static char *somMN_LuDjvuDocumentsomDefaultInit = "SOMObject::somDefaultInit"; static somId somId_LuDjvuDocumentsomDefaultInit = &somMN_LuDjvuDocumentsomDefaultInit; #ifdef somId_somDefaultInit #undef somId_somDefaultInit #else #define somId_somDefaultInit somId_LuDjvuDocumentsomDefaultInit #endif /* * Overridden method: somDestruct */ SOM_Scope void SOMLINK somDestruct(LuDjvuDocument *somSelf, octet doFree, som3DestructCtrl* ctrl); static char *somMN_LuDjvuDocumentsomDestruct = "SOMObject::somDestruct"; static somId somId_LuDjvuDocumentsomDestruct = &somMN_LuDjvuDocumentsomDestruct; #ifdef somId_somDestruct #undef somId_somDestruct #else #define somId_somDestruct somId_LuDjvuDocumentsomDestruct #endif /* * -- Routines and Structures to create the class object */ /* * Declare the Override Methods table. */ static somOverrideMethod_t LuDjvuDocumentOM[] = { { &somId_LuDjvuDocumentloadFile, (somMethodProc *) loadFile }, { &somId_LuDjvuDocumentisScalable, (somMethodProc *) isScalable }, { &somId_LuDjvuDocumentgetPageCount, (somMethodProc *) getPageCount }, { &somId_LuDjvuDocumentgetPageSize, (somMethodProc *) getPageSize }, { &somId_LuDjvuDocumentrenderPageToPixbuf, (somMethodProc *) renderPageToPixbuf }, { &somId_LuDjvuDocumentgetThumbnailSize, (somMethodProc *) getThumbnailSize }, { &somId_LuDjvuDocumentgetThumbnail, (somMethodProc *) getThumbnail }, { &somId_LuDjvuDocumentsomDefaultInit, (somMethodProc *) somDefaultInit }, { &somId_LuDjvuDocumentsomDestruct, (somMethodProc *) somDestruct }, }; /* * class Ids */ static char * somCN_LuDjvuDocument = "LuDjvuDocument"; static char * somPCN_LuDjvuDocument_LuDocument = "LuDocument"; static somId somPCLuDjvuDocument[] = { &somPCN_LuDjvuDocument_LuDocument, }; static somStaticClassInfo LuDjvuDocumentSCI = { 4, 0, 9, 0, 0, 0, /* layout version 4 */ LuDjvuDocument_MajorVersion, LuDjvuDocument_MinorVersion, sizeof(LuDjvuDocumentData), LuDjvuDocument_MaxNoMethods, 1, &somCN_LuDjvuDocument, (somId) NULL, 1, somPCLuDjvuDocument, (somClassDataStructure *) &LuDjvuDocumentClassData, (somCClassDataStructure *) &LuDjvuDocumentCClassData, (somStaticMethod_t *) NULL, LuDjvuDocumentOM, (char *) NULL, (somNonInternalData_t *) NULL, (somProcMethods_t *) NULL, (somVarargsFuncs_t *) NULL, (somTP_somClassInitFunc *) NULL, 4, /* type code alignment */ -1, /* use parents as DirectInitClasses */ 0, /* no explicit DirectInitClasses */ 0, /* number of general methods */ (somMethods_t *) NULL, 0, /* no public data offset */ 0, /* no sci development level check */ 0, /* number of SelectInheritedMethods */ 0, /* no SelectInheritedMethods */ 0, /* number of classdata entries */ 0, /* no list provided currently */ 0, /* number of migrated methods */ 0, /* no migrated method implementations */ 0, /* number of initializers */ 0, /* no initializers */ 0, /* not DTS a class */ 0, /* no dynamically computed info */ }; /* * Class Creation and Initialization */ SOMClass * SOMLINK LuDjvuDocumentNewClass (integer4 somtmajorVersion, integer4 somtminorVersion) { SOMClass *result; if (_LuDjvuDocument && _LuDjvuDocument->somCheckVersion(somtmajorVersion, somtminorVersion)) return ((SOMClass*)((void*)_LuDjvuDocument)); LuDocumentNewClass(LuDocument_MajorVersion,LuDocument_MinorVersion); /* static reference */ result = (SOMClass*)((void*)somBuildClass(0xFFFFFFFF,&LuDjvuDocumentSCI, somtmajorVersion, somtminorVersion)); LuDjvuDocument_parent_LuDocument_getThumbnail_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.getThumbnail); LuDjvuDocument_parent_LuDocument_getThumbnailSize_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.getThumbnailSize); LuDjvuDocument_parent_LuDocument_renderPageToPixbuf_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.renderPageToPixbuf); LuDjvuDocument_parent_LuDocument_getPageSize_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.getPageSize); LuDjvuDocument_parent_LuDocument_getPageCount_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.getPageCount); LuDjvuDocument_parent_LuDocument_isScalable_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.isScalable); LuDjvuDocument_parent_LuDocument_loadFile_resolved = somParentNumResolve(LuDjvuDocumentCClassData.parentMtab, 1, LuDocumentClassData.loadFile); return result; } /* * Functions for attributes. */ /* * Macros for initializer/destructor entry/exit */ #define LuDjvuDocument_BeginInitializer_somDefaultInit \ if (!ctrl) { \ ctrl = &globalCtrl; \ memcpy(ctrl,&(((somParentMtabStructPtr)LuDjvuDocumentCClassData.parentMtab)->initCtrl),sizeof(somInitCtrl)); \ } \ myMask = ctrl->mask; \ somThis = (LuDjvuDocumentData*)((char*)somSelf + ctrl->info->dataOffset);\ ctrl->info = (somInitInfo*)(ctrl->infoSize + (char*)(ctrl->info)); \ ctrl->mask += 1; #define LuDjvuDocument_BeginDestructor \ if (!ctrl) { \ ctrl = &globalCtrl; \ memcpy(ctrl,&(((somParentMtabStructPtr)LuDjvuDocumentCClassData.parentMtab)->destructCtrl),sizeof(somDestructCtrl)); \ } \ somThis = (LuDjvuDocumentData*)((char*)somSelf + ctrl->info->dataOffset);\ myMask = ctrl->mask; #define LuDjvuDocument_EndDestructor \ ctrl->info = (somDestructInfo*)(ctrl->infoSize + (char*)(ctrl->info)); \ ctrl->mask += 1; \ LuDjvuDocument_DeInit_LuDocument_somDestruct(somSelf,0,ctrl); \ if (doFree) _LuDjvuDocument->somDeallocate((string)somSelf); /* * Ancestor_Init/DeInit Macros */ /* ...for LuDocument */ #define LuDjvuDocument_Init_LuDocument_somDefaultInit(somSelf, ctrl) \ if (myMask[0]&1) \ ((somTD_SOMObject_somDefaultInit) \ ctrl->info->defaultInit) \ ((SOMObject *)((void *) somSelf), ctrl) #define LuDjvuDocument_DeInit_LuDocument_somDestruct(somSelf, doFree, ctrl) \ if (myMask[0]&1) \ ((somTD_SOMObject_somDestruct) \ ctrl->info->defaultDestruct) \ ((SOMObject *)((void *) somSelf), 0, ctrl) #endif /* Primary Implementation Support */ #endif /* SOM_LuDjvuDocument_xih */