#pragma once #include "EncodeDecodeHelper.h" #include "UniformHelper.h" #include "SliceHelper.h" #include "FusionHelper.h" #pragma region 全局变量 EncodeDecodeHelper _encodeDecode; #pragma endregion #pragma region 导出函数 /// /// 获取错误详情 /// /// /// /// /// extern "C" __declspec(dllexport) void GetErrorCodeAndMsg(ErrorCode& errorCode,char* errorMsg, const int errorMaxLen); /// /// 对图像数据进行解码 /// /// /// /// /// /// /// extern "C" __declspec(dllexport) bool ImDataDecode(const uint8_t * srcImgData, const int srcDataSize, uint8_t * dstImgData, const int dstDataSize, ImreadModes imReadMode); /// /// 对图像数据进行编码 /// /// /// /// /// /// /// /// extern "C" __declspec(dllexport) bool ImDataEncode(ImageInfo srcImgInfo,ImwriteExtension extension, ImwriteParam * imwriteParams,int paramCount, uint8_t * dstImgData, int& dstDataSize); /// /// 将直线扫查的数据转成均一立方体 /// /// /// /// extern "C" __declspec(dllexport) bool StraightScanDataToUniformCube(VolumeDataPreProcessorInfo volumeInfo, uint8_t * dstVolumeData); /// /// 获取立方体的六个表面 /// /// /// /// /// extern "C" __declspec(dllexport) bool GetSurfacePicsFromUniformCube(UniformVolumeDataInfo volumeDataInfo, int surfaceNum, SurfacePicInfo * surfaceInfos); /// /// 基于ITK的x方向融合 /// /// /// /// /// extern "C" __declspec(dllexport) bool ITKBasedFusionAlongX(UniformVolumeDataInfo* volumeDataInfos, int volumeDataCount, UniformVolumeDataInfo& fusedDataInfo); /// /// 对图像数据进行编码并保存至本地 /// /// /// /// /// /// /// extern "C" __declspec(dllexport) bool ImDataSave(ImageInfo srcImgInfo, ImwriteExtension extension, ImwriteParam * imwriteParams, int paramCount, const char* savePath); #pragma endregion