コード例 #1
0
ファイル: ImageIo.cpp プロジェクト: todayman/Cinder
ImageTargetRef ImageIoRegistrar::Inst::createTarget( DataTargetRef dataTarget, ImageSourceRef imageSource, ImageTarget::Options options, std::string extension )
{
	std::transform( extension.begin(), extension.end(), extension.begin(), static_cast<int(*)(int)>(tolower) );	
	
	map<string, multimap<int32_t,pair<ImageIoRegistrar::TargetCreationFunc,string> > >::iterator sIt = mTargets.find( extension );
	if( sIt != mTargets.end() )	{
		ImageIoRegistrar::TargetCreationFunc creationFunc = sIt->second.begin()->second.first;
		string extensionData = sIt->second.begin()->second.second;
		return (*creationFunc)( dataTarget, imageSource, options, extensionData );
	}
	else
		return ImageTargetRef(); // couldn't find a handler for this extension	
}
コード例 #2
0
ImageTargetRef ImageTargetFileWic::createRef( DataTargetRef dataTarget, ImageSourceRef imageSource, const string &extensionData )
{
	return ImageTargetRef( new ImageTargetFileWic( dataTarget, imageSource, extensionData ) );
}
コード例 #3
0
ファイル: ImageFileTinyExr.cpp プロジェクト: cinder/cinder
ImageTargetRef ImageTargetFileTinyExr::create( DataTargetRef dataTarget, ImageSourceRef imageSource, ImageTarget::Options options, const std::string &extensionData )
{
	return ImageTargetRef( new ImageTargetFileTinyExr( dataTarget, imageSource, options, extensionData ) );
}
コード例 #4
0
ImageTargetRef ImageTargetFileQuartz::createRef( DataTargetRef dataTarget, ImageSourceRef imageSource, ImageTarget::Options options, const string &extensionData )
{
	return ImageTargetRef( new ImageTargetFileQuartz( dataTarget, imageSource, options, extensionData ) );
}