dcmtk打印流程之loadImage分析
来源:互联网 发布:淘宝的运费险是什么意思 编辑:程序博客网 时间:2024/06/07 01:03
OFCondition DVInterface::loadImage(const char *imgName){
newState->createFromImage(*dataset)
}
DVPresentationState::createFromImage
DcmPresentationState::createFromImage{
if (result==EC_Normal) result = activationLayerList.createFromImage(dset,
graphicLayerList, overlayList, overlayActivation, curveActivation, layering);
/* create reference for this image */
if (EC_Normal == result) result = addImageReference(dset, aetitle, filesetID, filesetUID);
/* create displayed area selection item for this image */
if (EC_Normal == result) result = createDefaultDisplayedArea(dset);
/* create softcopy VOI LUT sequence item for this image if necessary */
if (EC_Normal == result) result = softcopyVOIList.createFromImage(dset,
referencedSeriesList, ofsopclassUID.c_str(), ofimageUID.c_str(), voiActivation);
}
addImageReference调用referencedSeriesList.addImageReference
OFCondition DcmPresentationState::addImageReference(
const char *studyUID,
const char *seriesUID,
const char *sopclassUID,
const char *instanceUID,
const char *frames,
const char *aetitle,
const char *filesetID,
const char *filesetUID)
{
if ((studyUID==NULL)||(seriesUID==NULL)||(sopclassUID==NULL)||(instanceUID==NULL)) return EC_IllegalCall;
OFString study;
studyInstanceUID.getOFString(study,0);
if (study != studyUID)
{
DCMPSTAT_WARN("cannot add reference to image with different Study Instance UID.");
return EC_IllegalCall;
}
return referencedSeriesList.addImageReference(seriesUID, sopclassUID, instanceUID, frames, aetitle, filesetID, filesetUID);
}
result = series->addImageReference(sopclassUID, instanceUID, frames);
if (EC_Normal == result) series->setRetrieveLocation(aetitle, filesetID, filesetUID);
return referencedImageList.(sopclassUID, instanceUID, frames);
OFCondition DVPSReferencedImage_PList::addImageReference(
const char *sopclassUID,
const char *instanceUID,
const char *frames)
{
OFCondition result = EC_Normal;
/* make sure that we don't create two references to the same image */
if (findImageReference(instanceUID)) result = EC_IllegalCall;
else
{
DVPSReferencedImage *image = new DVPSReferencedImage();
if (image)
{
image->setSOPClassUID(sopclassUID);
image->setSOPInstanceUID(instanceUID);
if (frames) image->setFrameNumbers(frames);
list_.push_back(image);
} else result = EC_MemoryExhausted;
}
return result;
}
- dcmtk打印流程之loadImage分析
- 打印流程分析笔记
- Win32之LoadImage
- LoadImage()
- LoadImage
- LoadImage
- LoadImage
- DCMTK
- DICOM:DCMTK工具包分析之dcmqrscp.exe、dcmqridx.exe、dcmqrti.exe
- DCMTK之MPPS服务实现
- DCMTK之MPPS服务实现
- Windows打印体系结构之本地打印任务处理流程①
- DCMTK扩展库之:libiconv编译
- 数据处理之数据流程分析
- uboot 分析之 启动流程
- uboot 分析之 启动流程
- uboot 分析之 启动流程
- ffmpeg之rtsp分析流程
- PC机怎么、如何打开、测试Html5页面图示详细说明
- 如何查看电脑CPU的线程数
- 欢迎使用CSDN-markdown编辑器
- 用ABBYY打开PDF文档的方法
- react native scrollview 滚动停止事件
- dcmtk打印流程之loadImage分析
- jquery写手风琴代码
- Logger使用方法
- PythonTip(26~30)题详解
- fastjson常用示例
- Windows路由设置一例
- SpringMVC深度探险 —— SpringMVC核心配置文件详解
- 图-生成树和生成森林算法C语言
- iOS10之后,需要在plist文件中添加的权限Allow Arbitrary Loads