NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxElastixManager.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXELASTIXMANAGER_H_
12 #define CXELASTIXMANAGER_H_
13 
14 #include <QObject>
15 #include "cxForwardDeclarations.h"
16 #include "cxXmlOptionItem.h"
17 #include "cxBoolProperty.h"
18 #include "cxStringProperty.h"
19 #include "cxElastixParameters.h"
20 #include "cxRegServices.h"
21 
22 namespace cx
23 {
30 typedef boost::shared_ptr<class ElastixExecuter> ElastixExecuterPtr;
31 
38 class ElastixManager : public QObject
39 {
40  Q_OBJECT
41 public:
43  virtual ~ElastixManager();
44 
45  BoolPropertyPtr getDisplayProcessMessages() { return mDisplayProcessMessages; }
46  BoolPropertyPtr getDisableRendering() { return mDisableRendering; }
47  ElastixExecuterPtr getExecuter() { return mExecuter; }
48  ElastixParametersPtr getParameters() { return mParameters; }
49 
50  void execute();
51 signals:
52  void elastixChanged();
53 
54 private slots:
55  void executionFinishedSlot();
56  void preprocessExecuter();
57 
58 private:
59  void addNonlinearData();
60 
61  ElastixParametersPtr mParameters;
62  XmlOptionFile mOptions;
63  BoolPropertyPtr mDisplayProcessMessages;
64  BoolPropertyPtr mDisableRendering;
65  ElastixExecuterPtr mExecuter;
66  RegServicesPtr mServices;
67 };
68 typedef boost::shared_ptr<ElastixManager> ElastixManagerPtr;
69 
73 } /* namespace cx */
74 #endif /* CXELASTIXMANAGER_H_ */
cx::XmlOptionFile
Helper class for xml files used to store ssc/cx data.
Definition: cxXmlOptionItem.h:78
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cx::ElastixManager::~ElastixManager
virtual ~ElastixManager()
Definition: cxElastixManager.cpp:60
cx::ElastixManager::getDisplayProcessMessages
BoolPropertyPtr getDisplayProcessMessages()
Definition: cxElastixManager.h:45
cxForwardDeclarations.h
cx::BoolPropertyPtr
boost::shared_ptr< class BoolProperty > BoolPropertyPtr
Definition: cxPlusConnectWidget.h:29
cxXmlOptionItem.h
cx::ElastixManager
Manager for interfacing to the ElastiX registration package.
Definition: cxElastixManager.h:38
cx::ElastixExecuterPtr
boost::shared_ptr< class ElastixExecuter > ElastixExecuterPtr
Definition: cxElastixManager.h:30
cx::ElastixManager::execute
void execute()
Definition: cxElastixManager.cpp:64
cx::ElastixManager::getDisableRendering
BoolPropertyPtr getDisableRendering()
Definition: cxElastixManager.h:46
cx::ElastixManager::ElastixManager
ElastixManager(RegServicesPtr services)
Definition: cxElastixManager.cpp:34
cx::ElastixParametersPtr
boost::shared_ptr< ElastixParameters > ElastixParametersPtr
Definition: cxElastixParameters.h:74
cx::ElastixManagerPtr
boost::shared_ptr< ElastixManager > ElastixManagerPtr
Definition: cxElastixManager.h:68
cx::ElastixManager::elastixChanged
void elastixChanged()
cx::RegServicesPtr
boost::shared_ptr< class RegServices > RegServicesPtr
Definition: cxRegServices.h:20
cxStringProperty.h
cxBoolProperty.h
cxRegServices.h
cx::ElastixManager::getExecuter
ElastixExecuterPtr getExecuter()
Definition: cxElastixManager.h:47
cx::ElastixManager::getParameters
ElastixParametersPtr getParameters()
Definition: cxElastixManager.h:48
cxElastixParameters.h