├── .github ├── code_analysis.py ├── codecov.yml └── workflows │ ├── analysis.yml │ ├── build.yml │ └── test.yml ├── CemrgApp ├── Applications │ ├── AppList.cmake │ └── MainApp │ │ ├── CMakeLists.txt │ │ ├── CemrgApp.cpp │ │ ├── CemrgApp.ini │ │ ├── icons │ │ ├── CemrgApp.rc │ │ ├── icon.icns │ │ └── icon.ico │ │ ├── splashscreen.png │ │ ├── splashscreen.qrc │ │ ├── startCemrgApp.bat.in │ │ ├── target_libraries.cmake │ │ └── version.txt ├── CMake │ ├── CPackSetup.cmake │ ├── CTestCustom.cmake.in │ ├── FindVMTK.cmake │ ├── MacroEmptyExternalProject.cmake │ ├── PackageDepends │ │ └── MITK_VMTK_Config.cmake │ └── StartVS.bat.in ├── CMakeExternals │ ├── ExternalProjectList.cmake │ ├── MIRTK.cmake │ └── VMTK.cmake ├── Modules │ ├── CemrgAppModule │ │ ├── CMakeLists.txt │ │ ├── cmdapps │ │ │ ├── CMakeLists.txt │ │ │ ├── CemrgAppCmdTemplate.cpp │ │ │ ├── CemrgClippingTool.cpp │ │ │ ├── CemrgFixShellApp.cpp │ │ │ ├── CemrgIM2INR.cpp │ │ │ ├── CemrgMorphAnalysis.cpp │ │ │ ├── CemrgProjectLgeToVtkMesh.cpp │ │ │ ├── CemrgProjectionOptions.cpp │ │ │ ├── CemrgResampleReorient.cpp │ │ │ ├── CemrgSimpleRegistration.cpp │ │ │ └── CemrgVentricleSegmRelabel.cpp │ │ ├── files.cmake │ │ ├── include │ │ │ ├── CemrgAhaUtils.h │ │ │ ├── CemrgAtriaClipper.h │ │ │ ├── CemrgCommandLine.h │ │ │ ├── CemrgCommonUtils.h │ │ │ ├── CemrgMeasure.h │ │ │ ├── CemrgPower.h │ │ │ ├── CemrgScar3D.h │ │ │ ├── CemrgScarAdvanced.h │ │ │ └── CemrgStrains.h │ │ ├── src │ │ │ ├── CemrgAhaUtils.cpp │ │ │ ├── CemrgAtriaClipper.cpp │ │ │ ├── CemrgCommandLine.cpp │ │ │ ├── CemrgCommonUtils.cpp │ │ │ ├── CemrgMeasure.cpp │ │ │ ├── CemrgPower.cpp │ │ │ ├── CemrgScar3D.cpp │ │ │ ├── CemrgScarAdvanced.cpp │ │ │ ├── CemrgStrains.cpp │ │ │ └── CemrgTests.cpp │ │ └── test │ │ │ ├── CMakeLists.txt │ │ │ ├── CemrgCommandLineTest.cpp │ │ │ ├── CemrgCommandLineTest.hpp │ │ │ ├── CemrgMeasureTest.cpp │ │ │ ├── CemrgMeasureTest.hpp │ │ │ ├── CemrgStrainsTest.cpp │ │ │ ├── CemrgStrainsTest.hpp │ │ │ ├── CemrgTestCommon.cpp │ │ │ ├── CemrgTestCommon.hpp │ │ │ ├── Data │ │ │ ├── CommandLine │ │ │ │ ├── applying_expected-0.vtk │ │ │ │ ├── applying_expected-1.vtk │ │ │ │ ├── imgTimes.lst │ │ │ │ ├── reg_expected.dof │ │ │ │ ├── sphere.inr │ │ │ │ ├── sphere.par │ │ │ │ ├── sphere_initial.nii │ │ │ │ ├── sphere_initial.par │ │ │ │ ├── sphere_shifted.nii │ │ │ │ ├── surf_expected_1.vtk │ │ │ │ ├── surf_expected_2.vtk │ │ │ │ ├── surf_expected_3.vtk │ │ │ │ ├── tracking_expected.dof │ │ │ │ ├── transformation_expected.nii │ │ │ │ └── translation_expected.dof │ │ │ ├── Strain │ │ │ │ ├── PointSet.mps │ │ │ │ ├── transformed-0.vtk │ │ │ │ └── transformed-1.vtk │ │ │ └── Surface │ │ │ │ ├── Book.stl │ │ │ │ ├── ClaronTool.stl │ │ │ │ ├── EMTool.stl │ │ │ │ ├── ball.stl │ │ │ │ └── binary.stl │ │ │ ├── files.cmake │ │ │ ├── test.cpp │ │ │ └── test.hpp │ └── ModuleList.cmake └── Plugins │ ├── PluginList.cmake │ ├── kcl.cemrgapp.easi │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ └── icon.xpm │ └── src │ │ └── internal │ │ ├── EASIView.cpp │ │ ├── EASIView.h │ │ ├── EASIViewControls.ui │ │ ├── EASIViewUIMeshing.ui │ │ ├── kcl_cemrgapp_easi_Activator.cpp │ │ └── kcl_cemrgapp_easi_Activator.h │ ├── kcl.cemrgapp.mainapp │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ ├── CemrgApp.qrc │ │ ├── CemrgAppLogo.png │ │ ├── icon.xpm │ │ └── icon_research.xpm │ └── src │ │ └── internal │ │ ├── QmitkCemrgAppCartoExport.ui │ │ ├── QmitkCemrgAppCommonTools.cpp │ │ ├── QmitkCemrgAppCommonTools.h │ │ ├── QmitkCemrgAppCommonToolsControls.ui │ │ ├── QmitkCemrgApplication.cpp │ │ ├── QmitkCemrgApplication.h │ │ ├── QmitkCemrgWorkbenchAdvisor.cpp │ │ ├── QmitkCemrgWorkbenchAdvisor.h │ │ ├── kcl_cemrgapp_mainapp_Activator.cpp │ │ ├── kcl_cemrgapp_mainapp_Activator.h │ │ └── perspectives │ │ ├── QmitkCemrgEasiPerspective.cpp │ │ ├── QmitkCemrgEasiPerspective.h │ │ ├── QmitkCemrgHCPerspective.cpp │ │ ├── QmitkCemrgHCPerspective.h │ │ ├── QmitkCemrgJBPerspective.cpp │ │ ├── QmitkCemrgJBPerspective.h │ │ ├── QmitkCemrgPowertransPerspective.cpp │ │ ├── QmitkCemrgPowertransPerspective.h │ │ ├── QmitkCemrgRRPerspective.cpp │ │ ├── QmitkCemrgRRPerspective.h │ │ ├── QmitkCemrgWathcaPerspective.cpp │ │ └── QmitkCemrgWathcaPerspective.h │ ├── kcl.cemrgapp.mmcwplugin │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ └── icon.xpm │ └── src │ │ └── internal │ │ ├── MmcwView.cpp │ │ ├── MmcwView.h │ │ ├── MmcwViewControls.ui │ │ ├── MmcwViewPlot.cpp │ │ ├── MmcwViewPlot.h │ │ ├── MmcwViewPlotControls.ui │ │ ├── MmcwViewUIApplying.ui │ │ ├── MmcwViewUIMeshing.ui │ │ ├── MmcwViewUITracking.ui │ │ ├── kcl_cemrgapp_mmcwplugin_Activator.cpp │ │ └── kcl_cemrgapp_mmcwplugin_Activator.h │ ├── kcl.cemrgapp.mmeasurement │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ └── icon.xpm │ └── src │ │ └── internal │ │ ├── MmeasurementView.cpp │ │ ├── MmeasurementView.h │ │ ├── MmeasurementViewControls.ui │ │ ├── MmeasurementViewUIApplying.ui │ │ ├── MmeasurementViewUITracking.ui │ │ ├── kcl_cemrgapp_mmeasurement_Activator.cpp │ │ └── kcl_cemrgapp_mmeasurement_Activator.h │ ├── kcl.cemrgapp.powertrans │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ └── icon.xpm │ └── src │ │ └── internal │ │ ├── kcl_cemrgapp_powertrans_Activator.cpp │ │ ├── kcl_cemrgapp_powertrans_Activator.h │ │ ├── powertransView.cpp │ │ ├── powertransView.h │ │ ├── powertransViewControls.ui │ │ ├── powertransViewPlot.cpp │ │ ├── powertransViewPlot.h │ │ ├── powertransViewPlotControls.ui │ │ ├── powertransViewUIAhaInput.ui │ │ └── powertransViewUIRibSpacing.ui │ ├── kcl.cemrgapp.scar │ ├── CMakeLists.txt │ ├── documentation │ │ ├── UserManual │ │ │ ├── Manual.dox │ │ │ └── icon.xpm │ │ └── doxygen │ │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ │ └── icon.xpm │ └── src │ │ └── internal │ │ ├── AtrialScarClipperView.cpp │ │ ├── AtrialScarClipperView.h │ │ ├── AtrialScarClipperViewControls.ui │ │ ├── AtrialScarClipperViewLabels.ui │ │ ├── AtrialScarView.cpp │ │ ├── AtrialScarView.h │ │ ├── AtrialScarViewControls.ui │ │ ├── AtrialScarViewUIMeshing.ui │ │ ├── AtrialScarViewUISQuant.ui │ │ ├── AtrialScarViewUIScar.ui │ │ ├── AtrialScarViewUIcemrgnet.ui │ │ ├── ScarCalculationsView.cpp │ │ ├── ScarCalculationsView.h │ │ ├── ScarCalculationsViewControls.ui │ │ ├── ScarCalculationsViewUICorridor.ui │ │ ├── YZSegView.cpp │ │ ├── YZSegView.h │ │ ├── YZSegViewControls.ui │ │ ├── kcl_cemrgapp_scar_Activator.cpp │ │ └── kcl_cemrgapp_scar_Activator.h │ └── kcl.cemrgapp.wathca │ ├── CMakeLists.txt │ ├── documentation │ ├── UserManual │ │ ├── Manual.dox │ │ └── icon.xpm │ └── doxygen │ │ └── modules.dox │ ├── files.cmake │ ├── manifest_headers.cmake │ ├── plugin.xml │ ├── resources │ └── icon.xpm │ └── src │ └── internal │ ├── WallThicknessCalculationsClipperView.cpp │ ├── WallThicknessCalculationsClipperView.h │ ├── WallThicknessCalculationsClipperViewControls.ui │ ├── WallThicknessCalculationsClipperViewLabels.ui │ ├── WallThicknessCalculationsView.cpp │ ├── WallThicknessCalculationsView.h │ ├── WallThicknessCalculationsViewControls.ui │ ├── WallThicknessCalculationsViewUIMeshing.ui │ ├── WallThicknessCalculationsViewUIThickness.ui │ ├── kcl_cemrgapp_wathca_Activator.cpp │ └── kcl_cemrgapp_wathca_Activator.h ├── LICENSE ├── MITK_LICENSE ├── README.md └── TestScripts └── BuildProcess.sh /.github/codecov.yml: -------------------------------------------------------------------------------- 1 | coverage: 2 | ignore: 3 | - "CemrgApp/Modules/CemrgAppModule/test" 4 | -------------------------------------------------------------------------------- /.github/workflows/analysis.yml: -------------------------------------------------------------------------------- 1 | name: CemrgApp Code Analysis 2 | 3 | on: [pull_request] 4 | 5 | jobs: 6 | Code-Analysis: 7 | runs-on: ubuntu-20.04 8 | steps: 9 | - name: Install missing packages 10 | run: | 11 | sudo apt update 12 | sudo apt install cppcheck -y 13 | pip3 install --upgrade setuptools 14 | pip3 install pygithub 15 | 16 | - name: Install Qt 17 | run: | 18 | sudo pip3 install aqtinstall 19 | sudo aqt install --outputdir /Qt 5.12.10 linux desktop -m qtcharts qtnetworkauth qtpurchasing qtdatavis3d qtscript qtvirtualkeyboard qtwebengine qtwebglplugin 20 | 21 | - name: Clone CemrgApp 22 | uses: actions/checkout@v2 23 | 24 | - name: Code Analysis 25 | env: 26 | COMMENT_TITLE: Code Analysis Results 27 | PR_NUMBER: ${{ github.event.pull_request.number }} 28 | REPORT_PR_CHANGES_ONLY: false 29 | GITHUB_TOKEN: ${{ github.token }} 30 | run: | 31 | cppcheck --enable=warning,style,performance,portability --std=c++14 --language=c++ --force --quiet ${{ github.workspace }}/CemrgApp -I /Qt/5.12.10/gcc_64/include --output-file=analysis.txt 32 | python3 ${{ github.workspace }}/.github/code_analysis.py -cc analysis.txt 33 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: CemrgApp Tests and Code Coverage 2 | 3 | on: [push, pull_request] 4 | 5 | jobs: 6 | Test-n-Coverage: 7 | runs-on: ubuntu-18.04 8 | steps: 9 | - name: Download precompiled Build folder 10 | run: | 11 | wget -q -O Build.zip https://emckclac-my.sharepoint.com/:u:/g/personal/k2143219_kcl_ac_uk/Ef5Vu6za325GoIIStbIcmg4BgWlVBGtUx6jp1GrxNLYrFw?download=1 12 | 7z x Build.zip 13 | rm Build.zip 14 | sudo mv Build / 15 | 16 | - name: Download external libraries 17 | run: | 18 | wget -q -O Externals.zip https://emckclac-my.sharepoint.com/:u:/g/personal/k2143219_kcl_ac_uk/EX8zGabE-ctDoBnde6ntHR0Bx_1wYis_ql26aAzMoedMzg?download=1 19 | 7z x Externals.zip 20 | rm Externals.zip 21 | sudo mv Externals / 22 | 23 | - name: Install missing packages 24 | run: | 25 | sudo apt update 26 | sudo DEBIAN_FRONTEND=noninteractive apt install libxt-dev libtiff5-dev libfontconfig1 mesa-common-dev libglu1-mesa-dev libxcomposite1 libxcursor1 libxrender1 libxi6 libxtst6 libasound2 libnspr4 libnss3 libxkbcommon-dev libxkbcommon-x11-dev libtbb2 doxygen git cmake python3-pip gcc-6 g++-6 -y 27 | sudo apt remove --auto-remove icu-devtools libicu-dev -y 28 | 29 | - name: Install Qt 30 | run: | 31 | sudo pip3 install --upgrade setuptools 32 | sudo pip3 install aqtinstall 33 | sudo aqt install --outputdir /Qt 5.12.10 linux desktop -m qtcharts qtnetworkauth qtpurchasing qtdatavis3d qtscript qtvirtualkeyboard qtwebengine qtwebglplugin 34 | 35 | - name: Clone MITK 36 | run: sudo git clone --branch v2018.04.2 https://phabricator.mitk.org/source/mitk.git /MITK 37 | 38 | - name: Disable tests for CppMicroServices 39 | run: sudo sed -i 's/set(US_BUILD_TESTING ON)/set(US_BUILD_TESTING OFF)/' /MITK/Modules/CMakeLists.txt 40 | 41 | - name: Change timestamps of the MITK directory 42 | run: sudo find /MITK/ -exec touch -a -m -d 20210401 {} \; 43 | 44 | - name: Clone CemrgApp 45 | uses: actions/checkout@v2 46 | with: 47 | path: CemrgApp 48 | 49 | - name: Move CemrgApp to root 50 | run: sudo mv CemrgApp / 51 | 52 | - name: Build 53 | working-directory: /Build 54 | env: 55 | CC: gcc-6 56 | CXX: g++-6 57 | run: make -j4 58 | 59 | - name: Test 60 | working-directory: /Build/MITK-build 61 | env: 62 | QT_PLUGIN_PATH: /Qt/5.12.10/gcc_64/plugins 63 | QT_QPA_PLATFORM: minimal 64 | run: ctest -R Cemrg -V 65 | 66 | - name: Code Coverage 67 | uses: codecov/codecov-action@v1 68 | with: 69 | token: ${{ secrets.CODECOV_TOKEN }} 70 | functionalities: coveragepy 71 | root_dir: /CemrgApp/ 72 | gcov_root_dir: /Build/MITK-build 73 | directory: ${{ github.workspace }} 74 | -------------------------------------------------------------------------------- /CemrgApp/Applications/AppList.cmake: -------------------------------------------------------------------------------- 1 | option(MITK_BUILD_APP_CemrgApp "Build the MITK - CemrgApp" ON) 2 | # option(MITK_BUILD_APP_Workbench "Switch the MITK Workbench executable off." OFF) 3 | 4 | set(MITK_APPS 5 | MainApp^^MITK_BUILD_APP_CemrgApp^^CemrgApp 6 | ) 7 | -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/CemrgApp.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Module: $RCSfile$ 5 | Language: C++ 6 | Date: $Date$ 7 | Version: $Revision: 13820 $ 8 | 9 | Copyright (c) German Cancer Research Center, Division of Medical and 10 | Biological Informatics. All rights reserved. 11 | See MITKCopyright.txt or http://www.mitk.org/ for details. 12 | 13 | This software is distributed WITHOUT ANY WARRANTY; without even 14 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 | PURPOSE. See the above copyright notices for more information. 16 | 17 | =========================================================================*/ 18 | 19 | #include 20 | 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | 30 | int main(int argc, char** argv) { 31 | 32 | QString version, sha; 33 | QFile file(":/splash/version.txt"); 34 | if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { 35 | QTextStream in(&file); 36 | version = in.readLine(); 37 | sha = in.readLine(); 38 | } 39 | 40 | mitk::BaseApplication myApp(argc, argv); 41 | myApp.setSingleMode(true); 42 | myApp.setApplicationName("CemrgApp " + version); 43 | myApp.setOrganizationName("KCL"); 44 | myApp.initializeQt(); 45 | 46 | QPixmap pixmap(":/splash/splashscreen.png"); 47 | QSplashScreen splash(pixmap); 48 | splash.setWindowFlags(Qt::SplashScreen | Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint); 49 | splash.show(); 50 | if (!version.isEmpty()) 51 | splash.showMessage("CemrgApp " + version + " (" + sha + ")\nPowered by: MITK v2018.04.2", Qt::AlignLeft, Qt::white); 52 | QTimer::singleShot(4000, &splash, SLOT(close())); 53 | 54 | // ------------------------------------------------------------------- 55 | // Here you can switch to your customizable application: 56 | // ------------------------------------------------------------------- 57 | 58 | QStringList preloadLibs; 59 | preloadLibs << "liborg_mitk_gui_qt_common"; 60 | myApp.setPreloadLibraries(preloadLibs); 61 | //myApp.setProperty(mitk::BaseApplication::PROP_APPLICATION, "org.mitk.qt.extapplication"); 62 | myApp.setProperty(mitk::BaseApplication::PROP_APPLICATION, "kcl.cemrgapp.mainapp"); 63 | return myApp.run(); 64 | } -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/CemrgApp.ini: -------------------------------------------------------------------------------- 1 | BlueBerry.home=@BLUEBERRY_BINARY_DIR@ 2 | BlueBerry.provisioning=@MITK_CEMRGAPP_PROVISIONING_FILE@ 3 | BlueBerry.qtplugin_path=@BLUEBERRY_QTPLUGIN_PATH@ 4 | -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/icons/CemrgApp.rc: -------------------------------------------------------------------------------- 1 | IDI_ICON1 ICON DISCARDABLE "icon.ico" -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/icons/icon.icns: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Applications/MainApp/icons/icon.icns -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/icons/icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Applications/MainApp/icons/icon.ico -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/splashscreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Applications/MainApp/splashscreen.png -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/splashscreen.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | splashscreen.png 4 | version.txt 5 | 6 | 7 | -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/startCemrgApp.bat.in: -------------------------------------------------------------------------------- 1 | PATH=@MITK_RUNTIME_PATH@;%PATH% 2 | @VS_BUILD_TYPE@\CemrgApp.exe 3 | -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/target_libraries.cmake: -------------------------------------------------------------------------------- 1 | # A list of plug-in targets which should be automatically enabled 2 | # (or be available in external projects) for this application. 3 | 4 | set(target_libraries 5 | # Require external plug-ins 6 | org_blueberry_ui_qt 7 | 8 | org_mitk_gui_qt_datamanager 9 | org_mitk_gui_qt_basicimageprocessing 10 | org_mitk_gui_qt_dicom 11 | #org_mitk_gui_qt_diffusionimaging 12 | #org_mitk_gui_qt_diffusionimaging_registration 13 | org_mitk_gui_qt_pointsetinteraction 14 | org_mitk_gui_qt_segmentation 15 | 16 | # Enable plug-ins from this project 17 | kcl_cemrgapp_mainapp 18 | ) 19 | -------------------------------------------------------------------------------- /CemrgApp/Applications/MainApp/version.txt: -------------------------------------------------------------------------------- 1 | 2.1.1 2 | 352da9b 3 | -------------------------------------------------------------------------------- /CemrgApp/CMake/CPackSetup.cmake: -------------------------------------------------------------------------------- 1 | set(CPACK_PACKAGE_NAME ${PROJECT_NAME}) 2 | set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "This is the Cemrg app") 3 | set(CPACK_PACKAGE_VENDOR "KCL CEMRG") 4 | set(CPACK_CREATE_DESKTOP_LINKS "${MY_APP_NAME}") 5 | set(CPACK_PACKAGE_DESCRIPTION_FILE "${PROJECT_SOURCE_DIR}/Copyright.txt") 6 | set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/Copyright.txt") 7 | set(CPACK_PACKAGE_VERSION_MAJOR "${${PROJECT_NAME}_VERSION_MAJOR}") 8 | set(CPACK_PACKAGE_VERSION_MINOR "${${PROJECT_NAME}_VERSION_MINOR}") 9 | 10 | # append revision number if available 11 | if(${PROJECT_NAME}_REVISION_ID) 12 | if(${PROJECT_NAME}_WC_TYPE STREQUAL "git") 13 | set(git_hash ${${PROJECT_NAME}_REVISION_ID}) 14 | string(LENGTH "${git_hash}" hash_length) 15 | if(hash_length GREATER 6) 16 | string(SUBSTRING ${git_hash} 0 6 git_hash) 17 | endif() 18 | set(CPACK_PACKAGE_VERSION_PATCH "${${PROJECT_NAME}_VERSION_PATCH}_r${git_hash}") 19 | else() 20 | set(CPACK_PACKAGE_VERSION_PATCH "${${PROJECT_NAME}_VERSION_PATCH}_r${${PROJECT_NAME}_REVISION_ID}") 21 | endif() 22 | else() 23 | set(CPACK_PACKAGE_VERSION_PATCH "${${PROJECT_NAME}_VERSION_PATCH}") 24 | endif() 25 | -------------------------------------------------------------------------------- /CemrgApp/CMake/CTestCustom.cmake.in: -------------------------------------------------------------------------------- 1 | set(CTEST_CUSTOM_COVERAGE_EXCLUDE 2 | ${CTEST_CUSTOM_COVERAGE_EXCLUDE} 3 | 4 | # Exclude try_compile sources from coverage results: 5 | "/CMakeFiles/CMakeTmp/" 6 | 7 | # Exclude files generated by the moc pre-compiler 8 | ".*/moc_.*" 9 | 10 | # Exclude files generated by the uic pre-compiler 11 | ".*/ui_.*" 12 | 13 | # Exclude files from the Testing directories 14 | ".*/Testing/.*" 15 | 16 | ".*/CMakeExternals/.*" 17 | 18 | ) 19 | 20 | # The following tests should not be run under valgrind 21 | set(CTEST_CUSTOM_MEMCHECK_IGNORE 22 | 23 | ) 24 | 25 | set(CTEST_CUSTOM_ERROR_MATCH 26 | ${CTEST_CUSTOM_ERROR_MATCH} 27 | "CMake Error[ :]" 28 | ) 29 | 30 | set(CTEST_CUSTOM_WARNING_MATCH 31 | ${CTEST_CUSTOM_WARNING_MATCH} 32 | "CMake Warning[ :]" 33 | ) 34 | 35 | set(CTEST_CUSTOM_WARNING_EXCEPTION 36 | ${CTEST_CUSTOM_WARNING_EXCEPTION} 37 | 38 | # kwstyle suppressions 39 | "[Kk][Ww][Ss]tyle.*kws.*cxx" 40 | "[Kk][Ww][Ss]tyle.*kws.*h" 41 | "[Kk][Ww][Ss]tyle.*metaCommand.*cxx" 42 | 43 | # vtk suppressions 44 | "vtkfreetype" 45 | "Utilities.vtktiff" 46 | "VTK.*IO.vtkMySQLQuery.cxx" 47 | "VTK.*Utilities.vtkexodus2" 48 | "VTK.*Utilities.vtklibproj" 49 | "VTK.*Utilities.vtksqlite" 50 | "VTK.*Utilities.vtkmetaio" 51 | "VTK.*warn_unused_result" 52 | "VTK.*Filtering.*cxx" 53 | "VTK.*IO.*cxx" 54 | "VTK.*Infovis.*cxx" 55 | 56 | # qt suppressions from vtk... 57 | # Some VTK dashboards include building bits of Qt which produce lots of 58 | # the following warnings when built with the MS compilers. Qt guys should 59 | # fix their code. Until they do, keep the Qt chatter off the VTK dashboard 60 | # results: 61 | "include.[Qq]t([Cc]ore|[Gg]ui).*warning C4127: conditional expression is constant" 62 | "[Qq]t.*h.*warning.*declaration of .* shadows a member of .this" 63 | "[Qq]t.*h.*warning.*(copy constructor|assignment operator) could not be generated" 64 | 65 | # Suppress warning caused when QT 'foreach' loops are combined 66 | ".*warning: declaration of '_container_' shadows a previous local" 67 | 68 | # PythonQt suppressions 69 | "PythonQt.*src.*PythonQt.*(cpp|h)" 70 | "include.PythonQt.PythonQt.*h" 71 | 72 | # Suppressing warnings about duplicate libraries in Darwin 73 | # At some point this may be addressed by CMake feature request: 74 | # http://public.kitware.com/Bug/view.php?id=10179 75 | "ld: warning: duplicate dylib.*" 76 | 77 | # Visual studio spurious warnings... 78 | "The following environment variables were not found" 79 | 80 | ) 81 | -------------------------------------------------------------------------------- /CemrgApp/CMake/FindVMTK.cmake: -------------------------------------------------------------------------------- 1 | # FindVMTK 2 | # --------- 3 | # 4 | # Find VMTK libraries and applications 5 | # 6 | # The module defines the following variables:: 7 | # 8 | # VMTK_INCLUDE_DIRS - Directories to include to use VMTK 9 | # VMTK_LIBRARIES - Files to link against to use VMTK 10 | # VMTK_FOUND - If false, don't try to use VMTK 11 | # VMTK_BUILD_DIR - (optional) Source directory for VMTK 12 | set(_vmtk_dir_description "The directory of VMTK build or install tree") 13 | set(VMTK_BUILD_DIR "${MITK_EXTERNAL_PROJECT_PREFIX}/src/VMTK-build/VMTK-Build/" 14 | CACHE PATH ${_vmtk_dir_description} FORCE) 15 | 16 | mark_as_advanced(VMTK_BUILD_DIR) 17 | 18 | set(_SAVED_VMTK_DIR ${VMTK_BUILD_DIR}) 19 | message("VMTK_BUILD_DIR: ${VMTK_BUILD_DIR}") 20 | 21 | # Step1: Attempt to find a version of VMTK providing a VMTKConfig.cmake file. 22 | if(NOT VMTK_FIND_QUIETLY) 23 | message(STATUS "Trying to find VMTK expecting VMTKConfig.cmake") 24 | endif() 25 | find_package(VMTK QUIET CONFIG 26 | PATHS ${VMTK_BUILD_DIR} 27 | ) 28 | 29 | if(VMTK_FOUND) 30 | #if(NOT VMTK_FIND_QUIETLY) 31 | message(STATUS "Trying to find VMTK expecting VMTKConfig.cmake - ok") 32 | 33 | INCLUDE_DIRECTORIES(${VMTK_INCLUDE_DIRS}) 34 | LINK_DIRECTORIES(${VMTK_LIBRARY_DIRS}) 35 | LINK_LIBRARIES(vtkvmtkCommon vtkvmtkComputationalGeometry 36 | vtkvmtkContrib vtkvmtkDifferentialGeometry vtkvmtkIO 37 | vtkvmtkITK vtkvmtkMisc vtkvmtkSegmentation nl tet) 38 | #endif() 39 | 40 | return() 41 | else() 42 | if(NOT VMTK_FIND_QUIETLY) 43 | message(STATUS "Trying to find VMTK expecting VMTKConfig.cmake - failed") 44 | message(STATUS "Trying to find VMTK expecting FindVMTK.cmake.") 45 | 46 | set(VMTK_BUILD_DIR ${_SAVED_VMTK_DIR} CACHE PATH ${_VMTK_dir_description} FORCE) 47 | 48 | endif() 49 | endif() 50 | 51 | # 52 | 53 | # # Custom find script for VMTK 54 | # include(FindPackageHandleStandardArgs) 55 | # include(SelectLibraryConfigurations) 56 | # 57 | # set(VMTK_BUILD_DIR "${MITK_EXTERNAL_PROJECT_PREFIX}/src/VMTK-build/VMTK-Build/") 58 | # 59 | # find_path(VMTK_INCLUDE_DIR 60 | # NAMES vtkvmtkConfigure.h 61 | # PATHS ${VMTK_BUILD_DIR} 62 | # # PATH_SUFFIXES include/vmtk 63 | # PATH_SUFFIXES vtkVmtk 64 | # ) 65 | # 66 | # set(VMTK_LIBRARY_DIR "${VMTK_BUILD_DIR}/bin") 67 | # 68 | # foreach(lib Common ComputationalGeometry DifferentialGeometry IO ITK Misc Segmentation) 69 | # string(TOUPPER ${lib} LIB) 70 | # if(NOT VMTK_${LIB}_LIBRARIES) 71 | # find_library(VMTK_${LIB}_LIBRARY_RELEASE vtkvmtk${lib} ${VMTK_LIBRARY_DIR}) 72 | # find_library(VMTK_${LIB}_LIBRARY_DEBUG vtkvmtk${lib}d ${VMTK_LIBRARY_DIR}) 73 | # select_library_configurations(VMTK_${LIB}) 74 | # endif() 75 | # endforeach() 76 | # 77 | # find_package_handle_standard_args(VMTK DEFAULT_MSG 78 | # VMTK_INCLUDE_DIR 79 | # VMTK_COMMON_LIBRARIES 80 | # VMTK_COMPUTATIONALGEOMETRY_LIBRARIES 81 | # VMTK_DIFFERENTIALGEOMETRY_LIBRARIES 82 | # VMTK_IO_LIBRARIES 83 | # VMTK_ITK_LIBRARIES 84 | # VMTK_MISC_LIBRARIES 85 | # VMTK_SEGMENTATION_LIBRARIES 86 | # ) 87 | # 88 | # if(VMTK_FOUND) 89 | # set(VMTK_INCLUDE_DIRS ${VMTK_INCLUDE_DIR}) 90 | # set(VMTK_LIBRARIES 91 | # ${VMTK_COMMON_LIBRARIES} 92 | # ${VMTK_COMPUTATIONALGEOMETRY_LIBRARIES} 93 | # ${VMTK_DIFFERENTIALGEOMETRY_LIBRARIES} 94 | # ${VMTK_IO_LIBRARIES} 95 | # ${VMTK_ITK_LIBRARIES} 96 | # ${VMTK_MISC_LIBRARIES} 97 | # ${VMTK_SEGMENTATION_LIBRARIES} 98 | # ) 99 | # endif() 100 | # 101 | # mark_as_advanced( 102 | # VMTK_INCLUDE_DIR 103 | # ) 104 | -------------------------------------------------------------------------------- /CemrgApp/CMake/MacroEmptyExternalProject.cmake: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Convenient macro allowing to define a "empty" project in case an external one is provided 4 | # using for example _DIR. 5 | # Doing so allows to keep the external project dependency system happy. 6 | # 7 | macro(MacroEmptyExternalProject proj dependencies) 8 | 9 | ExternalProject_Add(${proj} 10 | DOWNLOAD_COMMAND "" 11 | CONFIGURE_COMMAND "" 12 | BUILD_COMMAND "" 13 | INSTALL_COMMAND "" 14 | DEPENDS 15 | ${dependencies} 16 | ) 17 | 18 | endmacro() 19 | -------------------------------------------------------------------------------- /CemrgApp/CMake/PackageDepends/MITK_VMTK_Config.cmake: -------------------------------------------------------------------------------- 1 | #[[ This file is empty as everything is already set up in 2 | CMake/FindVMTK.cmake. However, 3 | MITK relies on the existence of this file to 4 | determine if the package was found. ]] 5 | -------------------------------------------------------------------------------- /CemrgApp/CMake/StartVS.bat.in: -------------------------------------------------------------------------------- 1 | @set CL=/D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE 2 | @set LINK=/LARGEADDRESSAWARE 3 | 4 | PATH=@MITK_RUNTIME_PATH@;@CMAKE_RUNTIME_OUTPUT_DIRECTORY@/@VS_BUILD_TYPE@;@CMAKE_RUNTIME_OUTPUT_DIRECTORY@/plugins/@VS_BUILD_TYPE@;%PATH% 5 | "@VS_SOLUTION_FILE@" 6 | 7 | -------------------------------------------------------------------------------- /CemrgApp/CMakeExternals/ExternalProjectList.cmake: -------------------------------------------------------------------------------- 1 | # List in this file all extrernal projects not included by default in the MITK 2 | # build 3 | mitkFunctionAddExternalProject(NAME VMTK ON DOC "Using VMTK") 4 | -------------------------------------------------------------------------------- /CemrgApp/CMakeExternals/MIRTK.cmake: -------------------------------------------------------------------------------- 1 | # ---------- 2 | # MIRTK. NOT supported at the moment 3 | # ---------- 4 | # Please note. This external project might be included in a following version 5 | set(proj MIRTK) 6 | set(proj_DEPENDENCIES VTK) 7 | set(${proj}_DEPENDS ${proj}) 8 | 9 | if(MITK_USE_MIRTK) 10 | # 'Sanity' checks 11 | if(DEFINED ${proj}_DIR AND NOT EXISTS ${${proj}_DIR}) 12 | message(FATAL_ERROR "${proj}_DIR variable is defined but corresponds to non-existing directory") 13 | endif() 14 | 15 | if(NOT DEFINED ${proj}_DIR) 16 | set(additional_cmake_args 17 | 18 | # if(CTEST_USE_LAUNCHERS) 19 | # list(APPEND additional_cmake_args 20 | # -DCMAKE_PROJECT_VTK_VMTK_INCLUDE:FILEPATH=${CMAKE_ROOT}/Modules/CTestUseLaunchers.cmake 21 | # ) 22 | # endif() 23 | 24 | if(MITK_USE_Python) 25 | list(APPEND additional_cmake_args 26 | -DDEPENDS_Python_DIR:FILEPATH=${PYTHON_EXECUTABLE} 27 | ) 28 | # else() 29 | # list(APPEND additional_cmake_args 30 | # -DVTK_VMTK_WRAP_PYTHON:BOOL=OFF 31 | # ) 32 | endif() 33 | # git clone --depth 1 -- https://github.com/BioMedIA/MIRTK.git 34 | set(MIRTK_GIT_REPOSITORY "https://github.com/BioMedIA/MIRTK.git" CACHE STRING "The git repository for cloning VMTK") 35 | 36 | ExternalProject_Add(${proj} 37 | SOURCE_DIR ${CMAKE_BINARY_DIR}/${ep_prefix} 38 | GIT_REPOSITORY ${MIRTK_GIT_REPOSITORY} 39 | GIT_SHALLOW ON 40 | CMAKE_ARGS 41 | ${ep_common_args} 42 | -DDEPENDS_Boost_DIR:PATH=${ep_prefix}/src/Boost 43 | -DDEPENDS_Eigen3_DIR:PATH=${ep_prefix}/src/Eigen 44 | -DWITH_VTK:BOOL=ON 45 | -DDEPENDS_VTK:PATH=${ep_prefix}/src/VTK-build 46 | ${additional_cmake_args} 47 | CMAKE_CACHE_ARGS ${ep_common_cache_args} 48 | -DGSL_CXX_STANDARD:STRING=${MITK_CXX_STANDARD} 49 | -DGSL_TEST:BOOL=OFF 50 | CMAKE_CACHE_DEFAULT_ARGS ${ep_common_cache_default_args} 51 | BUILD_COMMAND "make" 52 | INSTALL_COMMAND "make install" 53 | ) 54 | 55 | set(${proj}_DIR ${ep_prefix}) 56 | else() 57 | mitkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}") 58 | endif() 59 | endif() 60 | -------------------------------------------------------------------------------- /CemrgApp/CMakeExternals/VMTK.cmake: -------------------------------------------------------------------------------- 1 | # ---------- 2 | # VMTK 3 | # ---------- 4 | set(proj VMTK) 5 | set(proj_DEPENDENCIES ITK VTK) 6 | set(${proj}_DEPENDS ${proj}) 7 | 8 | if(MITK_USE_VMTK) 9 | # 'Sanity' checks 10 | if(DEFINED ${proj}_DIR AND NOT EXISTS ${${proj}_DIR}) 11 | message(FATAL_ERROR "${proj}_DIR variable is defined but corresponds to non-existing directory") 12 | endif() 13 | 14 | if(NOT DEFINED ${proj}_DIR) 15 | set(additional_cmake_args) 16 | 17 | if(CTEST_USE_LAUNCHERS) 18 | list(APPEND additional_cmake_args 19 | -DCMAKE_PROJECT_VTK_VMTK_INCLUDE:FILEPATH=${CMAKE_ROOT}/Modules/CTestUseLaunchers.cmake 20 | ) 21 | endif() 22 | 23 | if(MITK_USE_Python) 24 | list(APPEND additional_cmake_args 25 | -DVTK_VMTK_WRAP_PYTHON:BOOL=ON 26 | -DPYTHON_EXECUTABLE:FILEPATH=${PYTHON_EXECUTABLE} 27 | -DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR} 28 | -DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY} 29 | -DVTK_PYTHON_VERSION:STRING=3 30 | ) 31 | else() 32 | list(APPEND additional_cmake_args 33 | -DVTK_VMTK_WRAP_PYTHON:BOOL=OFF 34 | ) 35 | endif() 36 | 37 | set(VMTK_GIT_REPOSITORY "https://github.com/vmtk/vmtk.git" CACHE STRING "The git repository for cloning VMTK") 38 | set(VMTK_GIT_TAG "v1.4.0" CACHE STRING "The git tag/hash to be used when cloning from VMTK_GIT_REPOSITORY") 39 | mark_as_advanced(VMTK_GIT_REPOSITORY VMTK_GIT_TAG) 40 | 41 | if (UNIX) 42 | ExternalProject_Add(${proj} 43 | PREFIX ${ep_prefix} 44 | GIT_REPOSITORY ${VMTK_GIT_REPOSITORY} 45 | GIT_TAG ${VMTK_GIT_TAG} 46 | GIT_SHALLOW TRUE 47 | CMAKE_ARGS 48 | ${ep_common_args} 49 | -DSUPERBUILD_INSTALL_PREFIX:PATH=${ep_prefix} 50 | -DUSE_SYSTEM_ITK:BOOL=ON 51 | -DITK_DIR:PATH=${ep_prefix}/src/ITK-build 52 | -DUSE_SYSTEM_VTK:BOOL=ON 53 | -DVTK_DIR:PATH=${ep_prefix}/src/VTK-build 54 | ${additional_cmake_args} 55 | CMAKE_CACHE_ARGS ${ep_common_cache_args} 56 | -DGSL_CXX_STANDARD:STRING=${MITK_CXX_STANDARD} 57 | -DGSL_TEST:BOOL=OFF 58 | CMAKE_CACHE_DEFAULT_ARGS ${ep_common_cache_default_args} 59 | BUILD_COMMAND "make" 60 | INSTALL_COMMAND "make" 61 | DEPENDS ${proj_DEPENDENCIES} 62 | ) 63 | else(UNIX) 64 | ExternalProject_Add(${proj} 65 | PREFIX ${ep_prefix} 66 | GIT_REPOSITORY ${VMTK_GIT_REPOSITORY} 67 | GIT_TAG ${VMTK_GIT_TAG} 68 | GIT_SHALLOW TRUE 69 | CMAKE_ARGS 70 | ${ep_common_args} 71 | -DSUPERBUILD_INSTALL_PREFIX:PATH=${ep_prefix} 72 | -DUSE_SYSTEM_ITK:BOOL=ON 73 | -DITK_DIR:PATH=${ep_prefix}/src/ITK-build 74 | -DUSE_SYSTEM_VTK:BOOL=ON 75 | -DVTK_DIR:PATH=${ep_prefix}/src/VTK-build 76 | ${additional_cmake_args} 77 | CMAKE_CACHE_ARGS ${ep_common_cache_args} 78 | -DGSL_CXX_STANDARD:STRING=${MITK_CXX_STANDARD} 79 | -DGSL_TEST:BOOL=OFF 80 | CMAKE_CACHE_DEFAULT_ARGS ${ep_common_cache_default_args} 81 | DEPENDS ${proj_DEPENDENCIES} 82 | ) 83 | endif (UNIX) 84 | 85 | 86 | set(${proj}_DIR ${ep_prefix}) 87 | else() 88 | mitkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}") 89 | endif() 90 | endif() 91 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | mitk_create_module(CemrgAppModule 2 | DEPENDS PUBLIC MitkSegmentation MitkQtWidgetsExt MitkQtWidgets MitkAlgorithmsExt MitkCore 3 | PACKAGE_DEPENDS PRIVATE VMTK ITK 4 | ) 5 | 6 | add_subdirectory(cmdapps) 7 | 8 | if(BUILD_TESTING) 9 | add_subdirectory(test) 10 | endif() 11 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/cmdapps/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | option(BUILD_CemrgCMDApps "Build ALL command-line apps for Cemrg Module" OFF) 2 | option(BUILD_CEMRG_FIXSHELL "Build fixing shell values command line app. " ON) 3 | option(BUILD_CEMRG_PROJECTION_OPTS "Build Scar Map Projection Options command line app. " ON) 4 | option(BUILD_CEMRG_CLIPPINGTOOL "Build clipping valve command line app. " ON) 5 | option(BUILD_CEMRG_PROJECTLGE "Build lge projection command line app. " ON) 6 | option(BUILD_CEMRG_IM2INR "Build image to inr command line app. " ON) 7 | option(BUILD_CEMRG_VENTRICLE_SEGMENTATION_RELABEL "Build ventricle segmentation relabelling command line app" ON) 8 | option(BUILD_CEMRG_MORPH_ANALYSIS "Build atrial morph analysis" ON) 9 | 10 | if(BUILD_CemrgCMDApps) 11 | mitkFunctionCreateCommandLineApp( 12 | NAME CemrgTemplateApp 13 | DEPENDS MitkCemrgAppModule 14 | CPP_FILES CemrgAppCmdTemplate.cpp 15 | ) 16 | endif() 17 | 18 | if(BUILD_CEMRG_FIXSHELL) 19 | mitkFunctionCreateCommandLineApp( 20 | NAME CemrgFixShell 21 | DEPENDS MitkCemrgAppModule 22 | CPP_FILES CemrgFixShellApp.cpp 23 | ) 24 | endif() 25 | 26 | if(BUILD_CEMRG_PROJECTION_OPTS) 27 | mitkFunctionCreateCommandLineApp( 28 | NAME CemrgScarProjectionOptions 29 | DEPENDS MitkCemrgAppModule 30 | CPP_FILES CemrgProjectionOptions.cpp 31 | ) 32 | endif() 33 | 34 | if(BUILD_CEMRG_CLIPPINGTOOL) 35 | mitkFunctionCreateCommandLineApp( 36 | NAME CemrgClippingTool 37 | DEPENDS MitkCemrgAppModule 38 | CPP_FILES CemrgClippingTool.cpp 39 | ) 40 | endif() 41 | 42 | if(BUILD_CEMRG_PROJECTLGE) 43 | mitkFunctionCreateCommandLineApp( 44 | NAME ProjectLgeToVtkMesh 45 | DEPENDS MitkCemrgAppModule 46 | CPP_FILES CemrgProjectLgeToVtkMesh.cpp 47 | ) 48 | endif() 49 | 50 | if(BUILD_CEMRG_IM2INR) 51 | mitkFunctionCreateCommandLineApp( 52 | NAME CemrgIM2INR 53 | DEPENDS MitkCemrgAppModule 54 | CPP_FILES CemrgIM2INR.cpp 55 | ) 56 | endif() 57 | 58 | if(BUILD_CEMRG_VENTRICLE_SEGMENTATION_RELABEL) 59 | mitkFunctionCreateCommandLineApp( 60 | NAME CemrgVentricleSegmRelabel 61 | DEPENDS MitkCemrgAppModule 62 | CPP_FILES CemrgVentricleSegmRelabel.cpp 63 | ) 64 | endif() 65 | 66 | if(BUILD_CEMRG_MORPH_ANALYSIS) 67 | mitkFunctionCreateCommandLineApp( 68 | NAME CemrgMorphAnalysis 69 | DEPENDS MitkSegmentation MitkCemrgAppModule 70 | CPP_FILES CemrgMorphAnalysis.cpp 71 | ) 72 | endif() 73 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/files.cmake: -------------------------------------------------------------------------------- 1 | set(CPP_FILES 2 | CemrgCommandLine.cpp 3 | CemrgCommonUtils.cpp 4 | CemrgMeasure.cpp 5 | CemrgScar3D.cpp 6 | CemrgStrains.cpp 7 | CemrgPower.cpp 8 | CemrgAtriaClipper.cpp 9 | CemrgScarAdvanced.cpp 10 | CemrgTests.cpp 11 | ) 12 | 13 | set(UI_FILES 14 | ) 15 | 16 | set(MOC_H_FILES 17 | include/CemrgAtriaClipper.h 18 | include/CemrgCommandLine.h 19 | include/CemrgCommonUtils.h 20 | include/CemrgMeasure.h 21 | include/CemrgScar3D.h 22 | include/CemrgStrains.h 23 | include/CemrgPower.h 24 | include/CemrgScarAdvanced.h 25 | ) 26 | 27 | set(RESOURCE_FILES 28 | ) 29 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/include/CemrgAhaUtils.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Power Transmitter Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.co.uk/ 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef CemrgAhaUtils_h 30 | #define CemrgAhaUtils_h 31 | 32 | // Qmitk 33 | #include 34 | #include 35 | #include 36 | 37 | // VTK 38 | //#include 39 | #include 40 | //#include 41 | 42 | // #include 43 | 44 | 45 | class MITKCEMRGAPPMODULE_EXPORT CemrgAhaUtils { 46 | 47 | public: 48 | 49 | CemrgAhaUtils(); 50 | mitk::Surface::Pointer ReferenceAHA(mitk::DataNode::Pointer lmNode, mitk::Surface::Pointer refSurface); 51 | 52 | private: 53 | 54 | // Copied from Strain for AHA mapping 55 | mitk::Matrix CalcRotationMatrix(mitk::Point3D point1, mitk::Point3D point2); 56 | mitk::Point3D Circlefit3d(mitk::Point3D point1, mitk::Point3D point2, mitk::Point3D point3); 57 | mitk::Point3D RotatePoint(mitk::Matrix rotationMatrix, mitk::Point3D point); 58 | void RotateVTKMesh(mitk::Matrix rotationMatrix, mitk::Surface::Pointer surface); 59 | mitk::Point3D ZeroPoint(mitk::Point3D apex, mitk::Point3D point); 60 | void ZeroVTKMesh(mitk::Point3D apex, mitk::Surface::Pointer surface); 61 | }; 62 | 63 | #endif // CemrgAhaUtils_h 64 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/include/CemrgMeasure.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Measurements Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef CemrgMeasure_h 30 | #define CemrgMeasure_h 31 | 32 | #include 33 | #include 34 | #include 35 | #include 36 | #include 37 | #include 38 | #include 39 | 40 | class MITKCEMRGAPPMODULE_EXPORT CemrgMeasure { 41 | 42 | public: 43 | typedef std::tuple Point; 44 | typedef std::vector Points; 45 | 46 | //Point to Point Tools 47 | void Convert(QString dir, mitk::DataNode::Pointer); 48 | Points Deconvert(QString dir, int noFile); 49 | double CalcDistance(Points& points); 50 | double CalcPerimeter(Points& points); 51 | double CalcArea(Points& points); 52 | mitk::Point3D FindCentre(mitk::PointSet::Pointer pointset); 53 | 54 | //Sphericity Tools 55 | double GetSphericity(vtkPolyData* poly); 56 | 57 | //Mesh Mass Tools 58 | double calcVolumeMesh(mitk::Surface::Pointer surface); 59 | double calcSurfaceMesh(mitk::Surface::Pointer surface); 60 | 61 | private: 62 | 63 | //Point to Point Tools 64 | Point CalcMean(Points& points); 65 | double CalcDist3D(Point& pointA, Point& pointB); 66 | double Heron(Point& pointA, Point& pointB, Point& centre); 67 | std::vector& Split(const std::string& str, std::vector& elements); 68 | 69 | //Sphericity Tools 70 | void GetArea(vtkPolyData* polys, double* TiA, double& LACA); 71 | void GetCentreOfMass(double** TiMC, double* TiA, int TiMC_size, double LACA, double* LAC_mc); 72 | void GetCentreOfMassOfEachT(vtkPolyData* polys, double** TiMC); 73 | void GetAverageRadius(double** TiMC, double* TiA, double TiMC_size, double* LAC_mc, double LACA, double& AR); 74 | void LASphericity(double** TiMC, double* TiA, double TiMC_size, double* LAC_mc, double LACA, double AR, double& sigma, double& Sphericity); 75 | }; 76 | 77 | #endif // CemrgMeasure_h 78 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/include/CemrgPower.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Power Transmitter Calculations Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * angela.lee@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef CemrgPower_h 30 | #define CemrgPower_h 31 | 32 | // Qmitk 33 | #include 34 | #include 35 | #include 36 | 37 | // VTK 38 | #include 39 | #include 40 | #include 41 | 42 | class MITKCEMRGAPPMODULE_EXPORT CemrgPower { 43 | 44 | public: 45 | 46 | CemrgPower(); 47 | CemrgPower(QString dir, int ribSpacing); 48 | 49 | mitk::Surface::Pointer MapPowerTransmitterToLandmarks(mitk::DataNode::Pointer lmNode); 50 | mitk::Surface::Pointer CalculateAcousticIntensity(mitk::Surface::Pointer endoMesh); 51 | mitk::Surface::Pointer ReferenceAHA(mitk::PointSet::Pointer lmNode, mitk::Surface::Pointer refSurface); 52 | 53 | private: 54 | 55 | QString projectDirectory; 56 | int currentRibSpacing; 57 | 58 | double sinc(const double x); 59 | void normalise(double v[]); 60 | void crossProduct(double a[], double b[], double product[]); 61 | double dotProduct(double a[], double b[]); 62 | std::vector ConvertMPS(mitk::DataNode::Pointer node); 63 | void fcn_RotationToUnity(const double v[], vtkSmartPointer& RotationMatrix); 64 | void fcn_RotationFromTwoVectors(double a[], double b[], vtkSmartPointer& RotationMatrix); 65 | 66 | // Copied from Strain for AHA mapping 67 | mitk::Matrix CalcRotationMatrix(mitk::Point3D point1, mitk::Point3D point2); 68 | mitk::Point3D Circlefit3d(mitk::Point3D point1, mitk::Point3D point2, mitk::Point3D point3); 69 | mitk::Point3D RotatePoint(mitk::Matrix rotationMatrix, mitk::Point3D point); 70 | void RotateVTKMesh(mitk::Matrix rotationMatrix, mitk::Surface::Pointer surface); 71 | mitk::Point3D ZeroPoint(mitk::Point3D apex, mitk::Point3D point); 72 | void ZeroVTKMesh(mitk::Point3D apex, mitk::Surface::Pointer surface); 73 | }; 74 | 75 | #endif // CemrgPower_h 76 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | MITK_CREATE_MODULE_TESTS() 2 | 3 | mitk_use_modules(TARGET ${TESTDRIVER} PACKAGES Qt5|Test) 4 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CemrgCommandLineTest.hpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | // CemrgApp 30 | #include "CemrgTestCommon.hpp" 31 | #include 32 | 33 | using namespace std; 34 | 35 | class TestCemrgCommandLine: public QObject { 36 | 37 | Q_OBJECT 38 | 39 | private: 40 | unique_ptr cemrgCommandLine { new CemrgCommandLine() }; 41 | 42 | const QString dataPath = QFINDTESTDATA(CemrgTestData::cmdLinePath); 43 | 44 | private slots: 45 | void initTestCase(); 46 | void cleanupTestCase(); 47 | 48 | void ExecuteSurf_data(); 49 | void ExecuteSurf(); 50 | 51 | void ExecuteRegistration_data(); 52 | void ExecuteRegistration(); 53 | 54 | void ExecuteTransformation_data(); 55 | void ExecuteTransformation(); 56 | 57 | void ExecuteSimpleTranslation_data(); 58 | void ExecuteSimpleTranslation(); 59 | 60 | void ExecuteTracking_data(); 61 | void ExecuteTracking(); 62 | 63 | void ExecuteApplying_data(); 64 | void ExecuteApplying(); 65 | 66 | void ExecuteCreateCGALMesh_data(); 67 | void ExecuteCreateCGALMesh(); 68 | }; 69 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CemrgMeasureTest.hpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "CemrgTestCommon.hpp" 30 | #include 31 | 32 | using namespace std; 33 | 34 | class TestCemrgMeasure : public QObject { 35 | 36 | Q_OBJECT 37 | 38 | private: 39 | unique_ptr cemrgMeasure { new CemrgMeasure() }; 40 | 41 | array, CemrgTestData::surfacePaths.size()> surfaceData; 42 | 43 | private slots: 44 | void initTestCase(); 45 | void cleanupTestCase(); 46 | 47 | void CalcDistance_data(); 48 | void CalcDistance(); 49 | 50 | void CalcPerimeter_data(); 51 | void CalcPerimeter(); 52 | 53 | void CalcArea_data(); 54 | void CalcArea(); 55 | 56 | void FindCentre_data(); 57 | void FindCentre(); 58 | 59 | void GetSphericity_data(); 60 | void GetSphericity(); 61 | 62 | void calcVolumeMesh_data(); 63 | void calcVolumeMesh(); 64 | 65 | void calcSurfaceMesh_data(); 66 | void calcSurfaceMesh(); 67 | 68 | void Convert_data(); 69 | void Convert(); 70 | 71 | void Deconvert_data(); 72 | void Deconvert(); 73 | }; 74 | 75 | Q_DECLARE_METATYPE(CemrgMeasure::Points) 76 | Q_DECLARE_METATYPE(mitk::PointSet::Pointer) 77 | Q_DECLARE_METATYPE(mitk::Point3D) 78 | Q_DECLARE_METATYPE(vtkPolyData*) 79 | Q_DECLARE_METATYPE(mitk::Surface::Pointer) 80 | Q_DECLARE_METATYPE(mitk::DataNode::Pointer) 81 | Q_DECLARE_METATYPE(string) 82 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CemrgStrainsTest.hpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | // CemrgApp 30 | #include "CemrgTestCommon.hpp" 31 | #include 32 | 33 | using namespace std; 34 | 35 | class TestCemrgStrains: public QObject { 36 | 37 | Q_OBJECT 38 | 39 | private: 40 | unique_ptr cemrgStrains { new CemrgStrains(QFINDTESTDATA(CemrgTestData::strainPath), 0) }; 41 | 42 | // Used for preparation of multiple tests 43 | mitk::DataNode::Pointer ReferenceAHA(const array& segRatios = { 40, 40, 20 }, bool pacingSite = false); 44 | 45 | private slots: 46 | void initTestCase(); 47 | void cleanupTestCase(); 48 | 49 | void CalculateGlobalSqzPlot_data(); 50 | void CalculateGlobalSqzPlot(); 51 | 52 | void CalculateSqzPlot_data(); 53 | void CalculateSqzPlot(); 54 | 55 | void CalculateStrainsPlot_data(); 56 | void CalculateStrainsPlot(); 57 | 58 | void CalculateSDI_data(); 59 | void CalculateSDI(); 60 | 61 | void ReferenceGuideLines_data(); 62 | void ReferenceGuideLines(); 63 | }; 64 | 65 | Q_DECLARE_METATYPE(vector) 66 | Q_DECLARE_METATYPE(mitk::DataNode::Pointer) 67 | Q_DECLARE_METATYPE(vector>) 68 | Q_DECLARE_METATYPE(vector) 69 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CemrgTestCommon.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "CemrgTestCommon.hpp" 30 | 31 | constexpr decltype(CemrgTestData::surfacePaths) CemrgTestData::surfacePaths; 32 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/CemrgTestCommon.hpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | // C++ Standard 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | #include 36 | 37 | // Qt 38 | #include 39 | #include 40 | 41 | // Qmitk 42 | #include 43 | #include 44 | #include 45 | #include 46 | #include 47 | 48 | // VTK 49 | #include 50 | #include 51 | 52 | using namespace std; 53 | 54 | struct CemrgTestData { 55 | static constexpr array surfacePaths { 56 | "Data/Surface/Book.stl", 57 | "Data/Surface/ClaronTool.stl", 58 | "Data/Surface/EMTool.stl", 59 | "Data/Surface/ball.stl", 60 | "Data/Surface/binary.stl" 61 | }; 62 | 63 | static constexpr const char *strainPath = "Data/Strain"; 64 | static constexpr size_t strainDataSize = 2; 65 | 66 | static constexpr const char *cmdLinePath = "Data/CommandLine"; 67 | }; 68 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/imgTimes.lst: -------------------------------------------------------------------------------- 1 | /CemrgApp/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/dcm- .nii 2 | 0 0 3 | 1 10 4 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/reg_expected.dof: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/reg_expected.dof -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere.par: -------------------------------------------------------------------------------- 1 | # -*- getpot -*- (GetPot mode activation for emacs) 2 | #------------------------------------------------- 3 | # Data file for meshtools3d utility 4 | #------------------------------------------------- 5 | # this file will be parsered; in this example all options are reported 6 | # if no option is specified, a default one will be taken inside the code 7 | # see CGAL doc for meshing otpions. 8 | 9 | [segmentation] 10 | seg_dir = ./ 11 | seg_name = sphere.inr 12 | mesh_from_segmentation = 0 #1 13 | 14 | [meshing] 15 | facet_angle = 30 16 | facet_size = 0.8 17 | facet_distance = 4 18 | cell_rad_edge_ratio = 2.0 19 | cell_size = 0.8 20 | rescaleFactor = 1000 # rescaling for carp and vtk output 21 | 22 | [laplacesolver] 23 | abs_toll = 1e-6 24 | rel_toll = 1e-6 25 | itr_max = 700 26 | dimKrilovSp = 500 27 | verbose = 1 28 | 29 | [others] 30 | eval_thickness = 1 31 | thickalgo = 1 #1: Martin's algo; 2: Cesare's algo 32 | 33 | [output] 34 | outdir = ../sphereCoarse4ThicknessOUT 35 | name = sphere 36 | out_medit = 1 37 | out_carp = 1 38 | out_carp_binary = 0 39 | out_vtk = 1 40 | out_vtk_binary = 1 41 | out_potential = 1 42 | debug_output = 0 43 | debug_frequency = 500 44 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere_initial.nii: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere_initial.nii -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere_initial.par: -------------------------------------------------------------------------------- 1 | [segmentation] 2 | 3 | seg_dir=./example 4 | seg_name=converted.inr 5 | mesh_from_segmentation=1 6 | 7 | [meshing] 8 | 9 | readTheMesh=0 10 | mesh_dir=. 11 | mesh_name=mesh 12 | 13 | facet_angle=30 14 | facet_size=5.0 15 | facet_distance=4 16 | cell_rad_edge_ratio=2.0 17 | cell_size=1.0 18 | 19 | rescaleFactor=1.0 # rescaling for carp and vtk output 20 | 21 | [laplacesolver] 22 | 23 | abs_toll=1e-6 # Also for evaluating the thickness 24 | rel_toll=1e-6 25 | itr_max=500 26 | dimKrilovSp=150 27 | verbose=0 28 | 29 | [output] 30 | 31 | outdir=. 32 | name=imgmesh 33 | 34 | out_medit=0 35 | out_carp=1 36 | out_carp_binary=0 37 | out_vtk=1 38 | out_vtk_binary=0 39 | out_potential=0 40 | debug_output=0 41 | debug_frequency=10000 42 | 43 | [others] 44 | 45 | eval_thickness=0 46 | thickalgo=1 47 | swapregions=1 48 | verbose=0 49 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere_shifted.nii: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/sphere_shifted.nii -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_1.vtk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_1.vtk -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_2.vtk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_2.vtk -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_3.vtk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/surf_expected_3.vtk -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/tracking_expected.dof: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/tracking_expected.dof -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/transformation_expected.nii: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/transformation_expected.nii -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/translation_expected.dof: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/CommandLine/translation_expected.dof -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Strain/PointSet.mps: -------------------------------------------------------------------------------- 1 | 2 | 3 | 0.1 4 | 5 | 6 | 0 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 0 17 | 0 18 | 75.203122474 19 | -74.9687525661 20 | 8.00000000012 21 | 22 | 23 | 1 24 | 0 25 | 62.5094014283 26 | -88.3714763791 27 | 48.0000000001 28 | 29 | 30 | 2 31 | 0 32 | 89.7821296345 33 | -75.2053317278 34 | 48.0000000001 35 | 36 | 37 | 3 38 | 0 39 | 61.5689625246 40 | -62.5094065283 41 | 48.0000000001 42 | 43 | 44 | 4 45 | 0 46 | 43.328121383 47 | -97.9375033523 48 | 32.0000000001 49 | 50 | 51 | 5 52 | 0 53 | 52.859371367 54 | -61.0625017478 55 | 32.0000000001 56 | 57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Surface/Book.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/Surface/Book.stl -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Surface/ClaronTool.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/Surface/ClaronTool.stl -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Surface/EMTool.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/Surface/EMTool.stl -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Surface/ball.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/Surface/ball.stl -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/Data/Surface/binary.stl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Modules/CemrgAppModule/test/Data/Surface/binary.stl -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/files.cmake: -------------------------------------------------------------------------------- 1 | set(MOC_H_FILES 2 | CemrgCommandLineTest.hpp 3 | CemrgMeasureTest.hpp 4 | CemrgStrainsTest.hpp 5 | ) 6 | 7 | set(CPP_FILES 8 | CemrgTestCommon.cpp 9 | ) 10 | 11 | set(MODULE_TESTS 12 | CemrgCommandLineTest.cpp 13 | CemrgMeasureTest.cpp 14 | CemrgStrainsTest.cpp 15 | ) 16 | 17 | set(MODULE_CUSTOM_TESTS 18 | ) -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/test.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "test.hpp" 30 | 31 | bool TestSuite::myCondition() { 32 | return true; 33 | } 34 | 35 | void TestSuite::initTestCase() { 36 | qDebug("Called before everything else."); 37 | } 38 | 39 | void TestSuite::myFirstTest() { 40 | QVERIFY(true); // check that a condition is satisfied 41 | QCOMPARE(1, 1); // compare two values 42 | } 43 | 44 | void TestSuite::mySecondTest() { 45 | QVERIFY(myCondition()); 46 | QVERIFY(1 != 2); 47 | } 48 | 49 | void TestSuite::cleanupTestCase() { 50 | qDebug("Called after myFirstTest and mySecondTest."); 51 | } 52 | 53 | // TODO: Function name should be the same as the filename 54 | // Therefore, MITK test system can call it 55 | int test(int argc, char *argv[]) { 56 | QCoreApplication app(argc, argv); 57 | app.setAttribute(Qt::AA_Use96Dpi, true); 58 | // TODO: Don't forget to change the class name here 59 | TestSuite tc; 60 | QTEST_SET_MAIN_SOURCE_PATH 61 | return QTest::qExec(&tc, argc, argv); 62 | } 63 | -------------------------------------------------------------------------------- /CemrgApp/Modules/CemrgAppModule/test/test.hpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CEMRGAPPMODULE TESTS 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include 30 | 31 | // An example test class 32 | class TestSuite : public QObject { 33 | 34 | Q_OBJECT 35 | 36 | private: 37 | bool myCondition(); 38 | 39 | private slots: 40 | void initTestCase(); 41 | 42 | void myFirstTest(); 43 | 44 | void mySecondTest(); 45 | 46 | void cleanupTestCase(); 47 | }; 48 | -------------------------------------------------------------------------------- /CemrgApp/Modules/ModuleList.cmake: -------------------------------------------------------------------------------- 1 | set(MITK_MODULES 2 | CemrgAppModule 3 | ) 4 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/PluginList.cmake: -------------------------------------------------------------------------------- 1 | list(APPEND MITK_PLUGIN_REGEX_LIST "^kcl_cemrgapp_[a-zA-Z0-9_]+$") 2 | 3 | set(MITK_PLUGINS 4 | # plugins from this module 5 | kcl.cemrgapp.mainapp:ON 6 | kcl.cemrgapp.easi:ON 7 | kcl.cemrgapp.powertrans:ON 8 | kcl.cemrgapp.mmcwplugin:ON 9 | kcl.cemrgapp.mmeasurement:ON 10 | kcl.cemrgapp.scar:ON 11 | kcl.cemrgapp.wathca:ON 12 | ) 13 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_easi) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE EASI_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | ) 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_easi The Easi Plugin 3 | 4 | \imageMacro{icon.png,"Icon of Easi Plugin",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_easiOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_easi kcl.cemrgapp.easi 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_easi_internal Internal 11 | \ingroup kcl_cemrgapp_easi 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.easi plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_easi_Activator.cpp 7 | EASIView.cpp 8 | ) 9 | 10 | set(UI_FILES 11 | src/internal/EASIViewControls.ui 12 | src/internal/EASIViewUIMeshing.ui 13 | ) 14 | 15 | set(MOC_H_FILES 16 | src/internal/kcl_cemrgapp_easi_Activator.h 17 | src/internal/EASIView.h 18 | ) 19 | 20 | # list of resource files which can be used by the plug-in 21 | # system without loading the plug-ins shared library, 22 | # for example the icon used in the menu and tabs for the 23 | # plug-in views in the workbench 24 | set(CACHED_RESOURCE_FILES 25 | resources/icon.xpm 26 | plugin.xml 27 | ) 28 | 29 | # list of Qt .qrc files which contain additional resources 30 | # specific to this plugin 31 | set(QRC_FILES 32 | 33 | ) 34 | 35 | set(CPP_FILES ) 36 | 37 | foreach(file ${SRC_CPP_FILES}) 38 | set(CPP_FILES ${CPP_FILES} src/${file}) 39 | endforeach(file ${SRC_CPP_FILES}) 40 | 41 | foreach(file ${INTERNAL_CPP_FILES}) 42 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 43 | endforeach(file ${INTERNAL_CPP_FILES}) 44 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "Easi Plugin") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 96 2", 4 | " c None", 5 | ". c #005500", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #038703", 9 | "$ c #048703", 10 | "% c #0A8803", 11 | "& c #108905", 12 | "* c #9C9C9C", 13 | "= c #C8C8C8", 14 | "- c #F0F0F0", 15 | "; c #F9F9F9", 16 | "> c #FAFAFA", 17 | ", c #B1B1B1", 18 | "' c #068804", 19 | ") c #0C8904", 20 | "! c #138904", 21 | "~ c #188B06", 22 | "{ c #1F8B07", 23 | "] c #258B07", 24 | "^ c #2A8D08", 25 | "/ c #C7C7C7", 26 | "( c #F7F7F7", 27 | "_ c #F6F6F6", 28 | ": c #EAEAEA", 29 | "< c #999999", 30 | "[ c #158905", 31 | "} c #1B8A06", 32 | "| c #218B07", 33 | "1 c #278C08", 34 | "2 c #2D8D08", 35 | "3 c #338E09", 36 | "4 c #398F0A", 37 | "5 c #F4F4F4", 38 | "6 c #969696", 39 | "7 c #258C07", 40 | "8 c #308E09", 41 | "9 c #368F0A", 42 | "0 c #3C8F0B", 43 | "a c #428F0B", 44 | "b c #48910C", 45 | "c c #EEEEEE", 46 | "d c #929292", 47 | "e c #338D09", 48 | "f c #398E0A", 49 | "g c #3F900B", 50 | "h c #45900C", 51 | "i c #4B910C", 52 | "j c #51920D", 53 | "k c #57930E", 54 | "l c #E7E7E7", 55 | "m c #DADADA", 56 | "n c #8D8D8D", 57 | "o c #42900B", 58 | "p c #48900C", 59 | "q c #4E910D", 60 | "r c #54920E", 61 | "s c #5A930E", 62 | "t c #609410", 63 | "u c #669510", 64 | "v c #E2E2E2", 65 | "w c #AFAFAF", 66 | "x c #5D940F", 67 | "y c #639510", 68 | "z c #699511", 69 | "A c #6F9612", 70 | "B c #759712", 71 | "C c #DCDCDC", 72 | "D c #C5C5C5", 73 | "E c #858585", 74 | "F c #6C9611", 75 | "G c #719712", 76 | "H c #779712", 77 | "I c #7D9813", 78 | "J c #839914", 79 | "K c #D6D6D6", 80 | "L c #C3C3C3", 81 | "M c #818181", 82 | "N c #809914", 83 | "O c #879A14", 84 | "P c #8D9A15", 85 | "Q c #929B17", 86 | "R c #D1D1D1", 87 | "S c #BDBDBD", 88 | "T c #7D7D7D", 89 | "U c #969B16", 90 | "V c #9B9D17", 91 | "W c #A19E18", 92 | "X c #CFCFCF", 93 | "Y c #797979", 94 | "Z c #AB9F19", 95 | "` c #B09F1A", 96 | " . c #777777", 97 | ".. c #BEA11C", 98 | "+. c #BBBBBB", 99 | "@. c #727272", 100 | " ", 101 | " . . . . + + @ + ", 102 | " . # $ % & . . * = - ; > - , ", 103 | ". ' ) ! ~ { ] ^ / ; ( _ _ ; : < ", 104 | ". [ } | 1 2 3 4 - 5 - - - - _ 6 ", 105 | ". 7 ^ 8 9 0 a b c c c c c c - d ", 106 | ". e f g h i j k : l l l l : m n ", 107 | ". o p q r s t u v v v v v c w ", 108 | " . k x y z A B m C m C : D E ", 109 | " . F G H I J K K K l L M ", 110 | " . N O P Q R R v S T ", 111 | " . U V W X v S Y ", 112 | " . Z ` C S . ", 113 | " . ..+. . ", 114 | " . @. ", 115 | " "}; 116 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/src/internal/EASIView.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Eikonal Activation Simulation (EASI) Plugin for MITK 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef EASIView_h 30 | #define EASIView_h 31 | 32 | #include 33 | #include 34 | #include 35 | #include "ui_EASIViewControls.h" 36 | #include "ui_EASIViewUIMeshing.h" 37 | 38 | /** 39 | \brief EASIView 40 | 41 | \warning This class is not yet documented. Use "git blame" and ask the author to provide basic documentation. 42 | 43 | \sa QmitkAbstractView 44 | \ingroup ${plugin_target}_internal 45 | */ 46 | class EASIView: public QmitkAbstractView { 47 | 48 | // this is needed for all Qt objects that should have a Qt meta-object 49 | // (everything that derives from QObject and wants to have signal/slots) 50 | Q_OBJECT 51 | 52 | public: 53 | 54 | static const std::string VIEW_ID; 55 | 56 | protected slots: 57 | 58 | /// \brief Called when the user clicks the GUI button 59 | void LoadDICOM(); 60 | void ProcessIMGS(); 61 | void ConvertNII(); 62 | void CropinIMGS(); 63 | void ResampIMGS(); 64 | void SegmentIMGS(); 65 | void BrowseM(); 66 | void CreateMesh(); 67 | void ActivationSites(); 68 | void ConfrmSITE(); 69 | void Simulation(); 70 | void LoadMesh(); 71 | void Reset(); 72 | 73 | protected: 74 | 75 | virtual void CreateQtPartControl(QWidget *parent) override; 76 | virtual void SetFocus() override; 77 | /// \brief called by QmitkFunctionality when DataManager's selection has changed 78 | virtual void OnSelectionChanged(berry::IWorkbenchPart::Pointer source, const QList& nodes) override; 79 | 80 | Ui::EASIViewControls m_Controls; 81 | Ui::EASIViewUIMeshing m_UIMeshing; 82 | 83 | private: 84 | 85 | QString directory; 86 | }; 87 | 88 | #endif // EASIView_h 89 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/src/internal/EASIViewUIMeshing.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | EASIViewUIMeshing 4 | 5 | 6 | 7 | 0 8 | 0 9 | 500 10 | 103 11 | 12 | 13 | 14 | 15 | 16777215 16 | 103 17 | 18 | 19 | 20 | Set Values 21 | 22 | 23 | 24 | 25 | 26 | Qt::Vertical 27 | 28 | 29 | QSizePolicy::Expanding 30 | 31 | 32 | 33 | 20 34 | 0 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | Browse 43 | 44 | 45 | 46 | 47 | 48 | 49 | true 50 | 51 | 52 | Qt::Horizontal 53 | 54 | 55 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 56 | 57 | 58 | true 59 | 60 | 61 | 62 | 63 | 64 | 65 | Open text file containing parameters (default = lib) 66 | 67 | 68 | 69 | 70 | 71 | 72 | QLabel { color: rgb(255, 0, 0) } 73 | 74 | 75 | Enter the Correct Paths 76 | 77 | 78 | Qt::AlignCenter 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/src/internal/kcl_cemrgapp_easi_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Eikonal Activation Simulation (EASI) Plugin for MITK 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_easi_Activator.h" 30 | #include "EASIView.h" 31 | 32 | namespace mitk { 33 | 34 | ctkPluginContext* kcl_cemrgapp_easi_Activator::pluginContext = nullptr; 35 | 36 | void kcl_cemrgapp_easi_Activator::start(ctkPluginContext *context) { 37 | BERRY_REGISTER_EXTENSION_CLASS(EASIView, context); 38 | pluginContext = context; 39 | } 40 | 41 | void kcl_cemrgapp_easi_Activator::stop(ctkPluginContext *context) { 42 | Q_UNUSED(context); 43 | pluginContext = nullptr; 44 | } 45 | 46 | ctkPluginContext* kcl_cemrgapp_easi_Activator::getContext() { 47 | return pluginContext; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.easi/src/internal/kcl_cemrgapp_easi_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Eikonal Activation Simulation (EASI) Plugin for MITK 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrg.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_easi_Activator_h 30 | #define kcl_cemrgapp_easi_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_easi_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_easi") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_easi_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_easi_Activator_h 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_mainapp) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE MAINAPP_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | ) 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_mainapp The CemrgApplication 3 | 4 | \imageMacro{icon.png,"Icon of CemrgApplication",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_mainappOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_mainapp kcl.cemrgapp.mainapp 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_mainapp_internal Internal 11 | \ingroup kcl_cemrgapp_mainapp 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.mainapp plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | ) 3 | 4 | set(INTERNAL_CPP_FILES 5 | kcl_cemrgapp_mainapp_Activator.cpp 6 | QmitkCemrgApplication.cpp 7 | QmitkCemrgAppCommonTools.cpp 8 | QmitkCemrgWorkbenchAdvisor.cpp 9 | perspectives/QmitkCemrgJBPerspective.cpp 10 | perspectives/QmitkCemrgHCPerspective.cpp 11 | perspectives/QmitkCemrgRRPerspective.cpp 12 | perspectives/QmitkCemrgEasiPerspective.cpp 13 | perspectives/QmitkCemrgPowertransPerspective.cpp 14 | perspectives/QmitkCemrgWathcaPerspective.cpp 15 | ) 16 | 17 | set(UI_FILES 18 | src/internal/QmitkCemrgAppCartoExport.ui 19 | src/internal/QmitkCemrgAppCommonToolsControls.ui 20 | ) 21 | 22 | set(MOC_H_FILES 23 | src/internal/kcl_cemrgapp_mainapp_Activator.h 24 | src/internal/QmitkCemrgApplication.h 25 | src/internal/QmitkCemrgAppCommonTools.h 26 | src/internal/QmitkCemrgWorkbenchAdvisor.h 27 | src/internal/perspectives/QmitkCemrgJBPerspective.h 28 | src/internal/perspectives/QmitkCemrgHCPerspective.h 29 | src/internal/perspectives/QmitkCemrgRRPerspective.h 30 | src/internal/perspectives/QmitkCemrgEasiPerspective.h 31 | src/internal/perspectives/QmitkCemrgPowertransPerspective.h 32 | src/internal/perspectives/QmitkCemrgWathcaPerspective.h 33 | ) 34 | 35 | # list of resource files which can be used by the plug-in 36 | # system without loading the plug-ins shared library, 37 | # for example the icon used in the menu and tabs for the 38 | # plug-in views in the workbench 39 | set(CACHED_RESOURCE_FILES 40 | plugin.xml 41 | resources/icon.xpm 42 | resources/icon_research.xpm 43 | ) 44 | 45 | # list of Qt .qrc files which contain additional resources 46 | # specific to this plugin 47 | set(QRC_FILES 48 | resources/CemrgApp.qrc 49 | ) 50 | 51 | set(CPP_FILES ) 52 | 53 | foreach(file ${SRC_CPP_FILES}) 54 | set(CPP_FILES ${CPP_FILES} src/${file}) 55 | endforeach(file ${SRC_CPP_FILES}) 56 | 57 | foreach(file ${INTERNAL_CPP_FILES}) 58 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 59 | endforeach(file ${INTERNAL_CPP_FILES}) 60 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "CemrgApplication") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common org.mitk.gui.qt.ext) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 23 | 24 | 25 | 26 | 30 | 31 | 32 | 33 | 37 | 38 | 39 | 40 | 44 | 45 | 46 | 47 | 51 | 52 | 53 | 54 | 58 | 59 | 60 | 61 | 65 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/resources/CemrgApp.qrc: -------------------------------------------------------------------------------- 1 | 2 | 3 | icon.xpm 4 | icon_research.xpm 5 | CemrgAppLogo.png 6 | 7 | 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/resources/CemrgAppLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OpenHeartDevelopers/CemrgApp/69e5e1eb1dff9faab55204482cacea84f0fbd3f4/CemrgApp/Plugins/kcl.cemrgapp.mainapp/resources/CemrgAppLogo.png -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 42 1", 4 | " c None", 5 | ". c #333333", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #4C4C4C", 9 | "$ c #000000", 10 | "% c #9C9C9C", 11 | "& c #C8C8C8", 12 | "* c #F0F0F0", 13 | "= c #F9F9F9", 14 | "- c #FAFAFA", 15 | "; c #B1B1B1", 16 | "> c #666666", 17 | ", c #C7C7C7", 18 | "' c #F7F7F7", 19 | ") c #F6F6F6", 20 | "! c #EAEAEA", 21 | "~ c #999999", 22 | "{ c #F4F4F4", 23 | "] c #969696", 24 | "^ c #EEEEEE", 25 | "/ c #929292", 26 | "( c #E7E7E7", 27 | "_ c #DADADA", 28 | ": c #8D8D8D", 29 | "< c #E2E2E2", 30 | "[ c #AFAFAF", 31 | "} c #DCDCDC", 32 | "| c #C5C5C5", 33 | "1 c #858585", 34 | "2 c #D6D6D6", 35 | "3 c #C3C3C3", 36 | "4 c #818181", 37 | "5 c #191919", 38 | "6 c #D1D1D1", 39 | "7 c #BDBDBD", 40 | "8 c #7D7D7D", 41 | "9 c #CFCFCF", 42 | "0 c #797979", 43 | "a c #777777", 44 | "b c #BBBBBB", 45 | "c c #727272", 46 | " ", 47 | " .... ++@+ ", 48 | " .####.$%&*=-*; ", 49 | ".#####>.,='))=!~", 50 | ".#######*{****)]", 51 | ".#######^^^^^^*/", 52 | "$.######!((((!_:", 53 | "$.#####.<<<<<^[ ", 54 | " $......_}_}!|1 ", 55 | " $.....222(34 ", 56 | " $5...66<78 ", 57 | " $5559<70 ", 58 | " $55}7a ", 59 | " $5ba ", 60 | " $c ", 61 | " "}; 62 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgAppCommonTools.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Common Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QmitkCemrgAppCommonTools_h 30 | #define QmitkCemrgAppCommonTools_h 31 | 32 | #include 33 | #include 34 | #include "ui_QmitkCemrgAppCartoExport.h" 35 | #include "ui_QmitkCemrgAppCommonToolsControls.h" 36 | 37 | /** 38 | \brief QmitkCemrgAppCommonTools 39 | \warning This class is not yet documented. Use "git blame" and ask the author to provide basic documentation. 40 | \sa QmitkAbstractView 41 | \ingroup ${plugin_target}_internal 42 | */ 43 | class QmitkCemrgAppCommonTools: public QmitkAbstractView { 44 | 45 | // this is needed for all Qt objects that should have a Qt meta-object 46 | // (everything that derives from QObject and wants to have signal/slots) 47 | Q_OBJECT 48 | 49 | public: 50 | 51 | static const std::string VIEW_ID; 52 | 53 | protected slots: 54 | 55 | /// \brief Called when the user clicks the GUI button 56 | void LoadMesh(); 57 | void ConvertToCarto(); 58 | void ConvertToCartoUIUpdate(); 59 | void ConvertToCartoUITextUpdate(); 60 | void ConvertCarpToVtk(); 61 | 62 | protected: 63 | 64 | virtual void CreateQtPartControl(QWidget *parent) override; 65 | virtual void SetFocus() override; 66 | virtual void OnSelectionChanged(berry::IWorkbenchPart::Pointer source, const QList& nodes) override; 67 | 68 | Ui::QmitkCemrgAppCommonToolsControls m_Controls; 69 | Ui::QmitkCemrgAppCartoExport m_CartoUIThresholding; 70 | }; 71 | 72 | #endif // QmitkCemrgAppCommonTools_h 73 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgAppCommonToolsControls.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | QmitkCemrgAppCommonToolsControls 4 | 5 | 6 | 7 | 0 8 | 0 9 | 222 10 | 161 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | QmitkTemplate 21 | 22 | 23 | 24 | 25 | 26 | QLabel { color: rgb(255, 0, 0) } 27 | 28 | 29 | CemrgApp Common Tools 30 | 31 | 32 | Qt::AlignCenter 33 | 34 | 35 | 36 | 37 | 38 | 39 | Do image processing 40 | 41 | 42 | Load Mesh 43 | 44 | 45 | 46 | 47 | 48 | 49 | Do image processing 50 | 51 | 52 | Convert to CARTO 53 | 54 | 55 | 56 | 57 | 58 | 59 | Create VTK from Carp files 60 | 61 | 62 | 63 | 64 | 65 | 66 | Qt::Vertical 67 | 68 | 69 | QSizePolicy::Expanding 70 | 71 | 72 | 73 | 20 74 | 220 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgApplication.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgApplication.h" 30 | #include 31 | #include "QmitkCemrgWorkbenchAdvisor.h" 32 | #include 33 | 34 | QmitkCemrgApplication::QmitkCemrgApplication() { 35 | } 36 | 37 | QmitkCemrgApplication::QmitkCemrgApplication(const QmitkCemrgApplication& other) : QObject(other.parent()) { 38 | Q_UNUSED(other) 39 | throw std::runtime_error("Copy constructor not implemented"); 40 | } 41 | 42 | QVariant QmitkCemrgApplication::Start(berry::IApplicationContext* /*context*/) { 43 | 44 | berry::Display* display = berry::PlatformUI::CreateDisplay(); 45 | int code = berry::PlatformUI::CreateAndRunWorkbench(display, new QmitkCemrgWorkbenchAdvisor()); 46 | 47 | //exit the application with an appropriate return code 48 | return code == berry::PlatformUI::RETURN_RESTART ? EXIT_RESTART : EXIT_OK; 49 | } 50 | 51 | void QmitkCemrgApplication::Stop() { 52 | } 53 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgApplication.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QmitkCemrgApplication_h 30 | #define QmitkCemrgApplication_h 31 | 32 | #include 33 | 34 | class QmitkCemrgApplication: public QObject, public berry::IApplication { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IApplication) 38 | 39 | public: 40 | 41 | QmitkCemrgApplication(); 42 | QmitkCemrgApplication(const QmitkCemrgApplication& other); 43 | 44 | QVariant Start(berry::IApplicationContext* context) override; 45 | void Stop() override; 46 | }; 47 | 48 | #endif // QmitkCemrgApplication_h 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgWorkbenchAdvisor.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include 30 | #include 31 | #include "QmitkCemrgWorkbenchAdvisor.h" 32 | #include "kcl_cemrgapp_mainapp_Activator.h" 33 | 34 | const QString QmitkCemrgWorkbenchAdvisor::DEFAULT_PERSPECTIVE_ID = "kcl.cemrgapp.CemrgJBPerspective"; 35 | 36 | void QmitkCemrgWorkbenchAdvisor::Initialize(berry::IWorkbenchConfigurer::Pointer configurer) { 37 | berry::QtWorkbenchAdvisor::Initialize(configurer); 38 | configurer->SetSaveAndRestore(true); 39 | ctkPluginContext* context = mitk::kcl_cemrgapp_mainapp_Activator::GetDefault()->GetPluginContext(); 40 | mitk::WorkbenchUtil::SetDepartmentLogoPreference(":/CemrgApp/CemrgAppLogo.png", context); 41 | } 42 | 43 | berry::WorkbenchWindowAdvisor* QmitkCemrgWorkbenchAdvisor::CreateWorkbenchWindowAdvisor( 44 | berry::IWorkbenchWindowConfigurer::Pointer configurer) { 45 | 46 | // ------------------------------------------------------------------- 47 | // Here you could pass your custom Workbench window advisor 48 | // ------------------------------------------------------------------- 49 | QmitkExtWorkbenchWindowAdvisor* advisor = new QmitkExtWorkbenchWindowAdvisor(this, configurer); 50 | 51 | advisor->ShowViewToolbar(false); 52 | advisor->SetWindowIcon(":/CemrgApp/icon_research.xpm"); 53 | 54 | return advisor; 55 | } 56 | 57 | QString QmitkCemrgWorkbenchAdvisor::GetInitialWindowPerspectiveId() { 58 | return DEFAULT_PERSPECTIVE_ID; 59 | } 60 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/QmitkCemrgWorkbenchAdvisor.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGWORKBENCHADVISOR_H_ 30 | #define QMITKCEMRGWORKBENCHADVISOR_H_ 31 | #ifdef __MINGW32__ 32 | // We need to inlclude winbase.h here in order to declare 33 | // atomic intrinsics like InterlockedIncrement correctly. 34 | // Otherwhise, they would be declared wrong within qatomic_windows.h . 35 | #include 36 | #endif 37 | 38 | #include 39 | 40 | class QmitkCemrgWorkbenchAdvisor: public berry::QtWorkbenchAdvisor { 41 | 42 | public: 43 | 44 | static const QString DEFAULT_PERSPECTIVE_ID; 45 | 46 | void Initialize(berry::IWorkbenchConfigurer::Pointer configurer); 47 | berry::WorkbenchWindowAdvisor* CreateWorkbenchWindowAdvisor(berry::IWorkbenchWindowConfigurer::Pointer configurer) override; 48 | QString GetInitialWindowPerspectiveId() override; 49 | }; 50 | 51 | #endif /*QMITKCEMRGWORKBENCHADVISOR_H_*/ 52 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/kcl_cemrgapp_mainapp_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_mainapp_Activator_h 30 | #define kcl_cemrgapp_mainapp_Activator_h 31 | 32 | #include 33 | #include 34 | 35 | namespace mitk { 36 | 37 | class kcl_cemrgapp_mainapp_Activator: public berry::AbstractUICTKPlugin { 38 | 39 | Q_OBJECT 40 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_mainapp") 41 | Q_INTERFACES(ctkPluginActivator) 42 | 43 | public: 44 | 45 | kcl_cemrgapp_mainapp_Activator(); 46 | ~kcl_cemrgapp_mainapp_Activator() override; 47 | 48 | static kcl_cemrgapp_mainapp_Activator* GetDefault(); 49 | ctkPluginContext* GetPluginContext() const; 50 | void start(ctkPluginContext*) override; 51 | QString GetQtHelpCollectionFile() const; 52 | 53 | private: 54 | 55 | static kcl_cemrgapp_mainapp_Activator* inst; 56 | ctkPluginContext* context; 57 | mutable QString helpCollectionFile; 58 | }; 59 | } 60 | 61 | #endif /* MITK_CEMRGAPP_PLUGIN_ACTIVATOR_H_ */ 62 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgEasiPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgEasiPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgEasiPerspective::QmitkCemrgEasiPerspective() { 33 | } 34 | 35 | QmitkCemrgEasiPerspective::QmitkCemrgEasiPerspective(const QmitkCemrgEasiPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgEasiPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.easi", berry::IPageLayout::LEFT, 0.17f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.6f, "org.mitk.views.easi"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.easi"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgEasiPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGEASIPERSPECTIVE_H_ 30 | #define QMITKCEMRGEASIPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgEasiPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgEasiPerspective(); 42 | QmitkCemrgEasiPerspective(const QmitkCemrgEasiPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | 46 | }; 47 | 48 | #endif /* QMITKCEMRGEASIPERSPECTIVE */ 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgHCPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgHCPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgHCPerspective::QmitkCemrgHCPerspective() { 33 | } 34 | 35 | QmitkCemrgHCPerspective::QmitkCemrgHCPerspective(const QmitkCemrgHCPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgHCPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.scar", berry::IPageLayout::LEFT, 0.17f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.6f, "org.mitk.views.scar"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.scar"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgHCPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGHCPERSPECTIVE_H_ 30 | #define QMITKCEMRGHCPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgHCPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgHCPerspective(); 42 | QmitkCemrgHCPerspective(const QmitkCemrgHCPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | 46 | }; 47 | 48 | #endif /* QMITKCEMRGHCPERSPECTIVE_H_ */ 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgJBPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgJBPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgJBPerspective::QmitkCemrgJBPerspective() { 33 | } 34 | 35 | QmitkCemrgJBPerspective::QmitkCemrgJBPerspective(const QmitkCemrgJBPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgJBPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.mmcw", berry::IPageLayout::LEFT, 0.17f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.5f, "org.mitk.views.mmcw"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.mmcw"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgJBPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGJBPERSPECTIVE_H_ 30 | #define QMITKCEMRGJBPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgJBPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgJBPerspective(); 42 | QmitkCemrgJBPerspective(const QmitkCemrgJBPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | 46 | }; 47 | 48 | #endif /* QMITKCEMRGJBPERSPECTIVE_H_ */ 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgPowertransPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgPowertransPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgPowertransPerspective::QmitkCemrgPowertransPerspective() { 33 | } 34 | 35 | QmitkCemrgPowertransPerspective::QmitkCemrgPowertransPerspective(const QmitkCemrgPowertransPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgPowertransPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.powertrans", berry::IPageLayout::LEFT, 0.17f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.6f, "org.mitk.views.powertrans"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.powertrans"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgPowertransPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGPOWERTRANSPERSPECTIVE_H_ 30 | #define QMITKCEMRGPOWERTRANSPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgPowertransPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgPowertransPerspective(); 42 | QmitkCemrgPowertransPerspective(const QmitkCemrgPowertransPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | 46 | }; 47 | 48 | #endif /* QMITKCEMRGPOWERTRANSPERSPECTIVE */ 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgRRPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgRRPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgRRPerspective::QmitkCemrgRRPerspective() { 33 | } 34 | 35 | QmitkCemrgRRPerspective::QmitkCemrgRRPerspective(const QmitkCemrgRRPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgRRPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.motionmeasurement", berry::IPageLayout::LEFT, 0.35f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.8f, "org.mitk.views.motionmeasurement"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.motionmeasurement"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgRRPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGRRPERSPECTIVE_H_ 30 | #define QMITKCEMRGRRPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgRRPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgRRPerspective(); 42 | QmitkCemrgRRPerspective(const QmitkCemrgRRPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | 46 | }; 47 | 48 | #endif /* QMITKCEMRGRRPERSPECTIVE_H_ */ 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgWathcaPerspective.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "QmitkCemrgWathcaPerspective.h" 30 | #include "berryIViewLayout.h" 31 | 32 | QmitkCemrgWathcaPerspective::QmitkCemrgWathcaPerspective() { 33 | } 34 | 35 | QmitkCemrgWathcaPerspective::QmitkCemrgWathcaPerspective(const QmitkCemrgWathcaPerspective& other) : QObject() { 36 | 37 | Q_UNUSED(other) 38 | throw std::runtime_error("Copy constructor not implemented"); 39 | } 40 | 41 | void QmitkCemrgWathcaPerspective::CreateInitialLayout(berry::IPageLayout::Pointer layout) { 42 | 43 | QString editorArea = layout->GetEditorArea(); 44 | layout->AddView("org.mitk.views.wathcaview", berry::IPageLayout::LEFT, 0.17f, editorArea); 45 | berry::IFolderLayout::Pointer folder = layout->CreateFolder( 46 | "folder", berry::IPageLayout::BOTTOM, 0.6f, "org.mitk.views.wathcaview"); 47 | folder->AddView("org.mitk.views.datamanager"); 48 | berry::IViewLayout::Pointer lo = layout->GetViewLayout("org.mitk.views.wathcaview"); 49 | lo->SetCloseable(false); 50 | } 51 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mainapp/src/internal/perspectives/QmitkCemrgWathcaPerspective.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * CemrgApp Main App 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef QMITKCEMRGWATHCAPERSPECTIVE_H_ 30 | #define QMITKCEMRGWATHCAPERSPECTIVE_H_ 31 | 32 | #include 33 | 34 | class QmitkCemrgWathcaPerspective : public QObject, public berry::IPerspectiveFactory { 35 | 36 | Q_OBJECT 37 | Q_INTERFACES(berry::IPerspectiveFactory) 38 | 39 | public: 40 | 41 | QmitkCemrgWathcaPerspective(); 42 | QmitkCemrgWathcaPerspective(const QmitkCemrgWathcaPerspective& other); 43 | 44 | void CreateInitialLayout(berry::IPageLayout::Pointer layout); 45 | }; 46 | 47 | #endif /* QMITKCEMRGWATHCAPERSPECTIVE */ 48 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_mmcwplugin) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE MMCWPLUGIN_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | PACKAGE_DEPENDS PRIVATE ITK 8 | ) 9 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_mmcwplugin The MMCW Plot Plugin 3 | 4 | \imageMacro{icon.png,"Icon of MMCW Plot Plugin",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_mmcwpluginOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_mmcwplugin kcl.cemrgapp.mmcwplugin 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_mmcwplugin_internal Internal 11 | \ingroup kcl_cemrgapp_mmcwplugin 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.mmcwplugin plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_mmcwplugin_Activator.cpp 7 | MmcwView.cpp 8 | MmcwViewPlot.cpp 9 | ) 10 | 11 | set(UI_FILES 12 | src/internal/MmcwViewControls.ui 13 | src/internal/MmcwViewPlotControls.ui 14 | src/internal/MmcwViewUIMeshing.ui 15 | src/internal/MmcwViewUIApplying.ui 16 | src/internal/MmcwViewUITracking.ui 17 | ) 18 | 19 | set(MOC_H_FILES 20 | src/internal/kcl_cemrgapp_mmcwplugin_Activator.h 21 | src/internal/MmcwView.h 22 | src/internal/MmcwViewPlot.h 23 | ) 24 | 25 | # list of resource files which can be used by the plug-in 26 | # system without loading the plug-ins shared library, 27 | # for example the icon used in the menu and tabs for the 28 | # plug-in views in the workbench 29 | set(CACHED_RESOURCE_FILES 30 | resources/icon.xpm 31 | plugin.xml 32 | ) 33 | 34 | # list of Qt .qrc files which contain additional resources 35 | # specific to this plugin 36 | set(QRC_FILES 37 | 38 | ) 39 | 40 | set(CPP_FILES ) 41 | 42 | foreach(file ${SRC_CPP_FILES}) 43 | set(CPP_FILES ${CPP_FILES} src/${file}) 44 | endforeach(file ${SRC_CPP_FILES}) 45 | 46 | foreach(file ${INTERNAL_CPP_FILES}) 47 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 48 | endforeach(file ${INTERNAL_CPP_FILES}) 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "MMCW Plot Plugin") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char *Free_Converter_com_1453763767_heart_half_56152022[] = { 3 | /* columns rows colors chars-per-pixel */ 4 | "16 16 102 2 ", 5 | " c #727272", 6 | ". c gray46", 7 | "X c #777777", 8 | "o c #797979", 9 | "O c gray49", 10 | "+ c #901212", 11 | "@ c #931412", 12 | "# c #971511", 13 | "$ c #9A1512", 14 | "% c #9E1813", 15 | "& c #A5140E", 16 | "* c #A9170F", 17 | "= c #B2160D", 18 | "- c #B5160C", 19 | "; c #B7170C", 20 | ": c #B0180F", 21 | "> c #A31912", 22 | ", c #A51B14", 23 | "< c #B32511", 24 | "1 c #B72A13", 25 | "2 c #BC2F16", 26 | "3 c #B22218", 27 | "4 c #BE2A1D", 28 | "5 c #C33214", 29 | "6 c #C1351A", 30 | "7 c #C73718", 31 | "8 c #CB3E1C", 32 | "9 c #C84020", 33 | "0 c #C84429", 34 | "q c #CF4A28", 35 | "w c #D24B27", 36 | "e c #D95A33", 37 | "r c #D55E4B", 38 | "t c #D86754", 39 | "y c #E16841", 40 | "u c #E16942", 41 | "i c #E26B44", 42 | "p c #E8774F", 43 | "a c #ED835B", 44 | "s c #EE845C", 45 | "d c #EF8963", 46 | "f c #F28E68", 47 | "g c #F28F69", 48 | "h c #E98E76", 49 | "j c #EE967E", 50 | "k c #F69773", 51 | "l c #F69874", 52 | "z c #F49876", 53 | "x c #F79D7B", 54 | "c c #F79F7E", 55 | "v c #818181", 56 | "b c gray52", 57 | "n c #8D8D8D", 58 | "m c #929292", 59 | "M c gray59", 60 | "N c gray60", 61 | "B c gray61", 62 | "V c #9F9F9F", 63 | "C c #A5A5A5", 64 | "Z c #AFAFAF", 65 | "A c #B1B1B1", 66 | "S c #BBBBBB", 67 | "D c gray74", 68 | "F c gray", 69 | "G c #F29F82", 70 | "H c #F3A086", 71 | "J c #F8A98C", 72 | "K c #FAAD92", 73 | "L c #FAAE93", 74 | "P c #C0C0C0", 75 | "I c #C3C3C3", 76 | "U c #C5C5C5", 77 | "Y c gray78", 78 | "T c #C8C8C8", 79 | "R c gray81", 80 | "E c gray82", 81 | "W c gray84", 82 | "Q c #DADADA", 83 | "! c gainsboro", 84 | "~ c gray87", 85 | "^ c gray88", 86 | "/ c #E1E1E1", 87 | "( c #E2E2E2", 88 | ") c #E4E4E4", 89 | "_ c #E7E7E7", 90 | "` c gray91", 91 | "' c #EAEAEA", 92 | "] c #ECECEC", 93 | "[ c gray93", 94 | "{ c #EEEEEE", 95 | "} c gray94", 96 | "| c #F1F1F1", 97 | " . c gray95", 98 | ".. c #F3F3F3", 99 | "X. c #F4F4F4", 100 | "o. c gray96", 101 | "O. c #F6F6F6", 102 | "+. c gray97", 103 | "@. c #F8F8F8", 104 | "#. c #F9F9F9", 105 | "$. c gray98", 106 | "%. c None", 107 | /* pixels */ 108 | "%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.", 109 | "%.%.; ; ; - %.%.%.%.V V C V %.%.", 110 | "%.4 j L L H r - B T } #.$.} A %.", 111 | "= h c k k x J t Y #.+.O.O.#.' N ", 112 | ": z g g f f g H } X.} } } } O.M ", 113 | "3 a s s s a s d { { { { { { } m ", 114 | "* i p p p p p p ' _ _ _ _ ' Q n ", 115 | "& 0 y y y y y i ( ( ( ( ( { Z %.", 116 | "%., q e e e e e Q ! Q ! ' U b %.", 117 | "%.%.> 9 w w w w W W W _ I v %.%.", 118 | "%.%.%.% 6 8 8 8 E E ( D O %.%.%.", 119 | "%.%.%.%.$ 2 7 7 R ( D o %.%.%.%.", 120 | "%.%.%.%.%.# 1 5 ! D X %.%.%.%.%.", 121 | "%.%.%.%.%.%.@ < S X %.%.%.%.%.%.", 122 | "%.%.%.%.%.%.%.+ %.%.%.%.%.%.%.", 123 | "%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%." 124 | }; 125 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/src/internal/MmcwView.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Motion Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef MmcwView_h 30 | #define MmcwView_h 31 | 32 | #include 33 | #include 34 | #include 35 | #include "ui_MmcwViewControls.h" 36 | #include "ui_MmcwViewUIMeshing.h" 37 | #include "ui_MmcwViewUITracking.h" 38 | #include "ui_MmcwViewUIApplying.h" 39 | 40 | /** 41 | \brief MmcwView 42 | \warning This class is not yet documented. Use "git blame" and ask the author to provide basic documentation. 43 | \sa QmitkAbstractView 44 | \ingroup ${plugin_target}_internal 45 | */ 46 | class MmcwView: public QmitkAbstractView { 47 | 48 | // this is needed for all Qt objects that should have a Qt meta-object 49 | // (everything that derives from QObject and wants to have signal/slots) 50 | Q_OBJECT 51 | 52 | public: 53 | 54 | static const std::string VIEW_ID; 55 | MmcwView(); 56 | 57 | protected slots: 58 | 59 | /// \brief Called when the user clicks the GUI button 60 | void LoadDICOM(); 61 | void ProcessIMGS(); 62 | void ConvertNII(); 63 | void CropinIMGS(); 64 | void ResampIMGS(); 65 | void SegmentIMGS(); 66 | void CreateSurf(); 67 | void TrackingIMGS(); 68 | void BrowseT(const QString& buttDir); 69 | void BrowseA(const QString& buttDir); 70 | void Tracking(); 71 | void Applying(); 72 | void Demoings(); 73 | void LandmarkSelection(); 74 | void Plotting(); 75 | void Reset(); 76 | 77 | protected: 78 | 79 | virtual void CreateQtPartControl(QWidget *parent) override; 80 | virtual void SetFocus() override; 81 | /// \brief called by QmitkFunctionality when DataManager's selection has changed 82 | virtual void OnSelectionChanged(berry::IWorkbenchPart::Pointer source, const QList& nodes) override; 83 | 84 | Ui::MmcwViewControls m_Controls; 85 | Ui::MmcwViewUIMeshing m_UIMeshing; 86 | Ui::MmcwViewUITracking m_UITracking; 87 | Ui::MmcwViewUIApplying m_UIApplying; 88 | 89 | private: 90 | 91 | int timePoints; 92 | QString directory; 93 | }; 94 | 95 | #endif // MmcwView_h 96 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/src/internal/MmcwViewUIMeshing.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | MmcwViewUIMeshing 4 | 5 | 6 | 7 | 0 8 | 0 9 | 216 10 | 196 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | 21 | 0 22 | 196 23 | 24 | 25 | 26 | 27 | 16777215 28 | 196 29 | 30 | 31 | 32 | Set Values 33 | 34 | 35 | 36 | 37 | 38 | QLabel { color: rgb(255, 0, 0) } 39 | 40 | 41 | Enter Algorithms Parameters 42 | 43 | 44 | Qt::AlignCenter 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | Iteration (default = 1) 55 | 56 | 57 | 58 | 59 | 60 | 61 | Threshold (default = 0.5) 62 | 63 | 64 | 65 | 66 | 67 | 68 | Blur (default = 0) 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | Smooth (default = 10) 79 | 80 | 81 | 82 | 83 | 84 | 85 | true 86 | 87 | 88 | Qt::Horizontal 89 | 90 | 91 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 92 | 93 | 94 | true 95 | 96 | 97 | 98 | 99 | 100 | 101 | Qt::Vertical 102 | 103 | 104 | QSizePolicy::Expanding 105 | 106 | 107 | 108 | 20 109 | 0 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/src/internal/kcl_cemrgapp_mmcwplugin_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Motion Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_mmcwplugin_Activator.h" 30 | #include "MmcwView.h" 31 | #include "MmcwViewPlot.h" 32 | 33 | namespace mitk { 34 | 35 | ctkPluginContext* kcl_cemrgapp_mmcwplugin_Activator::pluginContext = nullptr; 36 | 37 | void kcl_cemrgapp_mmcwplugin_Activator::start(ctkPluginContext *context) { 38 | BERRY_REGISTER_EXTENSION_CLASS(MmcwView, context); 39 | BERRY_REGISTER_EXTENSION_CLASS(MmcwViewPlot, context); 40 | pluginContext = context; 41 | } 42 | 43 | void kcl_cemrgapp_mmcwplugin_Activator::stop(ctkPluginContext *context) { 44 | Q_UNUSED(context) 45 | pluginContext = nullptr; 46 | } 47 | 48 | ctkPluginContext* kcl_cemrgapp_mmcwplugin_Activator::getContext() { 49 | return pluginContext; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmcwplugin/src/internal/kcl_cemrgapp_mmcwplugin_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Motion Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_mmcwplugin_Activator_h 30 | #define kcl_cemrgapp_mmcwplugin_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_mmcwplugin_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_mmcwplugin") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_mmcwplugin_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_mmcwplugin_Activator_h 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_mmeasurement) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE MMEASUREMENT_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | ) 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_mmeasurement The Mmeasurement Plugin 3 | 4 | \imageMacro{icon.png,"Icon of Mmeasurement Plugin",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_mmeasurementOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_mmeasurement kcl.cemrgapp.mmeasurement 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_mmeasurement_internal Internal 11 | \ingroup kcl_cemrgapp_mmeasurement 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.mmeasurement plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_mmeasurement_Activator.cpp 7 | MmeasurementView.cpp 8 | ) 9 | 10 | set(UI_FILES 11 | src/internal/MmeasurementViewControls.ui 12 | src/internal/MmeasurementViewUIApplying.ui 13 | src/internal/MmeasurementViewUITracking.ui 14 | ) 15 | 16 | set(MOC_H_FILES 17 | src/internal/kcl_cemrgapp_mmeasurement_Activator.h 18 | src/internal/MmeasurementView.h 19 | ) 20 | 21 | # list of resource files which can be used by the plug-in 22 | # system without loading the plug-ins shared library, 23 | # for example the icon used in the menu and tabs for the 24 | # plug-in views in the workbench 25 | set(CACHED_RESOURCE_FILES 26 | resources/icon.xpm 27 | plugin.xml 28 | ) 29 | 30 | # list of Qt .qrc files which contain additional resources 31 | # specific to this plugin 32 | set(QRC_FILES 33 | 34 | ) 35 | 36 | set(CPP_FILES ) 37 | 38 | foreach(file ${SRC_CPP_FILES}) 39 | set(CPP_FILES ${CPP_FILES} src/${file}) 40 | endforeach(file ${SRC_CPP_FILES}) 41 | 42 | foreach(file ${INTERNAL_CPP_FILES}) 43 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 44 | endforeach(file ${INTERNAL_CPP_FILES}) 45 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "Mmeasurement Plugin") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 76 1", 4 | " c None", 5 | ". c #6B0000", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #6B0100", 9 | "$ c #6C0000", 10 | "% c #9C9C9C", 11 | "& c #C8C8C8", 12 | "* c #F0F0F0", 13 | "= c #F9F9F9", 14 | "- c #FAFAFA", 15 | "; c #B1B1B1", 16 | "> c #6F0706", 17 | ", c #C7C7C7", 18 | "' c #F7F7F7", 19 | ") c #F6F6F6", 20 | "! c #EAEAEA", 21 | "~ c #999999", 22 | "{ c #6F0707", 23 | "] c #710A0A", 24 | "^ c #751111", 25 | "/ c #F4F4F4", 26 | "( c #969696", 27 | "_ c #6F0606", 28 | ": c #791818", 29 | "< c #7D1F1E", 30 | "[ c #EEEEEE", 31 | "} c #929292", 32 | "| c #730E0D", 33 | "1 c #791718", 34 | "2 c #7D1F1F", 35 | "3 c #812525", 36 | "4 c #852D2D", 37 | "5 c #E7E7E7", 38 | "6 c #DADADA", 39 | "7 c #8D8D8D", 40 | "8 c #7D1E1E", 41 | "9 c #812626", 42 | "0 c #852D2C", 43 | "a c #893333", 44 | "b c #8B3737", 45 | "c c #E2E2E2", 46 | "d c #AFAFAF", 47 | "e c #802625", 48 | "f c #852C2D", 49 | "g c #8E3D3E", 50 | "h c #934444", 51 | "i c #DCDCDC", 52 | "j c #C5C5C5", 53 | "k c #858585", 54 | "l c #8C3A3A", 55 | "m c #8F3D3E", 56 | "n c #924444", 57 | "o c #964B4B", 58 | "p c #9A5252", 59 | "q c #D6D6D6", 60 | "r c #C3C3C3", 61 | "s c #818181", 62 | "t c #964B4A", 63 | "u c #9B5251", 64 | "v c #9E5858", 65 | "w c #A25F5F", 66 | "x c #D1D1D1", 67 | "y c #BDBDBD", 68 | "z c #7D7D7D", 69 | "A c #A35F5F", 70 | "B c #A56262", 71 | "C c #A86A6A", 72 | "D c #CFCFCF", 73 | "E c #797979", 74 | "F c #AC7070", 75 | "G c #B07777", 76 | "H c #777777", 77 | "I c #B88585", 78 | "J c #BBBBBB", 79 | "K c #727272", 80 | " ", 81 | " .... ++@+ ", 82 | " ..#$...%&*=-*; ", 83 | ".......>,='))=!~", 84 | ".$...{]^*/****)(", 85 | "..#_]^:<[[[[[[*}", 86 | ".>|^1234!5555!67", 87 | ".^:890abccccc[d ", 88 | " .efabgh6i6i!jk ", 89 | " .lmnopqqq5rs ", 90 | " .tuvwxxcyz ", 91 | " .ABCDcyE ", 92 | " .FGiyH ", 93 | " .IJH ", 94 | " .K ", 95 | " "}; 96 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/src/internal/MmeasurementView.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Anatomical Measurements 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef MmeasurementView_h 30 | #define MmeasurementView_h 31 | 32 | #include 33 | #include 34 | #include 35 | #include "ui_MmeasurementViewControls.h" 36 | #include "ui_MmeasurementViewUIApplying.h" 37 | #include "ui_MmeasurementViewUITracking.h" 38 | 39 | /** 40 | \brief MmeasurementView 41 | 42 | \warning This class is not yet documented. Use "git blame" and ask the author to provide basic documentation. 43 | 44 | \sa QmitkAbstractView 45 | \ingroup ${plugin_target}_internal 46 | */ 47 | class MmeasurementView: public QmitkAbstractView { 48 | 49 | // this is needed for all Qt objects that should have a Qt meta-object 50 | // (everything that derives from QObject and wants to have signal/slots) 51 | Q_OBJECT 52 | 53 | public: 54 | 55 | static const std::string VIEW_ID; 56 | MmeasurementView(); 57 | 58 | protected slots: 59 | 60 | /// \brief Called when the user clicks the GUI button 61 | void LoadDICOM(); 62 | void ProcessIMGS(); 63 | void ConvertNII(); 64 | void CropinIMGS(); 65 | void ResampIMGS(); 66 | void TrackingButton(); 67 | void BrowseT(const QString& buttDir); 68 | void BrowseA(const QString& buttDir); 69 | void Tracking(); 70 | void Applying(); 71 | void SelectLandmark(); 72 | void WriteFileButton(); 73 | void CalcDistButton(); 74 | void CalcPeriButton(); 75 | void CalcAreaButton(); 76 | void FindCentre(); 77 | void Reset(); 78 | 79 | protected: 80 | 81 | virtual void CreateQtPartControl(QWidget *parent) override; 82 | virtual void SetFocus() override; 83 | /// \brief called by QmitkFunctionality when DataManager's selection has changed 84 | virtual void OnSelectionChanged(berry::IWorkbenchPart::Pointer source, const QList& nodes) override; 85 | 86 | Ui::MmeasurementViewControls m_Controls; 87 | Ui::MmeasurementViewUITracking m_UITracking; 88 | Ui::MmeasurementViewUIApplying m_UIApplying; 89 | 90 | private: 91 | 92 | int timePoints; 93 | int smoothness; 94 | QString directory; 95 | std::vector plotValueVectors; 96 | }; 97 | 98 | #endif // MmeasurementView_h 99 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/src/internal/kcl_cemrgapp_mmeasurement_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Anatomical Measurements 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_mmeasurement_Activator.h" 30 | #include "MmeasurementView.h" 31 | 32 | namespace mitk { 33 | 34 | ctkPluginContext* kcl_cemrgapp_mmeasurement_Activator::pluginContext = nullptr; 35 | 36 | void kcl_cemrgapp_mmeasurement_Activator::start(ctkPluginContext *context) { 37 | BERRY_REGISTER_EXTENSION_CLASS(MmeasurementView, context); 38 | pluginContext = context; 39 | } 40 | 41 | void kcl_cemrgapp_mmeasurement_Activator::stop(ctkPluginContext *context) { 42 | Q_UNUSED(context) 43 | pluginContext = nullptr; 44 | } 45 | 46 | ctkPluginContext* kcl_cemrgapp_mmeasurement_Activator::getContext() { 47 | return pluginContext; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.mmeasurement/src/internal/kcl_cemrgapp_mmeasurement_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Anatomical Measurements 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_mmeasurement_Activator_h 30 | #define kcl_cemrgapp_mmeasurement_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_mmeasurement_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_mmeasurement") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_mmeasurement_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_mmeasurement_Activator_h 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_powertrans) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE POWERTRANS_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | ) 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_powertrans The Powertrans Plugin 3 | 4 | \imageMacro{icon.png,"Icon of Powertrans Plugin",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_powertransOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_powertrans kcl.cemrgapp.powertrans 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_powertrans_internal Internal 11 | \ingroup kcl_cemrgapp_powertrans 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.powertrans plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_powertrans_Activator.cpp 7 | powertransView.cpp 8 | ) 9 | 10 | set(UI_FILES 11 | src/internal/powertransViewControls.ui 12 | src/internal/powertransViewUIRibSpacing.ui 13 | src/internal/powertransViewUIAhaInput.ui 14 | ) 15 | 16 | set(MOC_H_FILES 17 | src/internal/kcl_cemrgapp_powertrans_Activator.h 18 | src/internal/powertransView.h 19 | ) 20 | 21 | # list of resource files which can be used by the plug-in 22 | # system without loading the plug-ins shared library, 23 | # for example the icon used in the menu and tabs for the 24 | # plug-in views in the workbench 25 | set(CACHED_RESOURCE_FILES 26 | resources/icon.xpm 27 | plugin.xml 28 | ) 29 | 30 | # list of Qt .qrc files which contain additional resources 31 | # specific to this plugin 32 | set(QRC_FILES 33 | 34 | ) 35 | 36 | set(CPP_FILES ) 37 | 38 | foreach(file ${SRC_CPP_FILES}) 39 | set(CPP_FILES ${CPP_FILES} src/${file}) 40 | endforeach(file ${SRC_CPP_FILES}) 41 | 42 | foreach(file ${INTERNAL_CPP_FILES}) 43 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 44 | endforeach(file ${INTERNAL_CPP_FILES}) 45 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "Cemrg Powertrans Plugin") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 96 2", 4 | " c None", 5 | ". c #005500", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #038703", 9 | "$ c #048703", 10 | "% c #0A8803", 11 | "& c #108905", 12 | "* c #9C9C9C", 13 | "= c #C8C8C8", 14 | "- c #F0F0F0", 15 | "; c #F9F9F9", 16 | "> c #FAFAFA", 17 | ", c #B1B1B1", 18 | "' c #068804", 19 | ") c #0C8904", 20 | "! c #138904", 21 | "~ c #188B06", 22 | "{ c #1F8B07", 23 | "] c #258B07", 24 | "^ c #2A8D08", 25 | "/ c #C7C7C7", 26 | "( c #F7F7F7", 27 | "_ c #F6F6F6", 28 | ": c #EAEAEA", 29 | "< c #999999", 30 | "[ c #158905", 31 | "} c #1B8A06", 32 | "| c #218B07", 33 | "1 c #278C08", 34 | "2 c #2D8D08", 35 | "3 c #338E09", 36 | "4 c #398F0A", 37 | "5 c #F4F4F4", 38 | "6 c #969696", 39 | "7 c #258C07", 40 | "8 c #308E09", 41 | "9 c #368F0A", 42 | "0 c #3C8F0B", 43 | "a c #428F0B", 44 | "b c #48910C", 45 | "c c #EEEEEE", 46 | "d c #929292", 47 | "e c #338D09", 48 | "f c #398E0A", 49 | "g c #3F900B", 50 | "h c #45900C", 51 | "i c #4B910C", 52 | "j c #51920D", 53 | "k c #57930E", 54 | "l c #E7E7E7", 55 | "m c #DADADA", 56 | "n c #8D8D8D", 57 | "o c #42900B", 58 | "p c #48900C", 59 | "q c #4E910D", 60 | "r c #54920E", 61 | "s c #5A930E", 62 | "t c #609410", 63 | "u c #669510", 64 | "v c #E2E2E2", 65 | "w c #AFAFAF", 66 | "x c #5D940F", 67 | "y c #639510", 68 | "z c #699511", 69 | "A c #6F9612", 70 | "B c #759712", 71 | "C c #DCDCDC", 72 | "D c #C5C5C5", 73 | "E c #858585", 74 | "F c #6C9611", 75 | "G c #719712", 76 | "H c #779712", 77 | "I c #7D9813", 78 | "J c #839914", 79 | "K c #D6D6D6", 80 | "L c #C3C3C3", 81 | "M c #818181", 82 | "N c #809914", 83 | "O c #879A14", 84 | "P c #8D9A15", 85 | "Q c #929B17", 86 | "R c #D1D1D1", 87 | "S c #BDBDBD", 88 | "T c #7D7D7D", 89 | "U c #969B16", 90 | "V c #9B9D17", 91 | "W c #A19E18", 92 | "X c #CFCFCF", 93 | "Y c #797979", 94 | "Z c #AB9F19", 95 | "` c #B09F1A", 96 | " . c #777777", 97 | ".. c #BEA11C", 98 | "+. c #BBBBBB", 99 | "@. c #727272", 100 | " ", 101 | " . . . . + + @ + ", 102 | " . # $ % & . . * = - ; > - , ", 103 | ". ' ) ! ~ { ] ^ / ; ( _ _ ; : < ", 104 | ". [ } | 1 2 3 4 - 5 - - - - _ 6 ", 105 | ". 7 ^ 8 9 0 a b c c c c c c - d ", 106 | ". e f g h i j k : l l l l : m n ", 107 | ". o p q r s t u v v v v v c w ", 108 | " . k x y z A B m C m C : D E ", 109 | " . F G H I J K K K l L M ", 110 | " . N O P Q R R v S T ", 111 | " . U V W X v S Y ", 112 | " . Z ` C S . ", 113 | " . ..+. . ", 114 | " . @. ", 115 | " "}; 116 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/src/internal/kcl_cemrgapp_powertrans_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Power Transmitter Calculations Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * angela.lee@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_powertrans_Activator.h" 30 | #include "powertransView.h" 31 | 32 | namespace mitk { 33 | 34 | ctkPluginContext* kcl_cemrgapp_powertrans_Activator::pluginContext = nullptr; 35 | 36 | void kcl_cemrgapp_powertrans_Activator::start(ctkPluginContext *context) { 37 | BERRY_REGISTER_EXTENSION_CLASS(powertransView, context); 38 | pluginContext = context; 39 | } 40 | 41 | void kcl_cemrgapp_powertrans_Activator::stop(ctkPluginContext *context) { 42 | Q_UNUSED(context) 43 | pluginContext = nullptr; 44 | } 45 | 46 | ctkPluginContext* kcl_cemrgapp_powertrans_Activator::getContext() { 47 | return pluginContext; 48 | } 49 | } 50 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/src/internal/kcl_cemrgapp_powertrans_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Power Transmitter Calculations Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * angela.lee@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_powertrans_Activator_h 30 | #define kcl_cemrgapp_powertrans_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_powertrans_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_powertrans") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_powertrans_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_powertrans_Activator_h 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/src/internal/powertransView.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Power Transmitter Calculations Tools 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * angela.lee@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef powertransView_h 30 | #define powertransView_h 31 | 32 | #include 33 | #include 34 | #include 35 | #include "ui_powertransViewControls.h" 36 | #include "ui_powertransViewUIRibSpacing.h" 37 | #include "ui_powertransViewUIAhaInput.h" 38 | #include "CemrgPower.h" 39 | 40 | /** 41 | \brief powertransView 42 | 43 | \warning This class is not yet documented. Use "git blame" and ask the author to provide basic documentation. 44 | 45 | \sa QmitkAbstractView 46 | \ingroup ${plugin_target}_internal 47 | */ 48 | class powertransView: public QmitkAbstractView { 49 | 50 | // this is needed for all Qt objects that should have a Qt meta-object 51 | // (everything that derives from QObject and wants to have signal/slots) 52 | Q_OBJECT 53 | 54 | public: 55 | 56 | static const std::string VIEW_ID; 57 | 58 | protected slots: 59 | 60 | /// \brief Called when the user clicks the GUI button 61 | void LoadDICOM(); 62 | void ProcessIMGS(); 63 | void ConvertNII(); 64 | void CropinIMGS(); 65 | void ResampIMGS(); 66 | void VolumeRendering(); 67 | void MapPowerTop(); 68 | void ResetRibSpacing(); 69 | void LandmarkSelection(); 70 | void MapPowerTransLM(); 71 | //void ConfirmSite(); 72 | void CalcPowerTop(); 73 | void LoadMesh(); 74 | void CalculatePower(); 75 | void MapAHATop(); 76 | void AHALandmarkSelection(); 77 | void MapAHAfromInput(); 78 | void MapAHA(); 79 | void Reset(); 80 | 81 | protected: 82 | 83 | virtual void CreateQtPartControl(QWidget *parent) override; 84 | virtual void SetFocus() override; 85 | /// \brief called by QmitkFunctionality when DataManager's selection has changed 86 | virtual void OnSelectionChanged(berry::IWorkbenchPart::Pointer source, const QList& nodes) override; 87 | 88 | Ui::powertransViewControls m_Controls; 89 | Ui::powertransViewUIRibSpacing m_UIRibSpacing; 90 | Ui::powertransViewUIAhaInput m_UIAhaInput; 91 | 92 | private: 93 | 94 | QString directory; 95 | int ribSpacing = 0; 96 | std::unique_ptr power; 97 | }; 98 | 99 | #endif // powertransView_h 100 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/src/internal/powertransViewUIAhaInput.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | powertransViewUIAhaInput 4 | 5 | 6 | true 7 | 8 | 9 | 10 | 0 11 | 0 12 | 400 13 | 128 14 | 15 | 16 | 17 | 18 | 0 19 | 0 20 | 21 | 22 | 23 | 24 | 16777215 25 | 128 26 | 27 | 28 | 29 | Set Values 30 | 31 | 32 | 33 | 34 | 35 | Browse 36 | 37 | 38 | 39 | 40 | 41 | 42 | Open the landmark points mps file 43 | 44 | 45 | 46 | 47 | 48 | 49 | true 50 | 51 | 52 | Qt::Horizontal 53 | 54 | 55 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 56 | 57 | 58 | true 59 | 60 | 61 | 62 | 63 | 64 | 65 | Browse 66 | 67 | 68 | 69 | 70 | 71 | 72 | QLabel { color: rgb(255, 0, 0) } 73 | 74 | 75 | Enter the Paths 76 | 77 | 78 | Qt::AlignCenter 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | Open the input endo surface mesh 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.powertrans/src/internal/powertransViewUIRibSpacing.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | powertransViewUIRibSpacing 4 | 5 | 6 | 7 | 0 8 | 0 9 | 319 10 | 151 11 | 12 | 13 | 14 | Set Values 15 | 16 | 17 | 18 | true 19 | 20 | 21 | 22 | 100 23 | 100 24 | 166 25 | 25 26 | 27 | 28 | 29 | Qt::Horizontal 30 | 31 | 32 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 33 | 34 | 35 | true 36 | 37 | 38 | 39 | 40 | 41 | 30 42 | 10 43 | 211 44 | 17 45 | 46 | 47 | 48 | 49 | 75 50 | true 51 | 52 | 53 | 54 | Step 2: Select Landmarks 55 | 56 | 57 | Qt::AlignCenter 58 | 59 | 60 | 61 | 62 | 63 | 210 64 | 50 65 | 40 66 | 25 67 | 68 | 69 | 70 | 71 | 40 72 | 0 73 | 74 | 75 | 76 | 77 | 40 78 | 16777215 79 | 80 | 81 | 82 | false 83 | 84 | 85 | 5 86 | 87 | 88 | 89 | 90 | 91 | 10 92 | 30 93 | 200 94 | 61 95 | 96 | 97 | 98 | 99 | 200 100 | 0 101 | 102 | 103 | 104 | 105 | 200 106 | 16777215 107 | 108 | 109 | 110 | 111 | 112 | 113 | Please define the intercostal 114 | rib spacing: 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_scar) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE SCAR_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkQtWidgetsExt MitkCemrgAppModule 7 | ) 8 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_scar The Scar YZSeg Plugin 3 | 4 | \imageMacro{icon.png,"Icon of Scar YZSeg Plugin",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_scarOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_scar kcl.cemrgapp.scar 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_scar_internal Internal 11 | \ingroup kcl_cemrgapp_scar 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.scar plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_scar_Activator.cpp 7 | AtrialScarClipperView.cpp 8 | AtrialScarView.cpp 9 | YZSegView.cpp 10 | ScarCalculationsView.cpp 11 | ) 12 | 13 | set(UI_FILES 14 | src/internal/AtrialScarClipperViewControls.ui 15 | src/internal/AtrialScarClipperViewLabels.ui 16 | src/internal/AtrialScarViewControls.ui 17 | src/internal/AtrialScarViewUIMeshing.ui 18 | src/internal/AtrialScarViewUIScar.ui 19 | src/internal/AtrialScarViewUISQuant.ui 20 | src/internal/AtrialScarViewUIcemrgnet.ui 21 | src/internal/YZSegViewControls.ui 22 | src/internal/ScarCalculationsViewControls.ui 23 | src/internal/ScarCalculationsViewUICorridor.ui 24 | ) 25 | 26 | set(MOC_H_FILES 27 | src/internal/kcl_cemrgapp_scar_Activator.h 28 | src/internal/AtrialScarClipperView.h 29 | src/internal/AtrialScarView.h 30 | src/internal/YZSegView.h 31 | src/internal/ScarCalculationsView.h 32 | ) 33 | 34 | # list of resource files which can be used by the plug-in 35 | # system without loading the plug-ins shared library, 36 | # for example the icon used in the menu and tabs for the 37 | # plug-in views in the workbench 38 | set(CACHED_RESOURCE_FILES 39 | resources/icon.xpm 40 | plugin.xml 41 | ) 42 | 43 | # list of Qt .qrc files which contain additional resources 44 | # specific to this plugin 45 | set(QRC_FILES 46 | 47 | ) 48 | 49 | set(CPP_FILES ) 50 | 51 | foreach(file ${SRC_CPP_FILES}) 52 | set(CPP_FILES ${CPP_FILES} src/${file}) 53 | endforeach(file ${SRC_CPP_FILES}) 54 | 55 | foreach(file ${INTERNAL_CPP_FILES}) 56 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 57 | endforeach(file ${INTERNAL_CPP_FILES}) 58 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "Scar Plugin") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 8 | 9 | 10 | 11 | 15 | 16 | 17 | 18 | 22 | 23 | 24 | 25 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 88 1", 4 | " c None", 5 | ". c #0354AE", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #007BFF", 9 | "$ c #007AFF", 10 | "% c #0785FF", 11 | "& c #9C9C9C", 12 | "* c #C8C8C8", 13 | "= c #F0F0F0", 14 | "- c #F9F9F9", 15 | "; c #FAFAFA", 16 | "> c #B1B1B1", 17 | ", c #017CFF", 18 | "' c #0786FF", 19 | ") c #0F90FF", 20 | "! c #159AFF", 21 | "~ c #1CA3FF", 22 | "{ c #5BABE0", 23 | "] c #26B1FF", 24 | "^ c #C7C7C7", 25 | "/ c #F7F7F7", 26 | "( c #F6F6F6", 27 | "_ c #EAEAEA", 28 | ": c #999999", 29 | "< c #179AFF", 30 | "[ c #1DA5FF", 31 | "} c #24AEFF", 32 | "| c #28B5FF", 33 | "1 c #2BB7FF", 34 | "2 c #2DBBFF", 35 | "3 c #F4F4F4", 36 | "4 c #969696", 37 | "5 c #27B2FF", 38 | "6 c #2BB8FF", 39 | "7 c #2FBEFF", 40 | "8 c #31C2FF", 41 | "9 c #34C4FF", 42 | "0 c #EEEEEE", 43 | "a c #929292", 44 | "b c #31C1FF", 45 | "c c #34C5FF", 46 | "d c #36C8FF", 47 | "e c #38CBFF", 48 | "f c #3ACEFF", 49 | "g c #E7E7E7", 50 | "h c #DADADA", 51 | "i c #8D8D8D", 52 | "j c #3BCEFF", 53 | "k c #3CD1FF", 54 | "l c #3FD5FF", 55 | "m c #41D8FF", 56 | "n c #E2E2E2", 57 | "o c #AFAFAF", 58 | "p c #3DD1FF", 59 | "q c #53C3E3", 60 | "r c #55C7E3", 61 | "s c #57C9E3", 62 | "t c #58CCE3", 63 | "u c #5BCEE3", 64 | "v c #DCDCDC", 65 | "w c #C5C5C5", 66 | "x c #858585", 67 | "y c #45DEFF", 68 | "z c #47E2FF", 69 | "A c #47E3FD", 70 | "B c #44E4F9", 71 | "C c #41E5F6", 72 | "D c #D6D6D6", 73 | "E c #C3C3C3", 74 | "F c #818181", 75 | "G c #3EE6F2", 76 | "H c #3CE7EF", 77 | "I c #39E8EB", 78 | "J c #D1D1D1", 79 | "K c #BDBDBD", 80 | "L c #7D7D7D", 81 | "M c #36E9E8", 82 | "N c #33EAE4", 83 | "O c #31EBE0", 84 | "P c #CFCFCF", 85 | "Q c #797979", 86 | "R c #2BEEDA", 87 | "S c #29EED6", 88 | "T c #777777", 89 | "U c #00FFA1", 90 | "V c #BBBBBB", 91 | "W c #727272", 92 | " ", 93 | " .... ++@+ ", 94 | " .#$#%..&*=-;=> ", 95 | ".,')!~{]^-/((-_:", 96 | ".<[}]|12=3====(4", 97 | ".5|62789000000=a", 98 | ".27bcdef_gggg_hi", 99 | ".cdejklmnnnnn0o ", 100 | " .pqrstuhvhv_wx ", 101 | " .yzABCDDDgEF ", 102 | " .CGHIJJnKL ", 103 | " .MNOPnKQ ", 104 | " .RSvKT ", 105 | " .UVT ", 106 | " .W ", 107 | " "}; 108 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/src/internal/AtrialScarViewUIMeshing.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | AtrialScarViewUIMeshing 4 | 5 | 6 | 7 | 0 8 | 0 9 | 222 10 | 196 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | 21 | 0 22 | 196 23 | 24 | 25 | 26 | 27 | 16777215 28 | 196 29 | 30 | 31 | 32 | Set Values 33 | 34 | 35 | 36 | 37 | 38 | QLabel { color: rgb(255, 0, 0) } 39 | 40 | 41 | Enter Algorithms Parameters 42 | 43 | 44 | Qt::AlignCenter 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | Iteration (default = 1) 55 | 56 | 57 | 58 | 59 | 60 | 61 | Threshold (default = 0.5) 62 | 63 | 64 | 65 | 66 | 67 | 68 | Blur (default = 0) 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | Smooth (default = 10) 79 | 80 | 81 | 82 | 83 | 84 | 85 | true 86 | 87 | 88 | Qt::Horizontal 89 | 90 | 91 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 92 | 93 | 94 | true 95 | 96 | 97 | 98 | 99 | 100 | 101 | Qt::Vertical 102 | 103 | 104 | QSizePolicy::Fixed 105 | 106 | 107 | 108 | 20 109 | 0 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/src/internal/AtrialScarViewUISQuant.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | AtrialScarViewUISQuant 4 | 5 | 6 | 7 | 0 8 | 0 9 | 223 10 | 170 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | 21 | 0 22 | 170 23 | 24 | 25 | 26 | 27 | 16777215 28 | 170 29 | 30 | 31 | 32 | Set Values 33 | 34 | 35 | 36 | 37 | 38 | QLabel { color: rgb(255, 0, 0) } 39 | 40 | 41 | Enter Algorithms Parameters 42 | 43 | 44 | Qt::AlignCenter 45 | 46 | 47 | 48 | 49 | 50 | 51 | Image Intensity Ratio 52 | 53 | 54 | true 55 | 56 | 57 | 58 | 59 | 60 | 61 | Mean + number of SD 62 | 63 | 64 | 65 | 66 | 67 | 68 | Qt::Horizontal 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | Enter a Value 79 | 80 | 81 | 82 | 83 | 84 | 85 | true 86 | 87 | 88 | Qt::Horizontal 89 | 90 | 91 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 92 | 93 | 94 | true 95 | 96 | 97 | 98 | 99 | 100 | 101 | Qt::Vertical 102 | 103 | 104 | QSizePolicy::Expanding 105 | 106 | 107 | 108 | 20 109 | 0 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/src/internal/kcl_cemrgapp_scar_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Scar Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_scar_Activator.h" 30 | #include "AtrialScarView.h" 31 | #include "AtrialScarClipperView.h" 32 | #include "YZSegView.h" 33 | #include "ScarCalculationsView.h" 34 | 35 | namespace mitk { 36 | 37 | ctkPluginContext* kcl_cemrgapp_scar_Activator::pluginContext = nullptr; 38 | 39 | void kcl_cemrgapp_scar_Activator::start(ctkPluginContext *context) { 40 | BERRY_REGISTER_EXTENSION_CLASS(AtrialScarView, context); 41 | BERRY_REGISTER_EXTENSION_CLASS(AtrialScarClipperView, context); 42 | BERRY_REGISTER_EXTENSION_CLASS(YZSegView, context); 43 | BERRY_REGISTER_EXTENSION_CLASS(ScarCalculationsView, context); 44 | pluginContext = context; 45 | } 46 | 47 | void kcl_cemrgapp_scar_Activator::stop(ctkPluginContext *context) { 48 | Q_UNUSED(context) 49 | pluginContext = nullptr; 50 | } 51 | 52 | ctkPluginContext* kcl_cemrgapp_scar_Activator::getContext() { 53 | return pluginContext; 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.scar/src/internal/kcl_cemrgapp_scar_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Scar Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_scar_Activator_h 30 | #define kcl_cemrgapp_scar_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_scar_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_scar") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_scar_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_scar_Activator_h 56 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | project(kcl_cemrgapp_wathca) 2 | 3 | mitk_create_plugin( 4 | EXPORT_DIRECTIVE WATHCA_EXPORT 5 | EXPORTED_INCLUDE_SUFFIXES src 6 | MODULE_DEPENDS MitkSegmentation MitkQtWidgetsExt MitkCemrgAppModule 7 | PACKAGE_DEPENDS ITK 8 | ) 9 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/documentation/UserManual/Manual.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \page kcl_cemrgapp_wathca The WaThCa 3 | 4 | \imageMacro{icon.png,"Icon of WaThCa",2.00} 5 | 6 | \tableofcontents 7 | 8 | \section kcl_cemrgapp_wathcaOverview Overview 9 | Describe the features of your awesome plugin here 10 |
    11 |
  • Increases productivity 12 |
  • Creates beautiful images 13 |
  • Generates PhD thesis 14 |
  • Brings world peace 15 |
16 | 17 | */ 18 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/documentation/UserManual/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static const char * icon_xpm[] = { 3 | "16 16 2 1", 4 | " c #FF0000", 5 | ". c #000000", 6 | " ", 7 | " ", 8 | " ", 9 | " ", 10 | " ", 11 | " ", 12 | " ", 13 | " ", 14 | " ", 15 | " ", 16 | " ", 17 | " ", 18 | " ", 19 | " ", 20 | " ", 21 | " "}; 22 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/documentation/doxygen/modules.dox: -------------------------------------------------------------------------------- 1 | /** 2 | \defgroup kcl_cemrgapp_wathca kcl.cemrgapp.wathca 3 | \ingroup MITKPlugins 4 | 5 | \brief Describe your plugin here. 6 | 7 | */ 8 | 9 | /** 10 | \defgroup kcl_cemrgapp_wathca_internal Internal 11 | \ingroup kcl_cemrgapp_wathca 12 | 13 | \brief This subcategory includes the internal classes of the kcl.cemrgapp.wathca plugin. Other 14 | plugins must not rely on these classes. They contain implementation details and their interface 15 | may change at any time. We mean it. 16 | */ 17 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/files.cmake: -------------------------------------------------------------------------------- 1 | set(SRC_CPP_FILES 2 | 3 | ) 4 | 5 | set(INTERNAL_CPP_FILES 6 | kcl_cemrgapp_wathca_Activator.cpp 7 | WallThicknessCalculationsView.cpp 8 | WallThicknessCalculationsClipperView.cpp 9 | ) 10 | 11 | set(UI_FILES 12 | src/internal/WallThicknessCalculationsViewControls.ui 13 | src/internal/WallThicknessCalculationsViewUIMeshing.ui 14 | src/internal/WallThicknessCalculationsClipperViewControls.ui 15 | src/internal/WallThicknessCalculationsClipperViewLabels.ui 16 | src/internal/WallThicknessCalculationsViewUIThickness.ui 17 | ) 18 | 19 | set(MOC_H_FILES 20 | src/internal/kcl_cemrgapp_wathca_Activator.h 21 | src/internal/WallThicknessCalculationsView.h 22 | src/internal/WallThicknessCalculationsClipperView.h 23 | ) 24 | 25 | # list of resource files which can be used by the plug-in 26 | # system without loading the plug-ins shared library, 27 | # for example the icon used in the menu and tabs for the 28 | # plug-in views in the workbench 29 | set(CACHED_RESOURCE_FILES 30 | resources/icon.xpm 31 | plugin.xml 32 | ) 33 | 34 | # list of Qt .qrc files which contain additional resources 35 | # specific to this plugin 36 | set(QRC_FILES 37 | 38 | ) 39 | 40 | set(CPP_FILES ) 41 | 42 | foreach(file ${SRC_CPP_FILES}) 43 | set(CPP_FILES ${CPP_FILES} src/${file}) 44 | endforeach(file ${SRC_CPP_FILES}) 45 | 46 | foreach(file ${INTERNAL_CPP_FILES}) 47 | set(CPP_FILES ${CPP_FILES} src/internal/${file}) 48 | endforeach(file ${INTERNAL_CPP_FILES}) 49 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/manifest_headers.cmake: -------------------------------------------------------------------------------- 1 | set(Plugin-Name "WaThCa") 2 | set(Plugin-Version "0.1") 3 | set(Plugin-Vendor "KCL") 4 | set(Plugin-ContactAddress "") 5 | set(Require-Plugin org.mitk.gui.qt.common) 6 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/plugin.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/resources/icon.xpm: -------------------------------------------------------------------------------- 1 | /* XPM */ 2 | static char * icon_xpm[] = { 3 | "16 16 90 1", 4 | " c None", 5 | ". c #9700E9", 6 | "+ c #9F9F9F", 7 | "@ c #A5A5A5", 8 | "# c #9753E7", 9 | "$ c #9752E6", 10 | "% c #9B4FE8", 11 | "& c #9C9C9C", 12 | "* c #C8C8C8", 13 | "= c #F0F0F0", 14 | "- c #F9F9F9", 15 | "; c #FAFAFA", 16 | "> c #B1B1B1", 17 | ", c #9653E6", 18 | "' c #9752E7", 19 | ") c #9B4EE8", 20 | "! c #A04BE9", 21 | "~ c #A448EA", 22 | "{ c #A845EB", 23 | "] c #AC41EC", 24 | "^ c #C7C7C7", 25 | "/ c #F7F7F7", 26 | "( c #F6F6F6", 27 | "_ c #EAEAEA", 28 | ": c #999999", 29 | "< c #9C4FE8", 30 | "[ c #A548EA", 31 | "} c #A944EB", 32 | "| c #AD41EC", 33 | "1 c #B23DED", 34 | "2 c #B63AEE", 35 | "3 c #F4F4F4", 36 | "4 c #969696", 37 | "5 c #AE40EC", 38 | "6 c #B639EE", 39 | "7 c #BA37EF", 40 | "8 c #BE33F0", 41 | "9 c #EEEEEE", 42 | "0 c #929292", 43 | "a c #AE41EC", 44 | "b c #B739EE", 45 | "c c #BA36EF", 46 | "d c #BF33F0", 47 | "e c #C42FF1", 48 | "f c #C72CF3", 49 | "g c #E7E7E7", 50 | "h c #DADADA", 51 | "i c #8D8D8D", 52 | "j c #BB35EF", 53 | "k c #C033F0", 54 | "l c #C82BF2", 55 | "m c #CC28F3", 56 | "n c #D025F4", 57 | "o c #E2E2E2", 58 | "p c #AFAFAF", 59 | "q c #C52EF1", 60 | "r c #C92BF2", 61 | "s c #CD27F3", 62 | "t c #D124F4", 63 | "u c #D521F5", 64 | "v c #DA1DF6", 65 | "w c #DCDCDC", 66 | "x c #C5C5C5", 67 | "y c #858585", 68 | "z c #D124F5", 69 | "A c #D620F6", 70 | "B c #DB1DF6", 71 | "C c #DF19F8", 72 | "D c #E316F8", 73 | "E c #D6D6D6", 74 | "F c #C3C3C3", 75 | "G c #818181", 76 | "H c #DF19F7", 77 | "I c #E316F9", 78 | "J c #E812FA", 79 | "K c #EC0FFA", 80 | "L c #D1D1D1", 81 | "M c #BDBDBD", 82 | "N c #7D7D7D", 83 | "O c #EC0EFA", 84 | "P c #F10BFB", 85 | "Q c #F508FD", 86 | "R c #CFCFCF", 87 | "S c #797979", 88 | "T c #F904FE", 89 | "U c #FE01FF", 90 | "V c #777777", 91 | "W c #FF00FF", 92 | "X c #BBBBBB", 93 | "Y c #727272", 94 | " ", 95 | " .... ++@+ ", 96 | " .##$%..&*=-;=> ", 97 | ".,')!~{]^-/((-_:", 98 | ". 2 | 3 | WallThicknessCalculationsViewUIMeshing 4 | 5 | 6 | 7 | 0 8 | 0 9 | 222 10 | 196 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | 21 | 0 22 | 196 23 | 24 | 25 | 26 | 27 | 16777215 28 | 196 29 | 30 | 31 | 32 | Set Values 33 | 34 | 35 | 36 | 37 | 38 | QLabel { color: rgb(255, 0, 0) } 39 | 40 | 41 | Enter Algorithms Parameters 42 | 43 | 44 | Qt::AlignCenter 45 | 46 | 47 | 48 | 49 | 50 | 51 | Threshold (default = 0.5) 52 | 53 | 54 | 55 | 56 | 57 | 58 | Blur (default = 0.8) 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | Smooth (default = 3) 69 | 70 | 71 | 72 | 73 | 74 | 75 | Decimate (default = 0.5) 76 | 77 | 78 | 79 | 80 | 81 | 82 | true 83 | 84 | 85 | Qt::Horizontal 86 | 87 | 88 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 89 | 90 | 91 | true 92 | 93 | 94 | 95 | 96 | 97 | 98 | Qt::Vertical 99 | 100 | 101 | QSizePolicy::Expanding 102 | 103 | 104 | 105 | 20 106 | 0 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/src/internal/WallThicknessCalculationsViewUIThickness.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | WallThicknessCalculationsViewUIThickness 4 | 5 | 6 | 7 | 0 8 | 0 9 | 500 10 | 103 11 | 12 | 13 | 14 | 15 | 0 16 | 103 17 | 18 | 19 | 20 | 21 | 16777215 22 | 103 23 | 24 | 25 | 26 | Set Values 27 | 28 | 29 | 30 | 31 | 32 | Qt::Vertical 33 | 34 | 35 | QSizePolicy::Expanding 36 | 37 | 38 | 39 | 20 40 | 0 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | Browse 49 | 50 | 51 | 52 | 53 | 54 | 55 | true 56 | 57 | 58 | Qt::Horizontal 59 | 60 | 61 | QDialogButtonBox::Cancel|QDialogButtonBox::Ok 62 | 63 | 64 | true 65 | 66 | 67 | 68 | 69 | 70 | 71 | Open text file containing parameters (default = lib) 72 | 73 | 74 | 75 | 76 | 77 | 78 | QLabel { color: rgb(255, 0, 0) } 79 | 80 | 81 | Enter the Correct Paths 82 | 83 | 84 | Qt::AlignCenter 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/src/internal/kcl_cemrgapp_wathca_Activator.cpp: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Morphological Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #include "kcl_cemrgapp_wathca_Activator.h" 30 | #include "WallThicknessCalculationsView.h" 31 | #include "WallThicknessCalculationsClipperView.h" 32 | 33 | namespace mitk { 34 | 35 | ctkPluginContext* kcl_cemrgapp_wathca_Activator::pluginContext = nullptr; 36 | 37 | void kcl_cemrgapp_wathca_Activator::start(ctkPluginContext *context) { 38 | BERRY_REGISTER_EXTENSION_CLASS(WallThicknessCalculationsView, context); 39 | BERRY_REGISTER_EXTENSION_CLASS(WallThicknessCalculationsClipperView, context); 40 | pluginContext = context; 41 | } 42 | 43 | void kcl_cemrgapp_wathca_Activator::stop(ctkPluginContext *context) { 44 | Q_UNUSED(context) 45 | pluginContext = nullptr; 46 | } 47 | 48 | ctkPluginContext* kcl_cemrgapp_wathca_Activator::getContext() { 49 | return pluginContext; 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /CemrgApp/Plugins/kcl.cemrgapp.wathca/src/internal/kcl_cemrgapp_wathca_Activator.h: -------------------------------------------------------------------------------- 1 | /*========================================================================= 2 | 3 | Program: Medical Imaging & Interaction Toolkit 4 | Language: C++ 5 | Date: $Date$ 6 | Version: $Revision$ 7 | 8 | Copyright (c) German Cancer Research Center, Division of Medical and 9 | Biological Informatics. All rights reserved. 10 | See MITKCopyright.txt or http://www.mitk.org/copyright.html for details. 11 | 12 | This software is distributed WITHOUT ANY WARRANTY; without even 13 | the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 14 | PURPOSE. See the above copyright notices for more information. 15 | 16 | =========================================================================*/ 17 | /*========================================================================= 18 | * 19 | * Morphological Quantification 20 | * 21 | * Cardiac Electromechanics Research Group 22 | * http://www.cemrgapp.com 23 | * orod.razeghi@kcl.ac.uk 24 | * 25 | * This software is distributed WITHOUT ANY WARRANTY or SUPPORT! 26 | * 27 | =========================================================================*/ 28 | 29 | #ifndef kcl_cemrgapp_wathca_Activator_h 30 | #define kcl_cemrgapp_wathca_Activator_h 31 | 32 | #include 33 | 34 | namespace mitk { 35 | 36 | class kcl_cemrgapp_wathca_Activator: public QObject, public ctkPluginActivator { 37 | 38 | Q_OBJECT 39 | Q_PLUGIN_METADATA(IID "kcl_cemrgapp_wathca") 40 | Q_INTERFACES(ctkPluginActivator) 41 | 42 | public: 43 | 44 | void start(ctkPluginContext *context); 45 | void stop(ctkPluginContext *context); 46 | static ctkPluginContext* getContext(); 47 | 48 | private: 49 | 50 | static ctkPluginContext* pluginContext; 51 | 52 | }; // kcl_cemrgapp_wathca_Activator 53 | } 54 | 55 | #endif // kcl_cemrgapp_wathca_Activator_h 56 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2020, CemrgAppDevelopers 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | 1. Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | 2. Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | 3. Neither the name of the copyright holder nor the names of its 17 | contributors may be used to endorse or promote products derived from 18 | this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | -------------------------------------------------------------------------------- /MITK_LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2003-2019, German Cancer Research Center (DKFZ) 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | 1. Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | 2. Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | 3. Neither the name of the copyright holder nor the names of its 17 | contributors may be used to endorse or promote products derived from 18 | this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Cardiac Electromechanics Research Group App 2 | ------------------------------------------- 3 | [![Build](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/build.yml/badge.svg)](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/build.yml) 4 | [![Tests](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/test.yml/badge.svg)](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/test.yml) 5 | [![Code Analysis](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/analysis.yml/badge.svg)](https://github.com/CemrgDevelopers/CemrgApp/actions/workflows/analysis.yml) 6 | [![Code Coverage](https://codecov.io/gh/CemrgDevelopers/CemrgApp/branch/master/graph/badge.svg?token=7WKASERDCM)](https://codecov.io/gh/CemrgDevelopers/CemrgApp) 7 | 8 | CemrgApp is an MITK based interactive medical imaging application with image processing and computer vision toolkits for cardiovascular research. 9 | 10 | License 11 | ------- 12 | Copyright (c) Cardiac Electromechanics Research Group. All rights reserved.\ 13 | CemrgApp is available as free open-source software under a 3-clause BSD license.\ 14 | This software is distributed WITHOUT ANY WARRANTY or SUPPORT.\ 15 | This software SHOULD NOT be used for diagnosis or treatment of patients. 16 | 17 | Instructions 18 | ------------ 19 | Refer to Wiki pages at https://github.com/CemrgAppDevelopers/CemrgApp/wiki 20 | 21 | Citation 22 | -------- 23 | Please cite the following article, if you use CemrgApp in your project:\ 24 | Razeghi O, Solís-Lemus J, Lee A et al. CemrgApp: An interactive medical imaging application with image processing, computer vision, and machine learning toolkits for cardiovascular research. SoftwareX. 2020;12:100570. doi:10.1016/j.softx.2020.100570 25 | 26 | Contacts 27 | -------- 28 | - http://www.cemrgapp.com/ 29 | - info@cemrgapp.com 30 | -------------------------------------------------------------------------------- /TestScripts/BuildProcess.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | 4 | #Build MITK 5 | git clone --branch v2018.04.2 https://phabricator.mitk.org/source/mitk.git MITK 6 | mkdir Build; cd Build 7 | cmake ../MITK 8 | make -j$(nproc) 9 | #cmake -DMITK_EXTENSION_DIRS:PATH=??? ../ 10 | --------------------------------------------------------------------------------