本文整理汇总了C++中ImageLoader::findExportedSymbol方法的典型用法代码示例。如果您正苦于以下问题:C++ ImageLoader::findExportedSymbol方法的具体用法?C++ ImageLoader::findExportedSymbol怎么用?C++ ImageLoader::findExportedSymbol使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ImageLoader
的用法示例。
在下文中一共展示了ImageLoader::findExportedSymbol方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: libImage
// private method that handles circular dependencies by only search any image once
const ImageLoader::Symbol* ImageLoader::findExportedSymbolInDependentImagesExcept(const char* name,
const ImageLoader** dsiStart, const ImageLoader**& dsiCur, const ImageLoader** dsiEnd, const ImageLoader** foundIn) const
{
const ImageLoader::Symbol* sym;
// search self
if ( notInImgageList(this, dsiStart, dsiCur) ) {
sym = this->findExportedSymbol(name, false, foundIn);
if ( sym != NULL )
return sym;
*dsiCur++ = this;
}
// search directly dependent libraries
for(unsigned int i=0; i < libraryCount(); ++i) {
ImageLoader* dependentImage = libImage(i);
if ( (dependentImage != NULL) && notInImgageList(dependentImage, dsiStart, dsiCur) ) {
const ImageLoader::Symbol* sym = dependentImage->findExportedSymbol(name, false, foundIn);
if ( sym != NULL )
return sym;
}
}
// search indirectly dependent libraries
for(unsigned int i=0; i < libraryCount(); ++i) {
ImageLoader* dependentImage = libImage(i);
if ( (dependentImage != NULL) && notInImgageList(dependentImage, dsiStart, dsiCur) ) {
*dsiCur++ = dependentImage;
const ImageLoader::Symbol* sym = dependentImage->findExportedSymbolInDependentImagesExcept(name, dsiStart, dsiCur, dsiEnd, foundIn);
if ( sym != NULL )
return sym;
}
}
return NULL;
}